echoledger-mcp
Analyzes live Uniswap V2/V3, Balancer, and Curve stableswap pools for positions, price moves, pool health, rug signals, slippage, and depeg risk, and builds portable State Twins for offline analysis.
README
echoledger-mcp
EchoLedger's MCP server. Analyze live Uniswap V2/V3, Balancer, and Curve stableswap pools — positions, price moves, pool health, rug signals, slippage, and depeg risk — or build a portable State Twin for off-MCP analysis, from any MCP-compatible AI client. Reads real chain state via a caller-supplied RPC; the endpoint itself is authless.
Endpoint: https://mcp.echoledger.ai/mcp (streamable-HTTP, authless).
Install
Claude Desktop
Settings → Integrations → Add server.
URL: https://mcp.echoledger.ai/mcp
Claude Code
claude mcp add --transport http echoledger https://mcp.echoledger.ai/mcp
Cursor
Settings → MCP → Add new MCP server.
Name: echoledger · Type: http · URL: https://mcp.echoledger.ai/mcp
Smithery
Listed at smithery.ai/servers/ic3moore/echoledger — connect via the Smithery gateway from any supported client.
Tools
The endpoint ships 11 tools over live Uniswap V2/V3, Balancer weighted (2-asset), and Curve stableswap (2-asset) pools. Two surfaces:
- 10 reactive primitives — one question, one answer, one chain read.
Four of them also take a vector input (e.g.
price_change_pcts[],amounts_in[]) to sweep a whole grid/curve in one call. BuildStateTwin— returns a portable State Twin (the pool's state as JSON) that a client rehydrates locally to run unlimited counterfactuals off the MCP, zero further RPC.
Every call takes pool_address, rpc_url, and pool_type, plus an
optional chain_id guard and block_number pin — nothing is stored.
Each reactive tool is protocol-specific and advertises only the
pool_type values it accepts; pointing one at an unsupported type
returns a clean error before any chain read.
Full reference — params, returns, and a verified example per tool:
docs/TOOLS.md.
Scope: the Balancer tools cover 2-asset weighted pools; the
stableswap tools cover 2-asset plain Curve pools (rate-bearing pools
— metapools, LSD — are a later release). A stableswap tool pointed at a
3-coin or rate-bearing pool fails cleanly.
Uniswap V2/V3
AnalyzePosition
PnL decomposition for an LP position — impermanent loss, fees, and net.
"Analyze my position in the V3 USDC/ETH pool."
SimulatePriceMove
"What if price moves X%?" — projected reserves, position value, and IL.
"If ETH drops 20%, what happens to my V3 ETH/DAI position?"
CheckPoolHealth
TVL, reserves, LP concentration, and recent activity for a pool.
"Is this V3 pool healthy?"
DetectRugSignals
Threshold-based rug flags on a pool's on-chain state.
"Any rug signals on this V2 pair?"
CalculateSlippage
Slippage, price impact, and max trade size for a given trade.
"How much slippage on a 50 ETH buy in this V3 pool?"
Balancer (2-asset weighted)
AnalyzeBalancerLP
PnL decomposition for a 2-asset Balancer weighted-pool position, using the weighted-pool IL formula where the token weight shapes IL magnitude.
"How is my 80/20 BAL/WETH Balancer position doing?"
SimulateBalancerMove
"What if the base token moves X%?" — projected value and IL on a 2-asset weighted pool, weight-aware.
"If BAL drops 30%, what happens to my BAL/WETH Balancer LP?"
Curve stableswap (2-asset plain)
AnalyzeStableswapLP
PnL decomposition for a 2-asset Curve stableswap position via the amplified-invariant IL formula — small depegs can produce outsized IL at high A.
"Analyze my position in the crvUSD/USDC pool."
SimulateStableswapMove
"What if the peg shifts X%?" — projected value and IL on a 2-asset stableswap pool. At high A, large shocks may be physically unreachable (returned as null).
"What happens to my USDC/DAI Curve LP if USDC depegs 2%?"
AssessDepegRisk
IL across a ladder of depeg levels (default 2%, 5%, 10%, 20%, 50%) for a 2-asset stableswap position, with an optional constant-product benchmark.
"How exposed is my crvUSD/USDC position to a depeg?"
State twin builder (all four pool types)
BuildStateTwin
Reads a pool once and returns a portable State Twin — the pool's state
as JSON (__type__ + fields + a content_hash). A client rehydrates it
locally and runs unlimited counterfactuals (price moves, IL, slippage)
off the MCP, with zero further RPC — build once, run N. Spans all four
pool types. See the twin round-trip in docs/TOOLS.md and
the echoledger package.
"Build me a reusable twin of the USDC/ETH 0.05% pool."
(Honest gap: it's a single-block STATE twin — history-derived health
metrics stay server-side reads inside CheckPoolHealth/DetectRugSignals.)
How it works
echoledger-mcp reads live Uniswap V2/V3, Balancer, and Curve
stableswap pool state through a caller-supplied RPC endpoint (BYO-RPC,
passed per tool call). The endpoint is authless — no API key, no
account. Nothing is logged or stored; each call pulls state, runs the
analysis, and returns a typed result.
The analytics are powered by open-source DeFiPy — the same primitives, twin, and tools that run against synthetic recipes, now pointed at real pools. The math is open; the reports are paid.
Roadmap
- v0.2 — Balancer & Stableswap live reads ✓ shipped. The 5 Balancer/Stableswap tools went live on DeFiPy 2.2's LiveProviders (2-asset weighted + 2-asset plain Curve).
- v0.2.2 — honest schemas, vectors & the twin builder ✓ shipped.
Per-tool
pool_typeenums; vectorized scenario inputs on the four scenario tools; andBuildStateTwin— the 11th tool — for portable, off-MCP twin analysis. - N-asset & rate-bearing pools — 3-asset Balancer, N-coin and rate-bearing (metapool/LSD) Curve, once the upstream DeFiPy primitives extend past 2 assets.
- Distribution polish — OCI-package listing, DNS-verified namespace, and OIDC auto-publish.
Develop
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
Run the server over streamable HTTP (binds to $PORT, default 8080):
PORT=8080 python -m echoledger_mcp.server # endpoint at http://localhost:8080/mcp
Or over stdio for a local MCP Inspector smoke-test:
python -m echoledger_mcp.server --stdio
npx @modelcontextprotocol/inspector python -m echoledger_mcp.server --stdio
Tests (offline — fake provider + real twin/primitives):
pytest tests/
Live-RPC gate (real mainnet Uniswap V2/V3, Balancer, and Curve pools; needs your own RPC):
ECHOLEDGER_TEST_RPC_URL="https://eth-mainnet.example/v2/<key>" pytest tests/test_live.py -v
License
Apache-2.0. See LICENSE and NOTICE.
This project adapts code from DeFiPy (Apache-2.0).
See also
- DeFiPy (open-source substrate): https://defipy.org
- EchoLedger: https://echoledger.ai
- State Twins paper: https://arxiv.org/abs/2605.11522
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。