npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dex-data-mcp

v1.5.1

Published

DEX data, geocoding, weather, search, holidays, LEI, yield curve. 22 tools, free tier.

Downloads

1,635

Readme

dex-data MCP server

Twenty-two tools, no API key and no wallet, in three groups:

  • Multi-chain DEX market data — token prices, liquidity depth, pool reserves, best execution venue, liquidity risk, pre-trade slippage and gas costs across BNB Chain, Polygon, Arbitrum, Base, Avalanche and Optimism.
  • General-purpose agent utilities — geocoding, reverse geocoding, weather, web search, article/PDF to Markdown, and cryptographic randomness.
  • Reference and research data — search autocomplete, public holidays and business days, RSS/Atom feeds, IP geolocation, GLEIF legal-entity lookup and the US Treasury yield curve.

Why this exists

The ledger says it plainly. Of 20,392 paywall challenges recorded, zero were genuine third-party queries — 82.5% were our own monitoring, 17.3% were catalogue crawlers walking every route with no parameters. We were being indexed, not shopped.

Bazaar listings are a bet on demand that does not exist yet. MCP is where agents already are today: Claude Desktop, Claude Code, Cursor, and every other MCP host. This server is the same data, delivered where the users are, and it needs no payment at all for the free tier — which removes the one barrier that a browsing agent cannot cross on its own.

Install

Claude Code

claude mcp add dex-data -- npx -y dex-data-mcp

Claude Desktop / Cursor — add to claude_desktop_config.json:

{
  "mcpServers": {
    "dex-data": {
      "command": "npx",
      "args": ["-y", "dex-data-mcp"]
    }
  }
}

No API key, no wallet, no signup. The free tier answers every tool for a daily allowance; after that the endpoints fall back to x402 micropayments.

Tools

DEX market data

| tool | answers | |---|---| | get_token_price | USD price of any ERC-20, by ticker or contract address | | get_liquidity | market depth and TVL per venue for a pair | | get_best_venue | which DEX is cheapest to buy on / best to sell into | | get_slippage | price impact for a specific trade size | | get_liquidity_risk | DEEP / MODERATE / SHALLOW / VERY_THIN depth class | | get_gas | gas cost in USD per chain, ranked cheapest-first (gwei is not comparable across chains) | | get_pool_reserves | raw reserves, fee and TVL per venue at one block — the data the others compute from | | find_arbitrage | cross-venue arbitrage now, ranked by gross USD at the optimal size, not raw spread | | list_chains | supported chains and indexed tokens |

General-purpose agent utilities

Not a change of theme — these were chosen the same way everything else here was. Reading USDC receipts across 1,062 x402 seller wallets on Base ranked what actually gets paid for, and DEX data was not near the top of that list. Forward geocoding was (56 paying wallets), then weather, then article-to-Markdown, then randomness. These are the answers to that data.

| tool | answers | |---|---| | geocode | address or place name to coordinates, worldwide (OpenStreetMap) | | reverse_geocode | coordinates to the nearest street address | | get_weather | current conditions plus up to a 7-day forecast for any coordinates | | search | free-text web search to ranked organic results, sponsored rows excluded | | url_to_markdown | a public article or PDF URL to clean Markdown | | get_random | CSPRNG integers or bytes, for agents that cannot generate their own |

Reference and research data

Chosen the same way, but from a corrected reading. The category totals in the original scan were double-counted — the biggest x402 sellers carry 10-16 of the 16 category tags each, so every category reported nearly the whole market's revenue. Seller-level rows are clean, and every tool below is something a wallet took real USDC for during the sampled window.

| tool | answers | |---|---| | get_search_suggestions | what people actually type about a topic — autocomplete, expanded into questions and comparisons | | get_holidays | public and bank holidays for 100+ countries, and whether a given date is a business day | | read_feed | any RSS, Atom or RDF feed as clean JSON, summaries in both HTML and plain text | | geolocate_ip | where an IP is, with the datacentre/VPN flag that says whether to believe it | | lookup_lei | a company's Legal Entity Identifier by name, with lapsed registrations flagged not hidden | | get_treasury_yield_curve | the US par yield curve plus 2s10s / 3m10y / 5s30s and the inversion flag |

Local

| tool | answers | |---|---| | get_spend_budget | what this session has spent on paid calls, and the caps in force |

Pairings worth knowing: geocode then get_weather turns a place name into a forecast, search then url_to_markdown turns a question into readable source text, and read_feed then url_to_markdown turns a feed into full articles.

Free tier

Every tool answers free within a daily per-caller allowance — no wallet, no signup. The remaining quota is returned on X-FreeTier-Remaining. Beyond it, calls fall back to x402 micropayments (USDC on Base).

Every response carries the liquidity backing the number and a confidence rating. A quote with no depth behind it is refused rather than returned — a dust-pool price is worse than no price when an agent may trade on it.

Honest limits

  • Depth and prices cover the venues this API indexes; a deeper pool may exist on a DEX not covered here.
  • v3 figures distinguish custody TVL from tradeable depth at the current price. They are not the same number and are not labelled as if they were.
  • get_slippage is pool-level price impact: it excludes gas, MEV and multi-hop routing, and flags v3 estimates that cross the active tick band.