Dex Data

com.donnyautomation由 donnyautomation.com 发布v1.7.0更新于 Nov 5, 2026

DEX market data, SEC EDGAR change oracles, LEI and US Treasury curve. 13 tools, x402 paid.

已验证STDIO仅桌面数据库金融商业与电商

概览

AI 生成的概览

本地 MCP 服务器,让助手获取实时 DEX 行情、Uniswap v4 Hook 风险、GLEIF/OFAC 实体核查、SEC EDGAR 增量数据与美国国债收益率曲线,每天前 25 次调用免费。

可以做什么
  • 按链查询 DEX 状态:Base 流动性与 TVL、Polygon 代币价格、Avalanche 池储备,以及 Polygon 与 Avalanche 的跨场所套利扫描。
  • 检查 Uniswap v4 Hook 的权限位、托管类别与源码共识。
  • 按名称查询 GLEIF 法人实体,并获取合并了 OFAC 筛查与 SEC 注册信息的公司档案。
  • 按指定日期拉取 SEC EDGAR 增量:申报文件、按条目代码解码的 8-K 重大事件、内部人及持股变动表单。
  • 读取 1 个月至 30 年的美国国债平价收益率曲线。
  • 用免费的本地工具查看本次会话的花费与生效的各项上限。
适用场景
适合助手需要最新链上市场状态、套利价差,或公司与发行人的监管及申报数据,且不希望配置 API 密钥或账号的场景。每日免费额度可覆盖轻量、偶发的查询;使用频繁则需按次付费。
运行要求
以 stdio 在本地运行,需要 Node 18 或更高版本,通过 npx 从 npm 包安装。免费额度无需账号、API 密钥或钱包。每天超过 25 次调用后需设置 DEX_WALLET_KEY(持有 Base 上 USDC 的 EVM 私钥)并安装可选支付包,同时需要访问网关的网络连接。
安装前请注意
每天超过 25 次调用后,工具会返回支付挑战;若配置了钱包,服务器会以 Base 上的 USDC 付款,并受 DEX_MAX_PRICE_USD、DEX_MAX_SPEND_USD 与 DEX_MAX_CALLS 限制。DEX_WALLET_KEY 以明文保存在客户端配置中,应使用只放少量资金的专用一次性钱包,切勿使用主钱包。v4 Hook 工具只说明能力而非意图,且永远不会输出 SAFE。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Dex Data,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

dex-data MCP server

[dex-data-mcp MCP server]


For an agent

Everything you need to decide whether to call this server, and what it will cost, is in this section. Read no further unless a human is asking.

Install

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

Or, for any MCP host that reads a JSON config:

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

Cost model

The first 25 calls each day are free on every tool. No wallet, no signup, no API key, no account. The free answer is the full answer — nothing is stubbed, truncated or degraded. What the free tier limits is how many calls you make, not what is in them.

After 25 calls in a day, a tool returns a payment challenge instead of an answer. If — and only if — a wallet is configured, this server settles that challenge in USDC on Base and returns the answer. With no wallet it tells you the price and spends nothing.

Environment

variablewhat it doesdefault
DEX_WALLET_KEYEVM private key that pays. Omit it and this server can never spend anything. EVM_PRIVATE_KEY is read as a fallback.unset — free tier only
DEX_MAX_PRICE_USDPer-call ceiling. A call costing more is refused before paying.0.05
DEX_MAX_SPEND_USDTotal for the life of the process.1.00
DEX_MAX_CALLSNumber of paid calls for the life of the process.200
DEX_MCP_TIMEOUT_MSUpstream request timeout.45000

The default ceiling is $0.05, which is exactly the dearest tool here. Lower it below that and the $0.05 tools stop working — deliberately, and they say so.

The cap, and what "fails closed" means

Every paid call passes the same four gates, in this order, and any one of them refuses without paying:

  1. No wallet → never pays. This is the state you are in unless someone set a key.
  2. Price unreadable → refuses. A challenge whose amount cannot be parsed is not treated as free or as cheap; it is treated as unknown, and unknown does not get paid.
  3. Price above DEX_MAX_PRICE_USD → refuses, and names the price and the cap.
  4. Would cross DEX_MAX_SPEND_USD or DEX_MAX_CALLS → refuses.

Accounting is in integer micro-USD, so a $1.00 budget at $0.05 a call buys exactly 20 calls and not 19 — floating-point drift cannot quietly close the budget early.

Call get_spend_budget before any loop over paid tools. It is free, local and makes no network call, and it returns what has been spent and every cap in force.

Tools

Thirteen tools. Twelve fetch from the gateway; one is local. Each of the twelve targets exactly one route, and together they are exactly the routes the storefront lists — there is no hidden catalogue and no tool pointing at something that was withdrawn.

toolprice/callwhat it returnsexample
get_base_liquidity$0.01DEX liquidity, depth and TVL per venue on Base{"pair":"WETH/USDC"}
get_polygon_token_price$0.01Live USD price from Polygon pools, with the backing liquidity and a confidence rating{"symbol":"WMATIC"}
get_avalanche_pool_reserves$0.01Raw AMM reserves, fee, implied price and TVL at one block height{"pair":"WAVAX/USDC"}
find_polygon_arbitrage$0.01Cross-venue price gaps on Polygon, ranked by gross spread{"minSpreadBps":25}
find_avalanche_arbitrage$0.01The same scan on Avalanche C-Chain{"minSpreadBps":25}
get_v4_hook_risk$0.01Uniswap v4 hook permission bits, custody class and verified-source consensus{"address":"0x…80"}
lookup_lei$0.03GLEIF legal-entity record by name, lapsed entities flagged not hidden{"q":"Apple Inc."}
get_treasury_yield_curve$0.03US Treasury par yield curve, 1 month to 30 years{} for the latest
get_company_dossier$0.05Identity, OFAC screening and SEC registration for one entity, joined{"ticker":"AAPL"}
get_sec_filings$0.05Everything an issuer has filed since your cursor{"ticker":"AAPL","since":"2026-09-01"}
get_sec_events$0.058-K material events since your cursor, decoded by item code{"ticker":"TSLA","since":"2026-09-01","items":"5.02"}
get_sec_insiders$0.05Forms 3/4/5, SC 13D/G ownership changes since your cursor{"ticker":"NVDA","since":"2026-09-01"}
get_spend_budgetfree, localWhat this session has spent and every cap in force{}

Prices are USDC on Base (eip155:8453) and are read from the gateway's own x-payment-info, not kept in step by hand.

Three things that will save you a wasted call

  • The three get_sec_* tools return DELTAS, not dumps. since is required and inclusive. Pass the date you last read; you get what has landed since. They report matched and truncated, so a cut-off delta is never mistaken for a complete one.
  • Missing arguments are refused here, not upstream. A call with a required argument absent or empty is stopped before any request is made, and says Nothing was requested and nothing was spent. It does not become ?symbol=undefined and it does not cost you a call.
  • get_v4_hook_risk never outputs SAFE. It is capability analysis: it tells you what a hook is able to do to your trade, not whether its author intends to. Treat OPAQUE as unresolved, not as clean.

For a human

What this is

Thirteen MCP tools over live on-chain and regulatory data: DEX market state on Base, Polygon and Avalanche, Uniswap v4 hook security, GLEIF legal-entity lookup, OFAC-screened counterparty dossiers, SEC EDGAR change oracles and the US Treasury yield curve.

Zero dependencies, stdio, Node 18+. The payment packages are optional and are only loaded if a wallet is configured.

Why the tool list shrank in 1.7.0

1.6.1 shipped 23 tools. This release ships 13, and the nine-tool difference is the point.

The gateway behind this server sold 62 priced routes, and this package carried a tool for most of them — including geocoding, weather, web search, public holidays, RSS and IP lookup. Then the demand was measured across the whole recorded history of the storefront: 12 routes have either organic buyers or no substitute anywhere in the catalogue. The other 50 had between zero and two calls each, every one of them from a single wallet. On 2026-09-16 the storefront was cut to those 12, and this release follows it.

A tool list is not free. It is loaded into the model's context in every session, whether or not a single tool is called, and a tool that advertises a shelf the storefront no longer stocks costs the agent a turn to discover the gap. Removing nine tools makes the list shorter and every entry in it true.

The 50 dropped routes still work. They are served, priced and payable by anyone holding the URL. Removing a tool withdrew a recommendation, not a product.

Three of the nine went for a second, independent reason: the upstreams behind geocode, reverse_geocode and get_weather retire on 2026-09-27. A tool that will 404 in eleven days should not ship in a release today.

Upgrading from 1.6.x

Breaking, and deliberately so:

  • No tool takes a chain argument any more. Each tool targets one chain's route and writes the whole path itself. Sending chain is now an error rather than being silently ignored — ignoring it would have sent a Polygon question to a Base route and charged for the answer.
  • These tools are gone, with the routes they used to call, which are all still live: get_token_price (/price), get_liquidity (/liquidity), get_pool_reserves (/reserves), find_arbitrage (/scan), get_best_venue (/route), get_slippage (/slippage), get_liquidity_risk (/risk), geocode, reverse_geocode, get_weather, search, get_search_suggestions, get_holidays, read_feed, get_random, url_to_markdown, geolocate_ip, get_gas, list_chains and get_dex_spread (/call).
  • Chain-specific replacements exist for the routes the storefront kept: get_base_liquidity, get_polygon_token_price, get_avalanche_pool_reserves, find_polygon_arbitrage, find_avalanche_arbitrage.
  • New: get_v4_hook_risk, get_company_dossier, get_sec_filings, get_sec_events, get_sec_insiders.
  • lookup_lei, get_treasury_yield_curve and get_spend_budget are unchanged.

If you were calling a removed tool, the route behind it still answers. Call it directly, at list price, at https://x402.donnyautomation.com.

Paying

Set DEX_WALLET_KEY to an EVM private key holding USDC on Base, and install the optional payment packages:

bash
npm i @x402/fetch @x402/core @x402/evm viem

Without both, this server cannot spend anything: it returns the price and the payment instructions and stops. With them, it pays only what the caps in the agent section above allow.

  • Fund it with USDC on Base and nothing else. x402's exact scheme is EIP-3009: you sign an off-chain authorization and the facilitator broadcasts and pays the gas, so the wallet needs zero ETH.
  • Use a burner. The key sits in your MCP client config in plaintext. A few dollars of USDC, never a main wallet.
  • Spend is capped and fails closed — DEX_MAX_SPEND_USD (default $1 total for the process), DEX_MAX_PRICE_USD (default $0.05 for any single call) and DEX_MAX_CALLS (default 200). Hitting any one stops payment and returns a plain explanation rather than continuing to spend. The asking price is read from the 402 challenge and refused before paying if it exceeds the ceiling. A cap that cannot be parsed (DEX_MAX_SPEND_USD=1,00) now refuses to start rather than silently evaluating to NaN, which switched every cap off.
  • get_spend_budget reports what this session has spent and the caps in force.
  • Since 1.7.0 the caps, the integer accounting and the receipts log live in x402-budget, a standalone package in this repo that holds no wallet. pay.mjs is the adapter that reads the DEX_* variables and supplies the signing function. Behaviour is unchanged.

Use a wallet you funded for this and nothing else. This server holds no custody, takes no fee and sends nothing anywhere except the payment the challenge asks for — but the key is yours to scope.

Development

bash
node test/arg-validation.test.mjs   # argument validation over real stdio, no networknode test/budget.test.mjs           # spend-cap accounting, no wallet, no networknode test/paywall-402.test.mjs      # every tool against a recorded 402, loopback onlynode test/spend-cap.test.mjs        # the cap refuses each price point, loopback onlynode packages/x402-budget/test/budget.test.mjs  # the library's own caps and receipts, no networknode scripts/check-coverage.mjs     # tools vs the gateway's listed catalogue (needs the network)

The five no-network suites run in CI on every push and pull request. The coverage check runs at release, because it is the only one that needs the gateway to be up.

test/fixtures/challenge-402.json is a verbatim recording of the live gateway's 402 challenge for each of the twelve routes. Re-record it if prices change; the suites assert that each tool's description quotes the same price the challenge asks for.

Links

来源:README.md,提交 189c86e

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.7.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分