Roadmap & Changelog
v2.0 (shipped)
Section titled “v2.0 (shipped)”Released 2026-04-23. See What’s New in v2 for the full feature summary.
defipy.tools— MCP tool schemas for 10 curated primitivesdefipy.twin— State Twin abstraction with MockProvider (4 recipes) and LiveProvider stub- MCP server demo — verified live against Claude Desktop
- 629 tests, 125 new in v2.0
- Packaging fixes for all primitive sub-packages
- Zero breaking changes from v1.2.0
v2.1 (shipped)
Section titled “v2.1 (shipped)”LiveProvider — Uniswap V2 and V3. On-chain snapshot construction for the two most common protocols. LiveProvider(rpc_url) was stable since v2.0; v2.1 makes snapshot() functional for V2 and V3 — block pinning, decimal-adjusted reserves, V3 active-liquidity reads, and Multicall3 batching. Balancer and Stableswap followed in v2.2 (below).
Observability module. defipy.observability replaces the v2.0 stderr-receipt pattern with a structured event sink and opt-in tracing. Composable with the MCP server’s dispatch loop.
Primitive promotions. Candidates for promotion from Python-API-only to MCP tool status, as protocol parity and dependency blockers clear:
DetectFeeAnomaly— pending multi-protocol supportCompareFeeTiers— pending MockProvider multi-fee-tier recipesEvaluateRebalance— pending multi-step reasoning ergonomics assessment
v2.2 (shipped)
Section titled “v2.2 (shipped)”Balancer and Stableswap LiveProvider. The on-chain read path extends to Balancer V2 weighted pools (2-asset) and Curve-style plain Stableswap pools (2–3 coins, including the DAI/USDC/USDT 3pool). provider.snapshot("balancer:0x...") and provider.snapshot("stableswap:0x...") now produce live twins — the NotImplementedError stubs are gone.
Under the hood: an argument-bearing Multicall3 helper (for getPoolTokens(poolId), coins(i), balances(i)), the Balancer Vault two-hop read, a Curve coin-count probe, and an N-coin Stableswap snapshot. Requires web3scout >= 1.0.0, which bundles the Balancer/Curve read ABIs. Scope: 2-asset Balancer and plain Stableswap; rate-bearing pools (metapools, LSD) are deferred.
The net effect: every primitive that already supports Balancer or Stableswap can now run against live chain state, not just MockProvider recipes.
v2.3 (planned)
Section titled “v2.3 (planned)”Planning primitives category. Non-mutating projections that answer “what should I do next?”:
PlanRebalance— project the cost/benefit of rebalancing a V3 position to a new tick rangePlanZapIn— project a single-token deposit into an LP positionPlanExit— project the cost of exiting a position at current state
Protocol extensions. Balancer and Stableswap support for primitives currently V2/V3-only:
FindBreakEvenPrice— extend to Balancer weighted-pool invariantFindBreakEvenTime— extend to Balancer and StableswapCalculateSlippage— extend to Balancer and StableswapLPQuote— extend the read/quote methods to Balancer and Stableswap (add-only; V2/V3 calls unchanged)
New primitives.
AssessLiquidityDepth— V3 tick-walking to assess concentrated liquidity depth around the active tickDiscoverPools— pool discovery across protocols (stretch goal; overlaps with existing MCP ecosystem tools)
Multi-format tool schemas. get_schemas("anthropic") and get_schemas("openai") — Anthropic tool-use and OpenAI function-calling envelopes derived from the shipped MCP schemas. Until this lands, get_schemas raises NotImplementedError for any non-mcp format.
v3.0 (horizon)
Section titled “v3.0 (horizon)”defipy.org launch. Public-facing site with documentation, blog, and community resources. ReadTheDocs continues as the SDK reference; defipy.org becomes the marketing and community surface.
Theme migration. ReadTheDocs theme upgrade from sphinx_rtd_theme to Furo or equivalent modern theme.
Token considerations. No token is planned. If a token ever ships, it will be after a stable business case exists — not before. This is a deliberate, cycle-tested discipline. See the project’s infrastructure-first positioning: DeFiPy is substrate, not a product.
Changelog
Section titled “Changelog”The full changelog with per-release details is maintained in CHANGELOG.md in the main repository.