Plan ₿ Forum 2026 · Lugano · Oct 23–24
21 BTC

AI / MCP

MCP server: Bitcoin data for AI agents

A free Model Context Protocol server. Connect Claude, Cursor or any MCP client to one URL and the agent can read live Bitcoin price, ETF flows, fees, network stats, derivatives, the glossary, events and our changelog. Read-only, no key. The same data as the open API, shaped as tools.

https://21btc.cc/mcp

Share this page

Connect

Transport: Streamable HTTP, POST JSON-RPC to the URL above. Add it as a remote server:

{
  "mcpServers": {
    "21btc": {
      "type": "http",
      "url": "https://21btc.cc/mcp"
    }
  }
}

Claude Code: claude mcp add --transport http 21btc https://21btc.cc/mcp

Try it by hand:

curl -s https://21btc.cc/mcp \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
curl -s https://21btc.cc/mcp \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_fees","arguments":{}}}'

Discovery: /mcp/server-card · /.well-known/ai-catalog.json · /llms.txt · open JSON API

Tools (14)

MCP tools and what they return
ToolWhat it returns
get_priceLive BTC price in USD and 7 other currencies (official FX reference rates). Same data as GET /api/v1/price. Read-only.
get_etf_flowsUS spot Bitcoin ETFs: BTC held, fee, latest/5d/20d/cumulative flows (USD millions). Same data as GET /api/v1/etf. Read-only.
get_risk_scoreRisk On/Off composite score (0–100) with every input, formula and source. Same data as GET /api/v1/risk. Read-only.
get_volatilityAnnualised realised volatility over 7/30/90/365 days and by year. Same data as GET /api/v1/volatility. Read-only.
get_holdersBitcoin holders: companies, funds, governments (BTC, 7-day change). Same data as GET /api/v1/holders. Read-only.
get_rainbow_modelRainbow model fit parameters and today's deviation (a model, not a forecast). Same data as GET /api/v1/rainbow. Read-only.
get_stock_to_flowStock-to-flow ratio and PlanB 2019 model value (a model, not a forecast). Same data as GET /api/v1/stock-to-flow. Read-only.
get_network_statsBitcoin network now: block height, hashrate (EH/s), difficulty and the next difficulty adjustment, mempool size, average block time, halving countdown. Sources: mempool.space, blockchain.info, Blockchair. Read-only.
get_feesRecommended Bitcoin transaction fees in sat/vB (fastest, 30 minutes, 1 hour, economy, minimum) and mempool size, from mempool.space. Read-only.
get_derivativesBTC perpetual futures on Binance, Bybit, OKX and Deribit: open interest (BTC and USD), mark price, funding rate per interval and annualised, a 30-day Binance open interest history and recent OKX liquidations. Public keyless exchange APIs, cached 60 seconds. Liquidations cover one exchange only; no free all-exchange total exists. Not advice. Read-only.
get_holder_distributionHow many Bitcoin addresses hold at least 0.1, 1, 10, 100, 1,000 and 10,000 BTC and how coins split across holder classes. Addresses, not people. Source: BitInfoCharts and four cross-checks, with an as-of date. Read-only.
search_siteSearch the site's pages, Bitcoin glossary terms, wiki articles, blog posts, videos, pools, wallets and hacks. Matches English and Russian. Returns title, kind, URL and a short summary. Use kind=glossary for definitions. Read-only.
get_eventsUpcoming Bitcoin-only conferences with dates, city, official URL, ticket offer (price only where verified on the official page) and the 21btc.cc event page where one exists. Dates in the venue's local time. Read-only.
get_changelogRecent shipped changes to 21btc.cc with dates and links. Same data as the /changelog page and its RSS feed. Read-only.

Descriptions sent to agents are in English; search_site matches Russian too and can return Russian titles (language: ru).

Sources: 21btc.cc, mempool.space, Farside, bitcointreasuries.net · each result carries its own source and time

Limits and safety

  • Read-only: all tools carry readOnlyHint, none writes, sends or pays.
  • 60 requests per minute per IP; 429 with Retry-After above that. Request bodies are capped at 16 KB.
  • No sign-in, cookies or secrets. CORS is open and the Origin header is not restricted, because there is nothing private to protect; the spec's Origin check guards servers that expose private data.
  • Stateless: no sessions, GET returns 405. Responses are plain JSON, not a stream.
  • Free use with attribution to 21btc.cc and the original sources named in each result. Not investment advice.

FAQ

Do I need an API key or an account?
No. The server is public and free. There is no sign-in, no cookies and no secrets involved; every tool reads public data.
Can an agent change anything on the site?
No. Every tool is read-only (readOnlyHint is set) and the server has no tools that write, send or pay.
What is the rate limit?
60 requests per minute per IP address. Above that the server answers 429 with a Retry-After header. Tool results are also cached for a minute or so on our side.
Which MCP versions work?
Streamable HTTP, stateless. The classic handshake (2025-11-25, 2025-06-18, 2025-03-26) and the stateless request style of 2026-07-28 (server/discover, no handshake) are both accepted on the same URL.
Is the data advice?
No. Models such as rainbow and stock-to-flow are labelled as models, not forecasts, and every result names its source and time.