Skip to main content
Glama
JamesANZ

Bitcoin MCP Server

by JamesANZ

β‚Ώ Bitcoin MCP Server

Real-time Bitcoin blockchain data in your AI workflow. Query addresses, transactions, blocks, and UTXOs from the mempool.space API. No API keys required.

An MCP (Model Context Protocol) server that brings live Bitcoin blockchain data into AI coding environments like Cursor and Claude Desktop.

Why Use Bitcoin MCP?

  • πŸ”’ No API Keys – Works out of the box with mempool.space

  • ⚑ Real-time Data – Live blockchain data, addresses, transactions, blocks

  • 🎯 Easy Setup – One-click install in Cursor or simple manual setup

  • πŸ“Š Comprehensive – Address stats, transaction history, UTXOs, block info

  • 🌐 Public API – Uses reliable mempool.space infrastructure

Related MCP server: mcp-blockstream-info

Quick Start

Ready to explore Bitcoin blockchain data? Install in seconds:

Install in Cursor (Recommended):

πŸ”— Install in Cursor

Or install manually:

npm install -g @jamesanz/bitcoin-mcp
# Or from source:
git clone https://github.com/JamesANZ/bitcoin-mcp.git
cd bitcoin-mcp && npm install && npm run build

Features

πŸ” Address Tools

  • get-address-stats – Get funded/spent amounts, transaction counts

  • get-address-transactions – Transaction history with status, dates, fees

  • get-address-utxos – Current unspent outputs with amounts and confirmations

πŸ”— Transaction Tools

  • get-transaction – Complete transaction details (inputs, outputs, fees, confirmations)

🧱 Block Tools

  • get-block – Block information (hash, timestamp, size, transaction count, fees)

Installation

Cursor (One-Click)

Click the install link above or use:

cursor://anysphere.cursor-deeplink/mcp/install?name=bitcoin-mcp&config=eyJiaXRjb2luLW1jcCI6eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqYW1lc2Fuei9iaXRjb2luLW1jcCJdfX0=

Manual Installation

Requirements: Node.js 18+ and npm

# Clone and build
git clone https://github.com/JamesANZ/bitcoin-mcp.git
cd bitcoin-mcp
npm install
npm run build

# Run server
npm start

Claude Desktop

Add to claude_desktop_config.json:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "bitcoin-mcp": {
      "command": "npx",
      "args": ["@jamesanz/bitcoin-mcp"]
    }
  }
}

Restart Claude Desktop after configuration.

Usage Examples

Get Address Statistics

View funded/spent amounts and transaction counts for any Bitcoin address:

{
  "tool": "get-address-stats",
  "arguments": {
    "address": "1wiz18xYmhRX6xStj2b9t1rwWX4GKUgpv"
  }
}

Get Transaction History

Retrieve recent transactions for an address:

{
  "tool": "get-address-transactions",
  "arguments": {
    "address": "1wiz18xYmhRX6xStj2b9t1rwWX4GKUgpv",
    "limit": 5
  }
}

Get Transaction Details

View complete information about a specific transaction:

{
  "tool": "get-transaction",
  "arguments": {
    "txid": "15e10745f15593a899cef391191bdd3d7c12412cc4696b7bcb669d0feadc8521"
  }
}

Get Block Information

Retrieve block details by height:

{
  "tool": "get-block",
  "arguments": {
    "block_height": 857808
  }
}

Data Source

Source

Coverage

Update Frequency

mempool.space

Bitcoin mainnet blockchain

Real-time

All amounts are displayed in BTC (converted from satoshis). Timestamps are in ISO format.

Use Cases

  • Blockchain Analytics – Track addresses, transactions, and blocks

  • Bitcoin Developers – Build apps with real blockchain data

  • Researchers – Analyze transaction patterns and network activity

  • Traders – Monitor addresses and transaction flows

Technical Details

Built with: Node.js, TypeScript, MCP SDK
Dependencies: @modelcontextprotocol/sdk, superagent, zod
Platforms: macOS, Windows, Linux

API Endpoints:

  • GET /api/address/{address} – Address statistics

  • GET /api/address/{address}/txs – Transaction history

  • GET /api/address/{address}/utxo – UTXOs

  • GET /api/tx/{txid} – Transaction details

  • GET /api/block/{height} – Block information

Contributing

⭐ If this project helps you, please star it on GitHub! ⭐

Contributions welcome! Please open an issue or submit a pull request.

License

MIT License – see LICENSE.md for details.

Support

If you find this project useful, consider supporting it:

⚑ Lightning Network

lnbc1pjhhsqepp5mjgwnvg0z53shm22hfe9us289lnaqkwv8rn2s0rtekg5vvj56xnqdqqcqzzsxqyz5vqsp5gu6vh9hyp94c7t3tkpqrp2r059t4vrw7ps78a4n0a2u52678c7yq9qyyssq7zcferywka50wcy75skjfrdrk930cuyx24rg55cwfuzxs49rc9c53mpz6zug5y2544pt8y9jflnq0ltlha26ed846jh0y7n4gm8jd3qqaautqa

β‚Ώ Bitcoin: bc1ptzvr93pn959xq4et6sqzpfnkk2args22ewv5u2th4ps7hshfaqrshe0xtp

Ξ Ethereum/EVM: 0x42ea529282DDE0AA87B42d9E83316eb23FE62c3f

Available Tools

7 tools
decode_invoiceC

Decode a Lightning invoice

ParametersJSON Schema
NameRequiredDescriptionDefault
invoiceYesBOLT11 Lightning invoice

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states what the tool does but reveals nothing about its behavior: whether it's read-only, what output format to expect, if it requires network access, or if there are rate limits. For a tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose, making it immediately clear what the tool does without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete for a tool that likely returns structured data about an invoice. It doesn't hint at what information is decoded (e.g., amount, destination, expiry) or the format of the response, leaving the agent unprepared for the tool's behavior and output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'invoice' documented as a 'BOLT11 Lightning invoice'. The description adds no additional semantic context beyond this, such as examples of valid invoices or common errors. With high schema coverage, the baseline score of 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('decode') and target resource ('a Lightning invoice'), making the purpose immediately understandable. However, it doesn't differentiate this tool from sibling tools like 'decode_tx' or 'validate_address', which might also involve decoding or validation operations in the Lightning context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. With siblings like 'decode_tx', 'validate_address', and 'pay_invoice' available, there's no indication of whether this tool is for validation, analysis, or preparation for payment, leaving the agent to guess about appropriate contexts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

decode_txC

Decode a Bitcoin transaction

ParametersJSON Schema
NameRequiredDescriptionDefault
rawHexYesTransaction hex

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but offers minimal behavioral insight. It states the action ('decode') but doesn't disclose traits like whether it's read-only (implied but not explicit), performance characteristics (e.g., speed, computational cost), error handling, or output format (no output schema exists). This leaves the agent guessing about critical operational aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with zero wasted wordsβ€”'Decode a Bitcoin transaction' directly conveys the core function. It's front-loaded and appropriately sized for a simple tool, making it easy for an agent to parse quickly without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 parameter, no output schema, no annotations), the description is incomplete. It lacks context on what 'decode' entails (e.g., returns structured data vs. plain text), potential errors (e.g., invalid hex), or integration with siblings (e.g., 'get_transaction' might provide the hex). For a tool with no annotations or output schema, more detail is needed to guide the agent effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the parameter 'rawHex' well-documented as 'Transaction hex'. The description adds no additional parameter semantics beyond the schema, such as format details (e.g., hex string requirements), examples, or validation rules. However, with only one parameter and high schema coverage, the baseline score of 3 is appropriate as the schema adequately handles the parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('decode') and resource ('a Bitcoin transaction'), making the purpose immediately understandable. It distinguishes from siblings like 'get_transaction' (which likely retrieves transaction data) and 'validate_address' (which validates addresses rather than decoding transactions). However, it doesn't specify what aspects of the transaction are decoded (e.g., inputs, outputs, scripts), which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing raw transaction hex), contrast with 'get_transaction' (which might fetch from a blockchain), or indicate use cases (e.g., debugging, analysis). The agent must infer usage from the name and parameter alone, which is insufficient for clear decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_keyB

Generate a new Bitcoin key pair and address

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states what happens (generation of key pair and address) but doesn't mention security implications, whether this is a local or remote operation, format of the output, or any side effects. For a cryptographic tool with zero annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that communicates the core functionality without any wasted words. It's appropriately sized for a simple tool with no parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the cryptographic nature of the tool and absence of both annotations and output schema, the description is incomplete. It doesn't explain what format the key pair and address are returned in, security considerations, or how this integrates with other Bitcoin operations represented by sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema description coverage is 100% (since there are no parameters to describe). The description appropriately doesn't discuss parameters, which aligns with the schema. Baseline for zero parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('generate') and the resource ('new Bitcoin key pair and address'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'validate_address' or 'decode_tx' beyond the obvious functional difference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives. While the purpose is clear, there's no mention of prerequisites, typical use cases, or how this relates to sibling tools like 'pay_invoice' or 'validate_address'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_latest_blockC

Get the latest block

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('Get') but doesn't describe what 'latest block' entailsβ€”e.g., whether it returns metadata, full data, or requires specific permissions. For a tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's front-loaded and appropriately sized for a simple tool, making it easy to parse without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., block data format) or behavioral aspects like error handling. For a tool that likely interacts with blockchain data, more context is needed to ensure proper usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate here. A baseline of 4 is applied since the schema fully handles the parameter semantics, and the description doesn't need to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool's purpose ('Get the latest block'), which is a clear verb+resource combination. However, it doesn't distinguish this from sibling tools like 'get_transaction', which might also retrieve blockchain data, leaving the scope vague. It's adequate but lacks specificity about what type of block or context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. Given sibling tools like 'get_transaction' and 'decode_tx', it's unclear if this is for blockchain headers, full blocks, or a specific network. No exclusions or prerequisites are mentioned, leaving usage ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_transactionC

Get transaction details

ParametersJSON Schema
NameRequiredDescriptionDefault
txidYesTransaction ID

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get transaction details' implies a read-only operation, but it doesn't specify if this requires authentication, has rate limits, returns specific data formats, or handles errors. For a tool with zero annotation coverage, this is a significant gap in describing how it behaves beyond basic functionality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with just three words, front-loading the core purpose without any wasted text. It's appropriately sized for a simple tool, making it easy to parse quickly, though this conciseness comes at the cost of missing contextual details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'transaction details' include, how results are structured, or any behavioral aspects like error handling. For a tool that likely returns complex data (transaction details), this leaves significant gaps in understanding its full context and usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'txid' parameter clearly documented as 'Transaction ID'. The description adds no additional meaning beyond this, such as format examples or constraints. With high schema coverage, the baseline score of 3 is appropriate, as the schema handles parameter documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get transaction details' clearly states the verb ('Get') and resource ('transaction details'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'decode_tx' or 'get_latest_block', leaving ambiguity about when to use this specific tool versus others that might also retrieve transaction-related information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a transaction ID), exclusions, or comparisons to siblings like 'decode_tx' or 'decode_invoice', which could be relevant for transaction-related tasks. This leaves the agent with no context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pay_invoiceC

Pay a Lightning invoice

ParametersJSON Schema
NameRequiredDescriptionDefault
invoiceYesBOLT11 Lightning invoice

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Pay a Lightning invoice' implies a financial transaction with real-world consequences, but the description doesn't disclose critical traits like whether it's irreversible, requires specific permissions, has rate limits, or what happens on failure. This leaves significant gaps for a tool handling payments.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core action and resource, making it easy to parse quickly. Every word earns its place, adhering perfectly to conciseness standards.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a payment tool with no annotations and no output schema, the description is insufficient. It lacks details on behavioral traits (e.g., idempotency, error handling), return values, or integration context. For a financial operation, this leaves the agent with critical unknowns about execution and outcomes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'invoice' parameter documented as a 'BOLT11 Lightning invoice'. The description adds no additional meaning beyond this, as it doesn't explain invoice format, validation, or usage context. With high schema coverage, the baseline score of 3 is appropriate, as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Pay') and the resource ('a Lightning invoice'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'decode_invoice' or 'get_transaction', but the verb 'Pay' implies a transactional operation rather than informational retrieval.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing funds or authentication), when not to use it, or how it relates to sibling tools like 'decode_invoice' (which might be a precursor). Usage is implied by the action but lacks explicit context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_addressC

Validate a Bitcoin address

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesThe Bitcoin address to validate

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While 'validate' implies a read-only, non-destructive operation, the description doesn't specify what validation entails (checksum verification, format validation, network compatibility), what happens with invalid addresses, or any rate limits or authentication requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's appropriately sized for a simple validation tool and gets straight to the point without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a validation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what constitutes successful validation, what format the result takes, or what happens with invalid addresses. Given the technical nature of Bitcoin address validation, more context would be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the single parameter 'address' clearly documented in the schema. The description adds no additional parameter semantics beyond what's already in the schema, so the baseline score of 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('validate') and resource ('Bitcoin address'), making the purpose immediately understandable. However, it doesn't distinguish this tool from potential sibling tools that might also validate addresses in different contexts or for different cryptocurrencies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. Given the sibling tools include 'decode_invoice', 'decode_tx', and 'get_transaction', there's no indication whether address validation is a prerequisite for those operations or when validation should be performed independently.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updates
    • First observeddecode_invoice
    • First observeddecode_tx
    • First observedgenerate_key
    • First observedget_latest_block
    • First observedget_transaction
    • First observedpay_invoice
    • First observedvalidate_address

TDQS

B3.4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose with no ambiguity: decode_invoice and decode_tx handle decoding different data types, generate_key creates new keys, get_latest_block and get_transaction retrieve blockchain data, pay_invoice processes payments, and validate_address checks addresses. The descriptions reinforce these distinct roles, making misselection unlikely.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case throughout, such as decode_invoice, get_transaction, and validate_address. This predictability makes the tool set easy to navigate and understand at a glance, with no deviations in naming style.

Tool Count5/5

With 7 tools, this server is well-scoped for Bitcoin and Lightning operations, covering key areas like transaction handling, address management, and invoice processing. Each tool earns its place without feeling excessive or insufficient for the domain.

Completeness4/5

The tool set provides strong coverage for core Bitcoin and Lightning workflows, including decoding, retrieval, generation, validation, and payment. A minor gap exists in lifecycle operations, such as creating or broadcasting transactions, but agents can likely work around this with the existing tools.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that provides AI agents with real-time and historical Bitcoin network data by wrapping the mempool.space WebSocket and REST APIs. It enables tracking addresses, monitoring blocks, and retrieving transaction details or fee estimates through natural language.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying Bitcoin blockchain data including blocks, transactions, addresses, mempool, and fee estimates via the Blockstream.info Esplora API.
    20
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides real Bitcoin full node data via 17 tools, with pay-per-call in USDC on Base mainnet. Free tools include blockchain info, fees, and mempool; paid tools enable transaction tracking, address analysis, and more.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/JamesANZ/bitcoin-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server