CoinBucha
Model Context Protocol · remote server · Streamable HTTP

CoinBucha MCP

CoinBucha is a remote MCP server that hands an AI agent Bitcoin's leading, non-price indicators as machine-readable tool responses — sovereign reserve adoption, corporate treasury holdings, hiring velocity, network hashrate, spot-ETF flows, and a daily digest.

Every response is observable data: a reading carried with its as_of date and, where the underlying record has them, its primary sources — plus the one-line why the tool itself returns. Nothing here is a forecast, a price target, or a recommendation to buy, sell, or hold. The tools describe conditions; what you do with them is yours.

It reads the same on-disk data the public dashboard serves, so the MCP and the site never diverge — the daily refresh updates both at once.

1 · Connect the server

Streamable HTTP at https://coinbucha.com/api/mcp. No API key, no account. Add it to your MCP client config:

{
  "mcpServers": {
    "coinbucha": {
      "type": "http",
      "url": "https://coinbucha.com/api/mcp"
    }
  }
}

Or, from Claude Code:

claude mcp add --transport http coinbucha https://coinbucha.com/api/mcp

Discovery manifest: https://coinbucha.com/.well-known/mcp.json. Also exposed: the resource coinbucha://methodology and the prompt morning_bitcoin_brief.

2 · Tool reference

Each block is a real tools/call and the real response, produced by running the live handler's own transform over the same on-disk file it reads. Nothing is mocked or hand-written. Where a long array is elided for page length, the omitted count is stated and the live call returns the full array.

scan_signals

from public/signals.json · as of 2026-07-22

Ranked composite feed of Bitcoin signals (the money tool). Filter by strength, direction, or type.

Call
{
  "method": "tools/call",
  "params": {
    "name": "scan_signals",
    "arguments": {}
  }
}
Response
{
  "as_of": "2026-07-22T05:13:55.010589Z",
  "btc_price_usd": 66219,
  "count": 4,
  "signals": [
    {
      "id": "S1_sovereign_adoption",
      "type": "sovereign_adoption",
      "title": "Sovereign Bitcoin adoption",
      "value": 630006,
      "unit": "BTC held by states",
      "extra": {
        "holder_states": 6,
        "pipeline_states": 2,
        "usd_value": 41718367314
      },
      "signal_strength": 76,
      "direction": "tailwind",
      "validated": true,
      "as_of": "2026-05-15",
      "why": "6 states hold ~630,006 BTC as reserves; 2 more have announced or proposed legislation. Sovereign demand is structural and policy-led, so it tends to precede flows.",
      "sources": [
        {
          "label": "CoinBucha Sovereign Bitcoin Reserve Monitor",
          "url": "https://coinbucha.com/sovereign-bitcoin",
          "type": "primary"
        }
      ],
      "analyst_note": "Sovereign demand is the slowest-moving but stickiest bid in Bitcoin — states rarely sell on a red candle.",
      "analyst_note_attribution": "CoinBucha signal desk"
    },
    {
      "id": "S5_network_hashrate",
      "type": "network_hashrate",
      "title": "Bitcoin network hashrate trend",
      "value": 872.4,
      "unit": "EH/s",
      "extra": {
        "pct_30d": 4.8,
        "pct_90d": -1.2,
        "hashrate_30d_ago_eh": 832.2
      },
      "signal_strength": 62,
      "direction": "tailwind",
      "validated": false,
      "as_of": "2026-07-21",
      "why": "Network hashrate is ~872.4 EH/s, +4.8% over 30 days. Rising hashrate reflects growing miner commitment and network security; sustained trends can precede price (not yet backtested).",
      "sources": [
        {
          "label": "blockchain.info hashrate chart",
          "url": "https://www.blockchain.com/explorer/charts/hash-rate",
          "type": "primary"
        }
      ],
      "analyst_note": "Hashrate is miners voting with electricity — a rising trend is conviction you can measure on-chain.",
      "analyst_note_attribution": "CoinBucha signal desk"
    },
    "… 2 further entries elided for display — the live response returns all 4"
  ],
  "disclaimer": "Information, not financial advice. CoinBucha signals describe observable conditions, not recommendations to buy, sell, or hold any asset."
}
  • · `signals` shown as 2 of 4 entries — elided for page length only. The live call returns all 4.
Same data as a web page →

get_hiring_signal

from public/hiring.json · as of 2026-07-22

Bitcoin/crypto-infra hiring velocity: open roles + 30/90-day deltas from live ATS boards.

Call
{
  "method": "tools/call",
  "params": {
    "name": "get_hiring_signal",
    "arguments": {
      "company": "Block"
    }
  }
}
Response
{
  "as_of": "2026-07-22",
  "companies": [
    {
      "company": "Block",
      "ticker": "XYZ",
      "category": "btc_native (Cash App, Spiral, TBD)",
      "careers_url": "https://boards.greenhouse.io/block",
      "ats": "greenhouse",
      "slug": "block",
      "open_roles": 204,
      "open_roles_30d_ago": 213,
      "open_roles_90d_ago": 204,
      "history": [
        {
          "date": "2026-06-08",
          "count": 230
        },
        {
          "date": "2026-06-09",
          "count": 233
        },
        {
          "date": "2026-06-10",
          "count": 232
        },
        "… 42 further entries elided for display — the live response returns all 45"
      ],
      "as_of": "2026-07-22",
      "seed": false,
      "delta_30d": -9,
      "delta_90d": 0,
      "pct_30d": -4.2
    },
    {
      "company": "Fireblocks",
      "ticker": null,
      "category": "crypto_infra (BTC settlement)",
      "careers_url": "https://boards.greenhouse.io/fireblocks",
      "ats": "greenhouse",
      "slug": "fireblocks",
      "open_roles": 61,
      "open_roles_30d_ago": 55,
      "open_roles_90d_ago": 61,
      "history": [
        {
          "date": "2026-06-08",
          "count": 54
        },
        {
          "date": "2026-06-09",
          "count": 56
        },
        {
          "date": "2026-06-10",
          "count": 54
        },
        "… 42 further entries elided for display — the live response returns all 45"
      ],
      "as_of": "2026-07-22",
      "seed": false,
      "delta_30d": 6,
      "delta_90d": 0,
      "pct_30d": 10.9
    }
  ],
  "note": "Live counts from public ATS APIs. 30/90-day deltas accrue from real daily history and are 0 until enough days are recorded. Backtest before marketing as predictive.",
  "why": "Teams staff up before they ship and grow; rising open-role counts are an early demand tell.",
  "disclaimer": "Information, not financial advice. CoinBucha signals describe observable conditions, not recommendations to buy, sell, or hold any asset."
}
  • · `history` shown as 3 of 45 entries — elided for page length only. The live call returns all 45.
  • · Called with a `company` filter. Unfiltered, the same call returns all 5 tracked companies.
Same data as a web page →

get_sovereign_reserves

from public/sovereigns.json · as of 2026-04-30

Sovereign Bitcoin holdings, ranked. Filter by country or tier (1 = largest holders).

Call
{
  "method": "tools/call",
  "params": {
    "name": "get_sovereign_reserves",
    "arguments": {
      "tier": 1
    }
  }
}
Response
{
  "as_of": "2026-07-22T05:13:50Z",
  "btc_price_usd": 66219,
  "count": 2,
  "sovereigns": [
    {
      "country_code": "US",
      "country_name": "United States",
      "holdings_btc": 325000,
      "status": "strategic_reserve",
      "tier": 1,
      "framework": "U.S. Strategic Bitcoin Reserve, formalized March 2026 via executive framework. Holdings comprise BTC previously seized under federal law-enforcement actions, transferred to Treasury and explicitly designated as a strategic reserve asset.",
      "as_of": "2026-04-30",
      "sources": [
        {
          "label": "U.S. Strategic Bitcoin Reserve — Wikipedia",
          "url": "https://en.wikipedia.org/wiki/U.S._Strategic_Bitcoin_Reserve",
          "type": "secondary"
        },
        {
          "label": "National Crypto Reserves Tracker — CCN",
          "url": "https://www.ccn.com/education/crypto/national-crypto-reserves-tracker-countries-bitcoin-state-wealth/",
          "type": "secondary"
        },
        {
          "label": "Sygnum 2026 sovereign Bitcoin reserves — Cointelegraph",
          "url": "https://cointelegraph.com/news/2026-sovereign-bitcoin-reserves-tradfi-tokenization-adoption-sygnum",
          "type": "secondary"
        }
      ],
      "notes": "Range commonly cited as 325,000–328,000 BTC depending on attribution of recent transfers. Conservative low-end figure used here.",
      "status_history": [
        {
          "status": "seized_held",
          "started_at": "2013-10-01",
          "ended_at": "2026-03-06",
          "note": "Pre-formalization holdings from Silk Road and subsequent seizures."
        },
        {
          "status": "strategic_reserve",
          "started_at": "2026-03-06",
          "note": "Formalized via executive framework."
        }
      ],
      "_derived": {
        "usd_value": 21521175000,
        "eur_value": 18864300000,
        "pct_of_supply": 1.6373
      }
    },
    {
      "country_code": "CN",
      "country_name": "China",
      "holdings_btc": 190000,
      "status": "seized_held",
      "tier": 1,
      "framework": "Holdings comprise BTC seized in PlusToken and related fraud cases. Held by Chinese state agencies. No public strategic-reserve framework and no recent on-chain confirmation; figure is a widely cited estimate.",
      "as_of": "2024-12-31",
      "sources": [
        {
          "label": "National Crypto Reserves Tracker — CCN",
          "url": "https://www.ccn.com/education/crypto/national-crypto-reserves-tracker-countries-bitcoin-state-wealth/",
          "type": "secondary"
        }
      ],
      "notes": "Highest-uncertainty data point in the Monitor. Treat as estimate, not verified.",
      "status_history": [
        {
          "status": "seized_held",
          "started_at": "2019-07-01"
        }
      ],
      "_derived": {
        "usd_value": 12581610000,
        "eur_value": 11028360000,
        "pct_of_supply": 0.9572
      }
    }
  ],
  "disclaimer": "Information, not financial advice. CoinBucha signals describe observable conditions, not recommendations to buy, sell, or hold any asset."
}
  • · Called with `tier: 1`. Unfiltered, the same call returns all 11 tracked states.
Same data as a web page →

get_treasury_holdings

from public/treasury.json · as of 2026-07-22

Corporate Bitcoin treasury holdings: total BTC held by public companies + top holders.

Call
{
  "method": "tools/call",
  "params": {
    "name": "get_treasury_holdings",
    "arguments": {}
  }
}
Response
{
  "as_of": "2026-07-22",
  "total_btc": 1285045,
  "company_count": 179,
  "total_value_usd": 85124421034.62753,
  "top": [
    {
      "name": "Strategy",
      "symbol": "MSTR.US",
      "btc": 843775
    },
    {
      "name": "Twenty One Capital",
      "symbol": "XXI.US",
      "btc": 43514
    },
    {
      "name": "Metaplanet",
      "symbol": "3350.T",
      "btc": 43000
    },
    {
      "name": "MARA Holdings",
      "symbol": "MARA.US",
      "btc": 35303
    },
    {
      "name": "Bitcoin Standard Treasury Company",
      "symbol": "CEPO.US",
      "btc": 30021
    }
  ],
  "why": "Corporate treasury accumulation is structural institutional demand.",
  "disclaimer": "Information, not financial advice. CoinBucha signals describe observable conditions, not recommendations to buy, sell, or hold any asset."
}
Same data as a web page →

get_etf_flows

from public/etf.json

Spot Bitcoin ETF net flows (latest day + trailing 5/30-day) — institutional demand.

Call
{
  "method": "tools/call",
  "params": {
    "name": "get_etf_flows",
    "arguments": {}
  }
}
Response
{
  "available": false,
  "note": "ETF flow data not yet configured.",
  "disclaimer": "Information, not financial advice. CoinBucha signals describe observable conditions, not recommendations to buy, sell, or hold any asset."
}
  • · The spot-ETF flow feed is not yet configured, so the live tool currently returns this exact `available: false` response. When public/etf.json lands, this block shows the real flows from the same file.
Same data as a web page →

get_network_signal

from public/network.json · as of 2026-07-21

Bitcoin network hashrate level and 30/90-day trend (miner conviction / security).

Call
{
  "method": "tools/call",
  "params": {
    "name": "get_network_signal",
    "arguments": {}
  }
}
Response
{
  "as_of": "2026-07-21",
  "hashrate_eh": 872.4,
  "pct_30d": 4.8,
  "pct_90d": -1.2,
  "why": "Rising hashrate reflects growing miner commitment and network security.",
  "disclaimer": "Information, not financial advice. CoinBucha signals describe observable conditions, not recommendations to buy, sell, or hold any asset."
}
Same data as a web page →

get_daily_brew

from public/signals.json · as of 2026-07-22

Today's machine-readable signal digest (the CoinBucha Daily Brew).

Call
{
  "method": "tools/call",
  "params": {
    "name": "get_daily_brew",
    "arguments": {}
  }
}
Response
{
  "date": "2026-07-22",
  "btc_price_usd": 66219,
  "headline": "Top signal today: Sovereign Bitcoin adoption (76/100, tailwind).",
  "signals_summary": [
    "- Sovereign Bitcoin adoption: 76/100 (tailwind) — 6 states hold ~630,006 BTC as reserves; 2 more have announced or proposed legislation. Sovereign demand is structural and policy-led, so it tends to precede flows.",
    "- Bitcoin network hashrate trend: 62/100 (tailwind) — Network hashrate is ~872.4 EH/s, +4.8% over 30 days. Rising hashrate reflects growing miner commitment and network security; sustained trends can precede price (not yet backtested).",
    "… 2 further entries elided for display — the live response returns all 4"
  ],
  "disclaimer": "Information, not financial advice. Signals describe observable conditions, not recommendations."
}
  • · `signals_summary` shown as 2 of 4 entries — elided for page length only. The live call returns all 4.
Same data as a web page →

Long arrays aside, these responses are byte-for-byte what the endpoint serves. How every figure is computed: methodology.

3 · Auth & rate limits

The free tier needs no API key and no account — it is IP rate-limited at 30 requests per minute. Higher limits are supplied by an API key sent as an Authorization: Bearer <key> header. Plans, limits and how to register interest live on the pricing page.

Dashboard →All signals →Pricing →Methodology →

Information, not financial advice. CoinBucha signals describe observable conditions, not recommendations to buy, sell, or hold any asset.