Bitcoin fee intelligence for AI agents

Give Claude, ChatGPT, or any custom agent live Bitcoin fee and mempool context via MCP so it can answer practical questions like "should I send now?", "what fee gets me into the next 3 blocks?", and "what will this transaction cost?"

Best for teams that want live fee answers inside Claude or their own MCP-compatible agent.

What is MCP?

The standard that connects AI to external tools.

Model Context Protocol (MCP) is an open standard that lets AI assistants call external tools during a conversation. Instead of the AI guessing or relying on stale training data, it makes a structured tool call to a live data source and gets back a current response.

An MCP server exposes a set of tools — functions that the AI can invoke with parameters and receive structured results. The AI decides when to call which tool based on the user's question. This is fundamentally different from RAG or prompt stuffing: the AI actively queries live systems rather than searching pre-loaded documents.

bitcoin-mcp is the MCP server for Bitcoin. It wraps every Satoshi API endpoint as an MCP tool, so an AI agent can call get_recommended_fees or get_latest_block the same way it would call a calculator or web search.

The Bitcoin + AI Stack

Four layers from AI agent to Bitcoin node.

AI Agent
Claude Desktop / ChatGPT / Custom Agent
bitcoin-mcp
MCP server — exposes API as tool calls
Satoshi API
REST API for fee intelligence and Bitcoin data
Bitcoin Core
Your full node

Each layer is a separate package. Install what you need: the API alone for REST access, or the full stack for AI integration.

What can an AI agent do with Bitcoin data?

Real fee questions, real endpoints, current answers.

"What are current Bitcoin fees?"
The agent calls /fees/recommended and returns fee estimates in sat/vB for high, medium, and low priority, along with a human-readable recommendation.
"Should I send a transaction now or wait?"
The agent calls /fees/landscape, which analyzes mempool congestion and fee trends to produce a send-now-or-wait recommendation with reasoning.
"Analyze the latest block"
The agent calls /blocks/latest and returns block height, transaction count, total fees, weight utilization, miner, and time since the previous block.
"Is the mempool congested?"
The agent calls /mempool and returns congestion level, transaction count, total size in vMB, fee buckets, and the minimum fee to enter the next block.
"What's the current mining difficulty?"
The agent calls /mining and returns current difficulty, estimated hashrate, blocks until the next retarget, and the projected adjustment percentage.
"How much would a 2-input, 1-output transaction cost?"
The agent calls /fees/estimate-tx with the input/output counts and returns estimated size in vBytes and cost at each fee priority level.

Setup Guide

Three steps from zero to AI-powered Bitcoin fee decisions.

Install Satoshi API

Point it at your Bitcoin Core node. The API starts at localhost:9332.

$ pip install satoshi-api
$ export BITCOIN_RPC_USER=your_user
$ export BITCOIN_RPC_PASSWORD=your_password
$ satoshi-api

Install bitcoin-mcp

The MCP server wraps every Satoshi API endpoint as an AI tool call.

$ pip install bitcoin-mcp

Configure your AI agent

Add the MCP server to Claude Desktop, or integrate with any MCP-compatible agent.

// claude_desktop_config.json
{
  "mcpServers": {
    "bitcoin": {
      "command": "bitcoin-mcp",
      "env": {"SATOSHI_API_URL": "http://localhost:9332"}
    }
  }
}

For hosted API access without running a node, point at the public endpoint:

"env": {"SATOSHI_API_URL": "https://bitcoinsapi.com"}

Why self-hosted matters for AI

Fee and transaction queries are sensitive. Keep them private.

When an AI agent queries a third-party API, the API provider sees every request: which addresses were looked up, which transactions were checked, what fee thresholds triggered a send decision. Over time, these queries build a detailed profile of the user's Bitcoin activity.

Self-hosting Satoshi API eliminates this entirely. The AI agent talks to your local API, which talks to your local node. No third party sees the queries. No logs leave your machine.

Third-party API

AI agent sends queries to an external server. The provider sees which addresses, transactions, and fee thresholds the agent queries. Requests are logged with your IP. Query patterns reveal financial behavior over time.

Self-hosted Satoshi API

AI agent queries your local API on localhost. Requests never leave your machine. No third-party logs, no IP correlation, no query profiling. Your node, your data, your privacy.

No other Bitcoin API has this

MCP plus fee intelligence is the real differentiator.

Most Bitcoin APIs are designed for direct application use, not AI tool calling. Teams that want to give agents access to Bitcoin data usually end up building their own wrappers, auth handling, and response normalization on top.

Satoshi API and bitcoin-mcp provide this out of the box. One pip install for the API, one for the MCP server, and your agent gets structured tool-call access to live Bitcoin fee and mempool workflows without custom plumbing.

CapabilitySatoshi APIOther Bitcoin APIs
MCP server availableYes (bitcoin-mcp)No
AI tool-call accessNative, one installBuild it yourself
Self-hosted optionYes (your node)Rarely
Privacy (no query logging)Full (localhost)Provider sees all queries
Analyzed responsesFee recs, congestion scoresRaw data or basic
Open sourceApache-2.0 licenseVaries (mostly no)

The AI-native Bitcoin stack

The combination of Satoshi API + bitcoin-mcp gives you a practical way to give an AI agent direct, structured, tool-call access to a Bitcoin full node. Whether the agent is Claude asking about fees, a GPT-based bot checking mempool congestion, or a custom workflow monitoring mining difficulty, this stack provides the interface.

Give your AI agent a real answer on Bitcoin fees.

Two pip installs. Three lines of config. Live fee recommendations and mempool context via MCP.

Testing agent workflows with this? Open an issue or join the Discord community with the prompt, workflow, or edge case you want supported.