@cryptoapis-io/mcp-blockchain-fees
OfficialProvides fee recommendations and gas estimates for the Bitcoin blockchain.
Provides fee recommendations and gas estimates for the Bitcoin Cash blockchain.
Provides fee recommendations and gas estimates for the Dash blockchain.
Provides fee recommendations and gas estimates for the Dogecoin blockchain.
Provides fee recommendations and gas estimates for the Litecoin blockchain.
Provides fee recommendations for the XRP Ledger blockchain.
Provides fee recommendations and gas estimates for the Zcash blockchain.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@cryptoapis-io/mcp-blockchain-feesWhat are the current fees for Bitcoin?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@cryptoapis-io/mcp-blockchain-fees
MCP server for Crypto APIs Blockchain Fees product. Fee recommendations and gas estimates for UTXO, EVM, and XRP blockchains.
API Version: Compatible with Crypto APIs version 2024-12-12
Features
UTXO fee recommendations and smart fee estimation (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash)
EVM fee recommendations, EIP-1559 fees, and gas estimation for transfers and contract calls
XRP fee recommendations
Related MCP server: @cryptoapis-io/mcp-address-history
Prerequisites
Node.js 18+
Crypto APIs account and API key (sign up | get API key)
Installation
npm install @cryptoapis-io/mcp-blockchain-feesOr install all Crypto APIs MCP servers: npm install @cryptoapis-io/mcp
Usage
# Run with API key
npx @cryptoapis-io/mcp-blockchain-fees --api-key YOUR_API_KEY
# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-blockchain-fees
# HTTP transport
npx @cryptoapis-io/mcp-blockchain-fees --transport http --port 3000 --api-key YOUR_API_KEYClaude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"cryptoapis-blockchain-fees": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-blockchain-fees"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}Cursor
Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"cryptoapis-blockchain-fees": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-blockchain-fees"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}MCP Inspector
npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-blockchain-fees --api-key YOUR_API_KEYn8n
Start the server in HTTP mode:
npx @cryptoapis-io/mcp-blockchain-fees --transport http --port 3000 --api-key YOUR_API_KEYIn your n8n workflow, add an AI Agent node
Under Tools, add an MCP Client Tool and set the URL to
http://localhost:3000/mcp
All servers default to port 3000. Use
--portto assign different ports when running multiple servers.
Available Tools
blockchain_fees_utxo
Fee recommendations for UTXO blockchains (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash).
Action | Description |
| Get fee recommendations (slow, standard, fast) |
| Estimate smart fee for a target confirmation time |
blockchain_fees_evm
Fee recommendations and gas estimation for EVM blockchains.
Action | Description |
| Get fee recommendations (slow, standard, fast) |
| Get EIP-1559 fee recommendations (base fee, priority fee) |
| Estimate gas for native coin transfer |
| Estimate gas for token transfer |
| Estimate gas for contract interaction |
blockchain_fees_xrp
Fee recommendations for XRP (mainnet, testnet).
Action | Description |
| Get XRP fee recommendations |
CLI Arguments
Argument | Description | Default |
| Crypto APIs API key |
|
| Transport type: |
|
| HTTP host |
|
| HTTP port |
|
| HTTP path |
|
| Enable stateless HTTP mode |
|
HTTP API Key Modes
When using HTTP transport, the server supports two API key modes:
With
--api-key: The key is used for all requests.x-api-keyrequest headers are ignored.Without
--api-key: Each request must include anx-api-keyheader with a valid Crypto APIs key. This enables hosting a public server where each user provides their own key.
# Per-request key mode (multi-tenant)
npx @cryptoapis-io/mcp-blockchain-fees --transport http --port 3000
# Clients send x-api-key header with each requestStdio transport always requires an API key at startup.
Important: API Key Required
Warning: Making requests without a valid API key — or with an incorrect one — may result in your IP being banned from the Crypto APIs ecosystem. Always ensure a valid API key is configured before starting any server.
Remote MCP Server
Crypto APIs provides an official remote MCP server with all tools available via HTTP Streamable transport at https://ai.cryptoapis.io/mcp. Pass your API key via the x-api-key header — no installation required.
License
MIT
Available Tools
4 toolsblockchain_fees_evmA
Get fee recommendations and estimate gas costs for EVM blockchains. Use this before preparing or signing a transaction to determine appropriate gas parameters.
Actions: • get-fee-recommendations: Get recommended gas price tiers (slow/standard/fast) • get-eip-1559-fee-recommendations: Get EIP-1559 fee parameters (baseFee, maxPriorityFee) for supported chains • estimate-native-coin-transfer-gas: Estimate gas for a native coin transfer (e.g. ETH, BNB) • estimate-token-transfer-gas: Estimate gas for an ERC-20/ERC-721 token transfer • estimate-contract-interaction-gas: Estimate gas for a smart contract call
Credits by action (source: OpenAPI): • estimate-contract-interaction-gas: arbitrum 192, avalanche 216, base 144, binance-smart-chain 300, ethereum 120, ethereum-classic 156, optimism 168, polygon 240, tron 180 • estimate-native-coin-transfer-gas: arbitrum 192, avalanche 216, base 144, binance-smart-chain 300, ethereum 120, ethereum-classic 156, optimism 168, polygon 240, tron 180 • estimate-token-transfer-gas: arbitrum 192, avalanche 216, base 144, binance-smart-chain 300, ethereum 120, ethereum-classic 156, optimism 168, polygon 240, tron 180 • get-eip-1559-fee-recommendations: arbitrum 48, avalanche 54, base 36, binance-smart-chain 75, ethereum 30, ethereum-classic 39, optimism 42, polygon 60, tron 45 • get-fee-recommendations: arbitrum 48, avalanche 54, base 36, binance-smart-chain 75, ethereum 30, ethereum-classic 39, optimism 42, polygon 60, tron 45
Credits are indicative only and may change at any time. The actual credits spent for each API request are returned in the response headers.
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | Hex-encoded calldata (required for estimate-contract-interaction-gas) | |
| value | No | Amount in native coin's smallest unit, e.g. wei (required for estimate-native-coin-transfer-gas; optional for estimate-contract-interaction-gas) | |
| action | Yes | Action to perform | |
| amount | No | Token amount to transfer (required for estimate-token-transfer-gas) | |
| context | No | Optional context for the request - echoed back in response | |
| network | Yes | Network name | |
| toAddress | No | Recipient address (required for native coin and token transfer gas estimation) | |
| blockchain | Yes | Blockchain protocol | |
| fromAddress | No | Sender address (required for gas estimation actions) | |
| contractType | No | Token standard: ERC-20 or ERC-721 (estimate-token-transfer-gas only; defaults to ERC-20) | |
| contractAddress | No | Token contract address (required for estimate-token-transfer-gas and estimate-contract-interaction-gas) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It conveys that the tool performs estimations (read-only) and lists actions, but does not explicitly state that no transaction is signed or submitted. It does add useful context about credits and response headers, which is a behavioral trait. Still, the lack of an explicit read-only/safety disclosure keeps it from a higher score.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with a clear purpose, but the credits section is excessively long and repetitive, listing the same credit values for multiple actions. This violates the principle that every sentence should earn its place. The core action list is useful, but the redundancy makes the description bloated and less scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 11 parameters and 5 distinct actions, but the description does not guide the agent on which action to choose for a given scenario. The schema hints at required parameters per action, and the action names are self-explanatory, but without an output schema or action-selection guidance, the description is only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and each parameter already includes detailed descriptions, including action-specific requirements. The tool description's action list duplicates some of this information (e.g., which action requires 'data') without adding new meaning beyond the schema. Therefore, it meets the baseline but does not elevate it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-resource pair: 'Get fee recommendations and estimate gas costs for EVM blockchains.' This clearly distinguishes the tool from its siblings (UTXO, XRP) by explicitly scoping to EVM. The subsequent action list enumerates concrete operations, leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use the tool: 'Use this before preparing or signing a transaction to determine appropriate gas parameters.' This gives a concrete context. However, it does not mention alternatives or explicit when-not-to-use scenarios, though the sibling tool names (UTXO/XRP) implicitly differentiate by chain type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
blockchain_fees_utxoA
Get fee recommendations for UTXO blockchains (bitcoin, bitcoin-cash, litecoin, dogecoin, dash, zcash). Use this before preparing or signing a transaction to determine the appropriate fee rate.
Actions: • get-fee-recommendations: Get recommended fee-per-byte tiers (slow/standard/fast) from the mempool • estimate-transaction-smart-fee: Estimate the fee rate needed for confirmation within a target number of blocks
Credits by action (source: OpenAPI): • estimate-transaction-smart-fee: bitcoin 510, bitcoin-cash 612, dash 561, dogecoin 561, litecoin 561, zcash 663 • get-fee-recommendations: bitcoin 510, bitcoin-cash 612, dash 561, dogecoin 561, litecoin 561, zcash 663
Credits are indicative only and may change at any time. The actual credits spent for each API request are returned in the response headers.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Action to perform | |
| context | No | Optional context for the request - echoed back in response | |
| network | Yes | Network name | |
| blockchain | Yes | Blockchain protocol | |
| feeRatePriority | No | Fee rate priority: ECONOMICAL or CONSERVATIVE (estimate-transaction-smart-fee only) | |
| confirmationTarget | No | Target number of blocks for confirmation (estimate-transaction-smart-fee only) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the two actions, includes credit costs per action/blockchain, and notes that credits are indicative and actual costs are returned in response headers. This adds meaningful behavioral context beyond the schema, though it doesn't explicitly state read-only behavior or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the main purpose in the first sentence, followed by usage guidance and a structured action list. The credits section is somewhat verbose but serves a purpose (cost transparency). Overall, it's well-organized and each section earns its place, though it could be slightly more compact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the tool's scope, use cases, available actions, and cost information, which is solid for a fee-recommendation tool. It lacks an output schema but the actions imply the return type. The description is sufficiently complete given the tool's complexity, though it could clarify the meaning of fee tiers or the return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter has a description. The tool description adds action-to-parameter mapping (e.g., feeRatePriority and confirmationTarget are 'estimate-transaction-smart-fee only') but this is also present in the schema. The description doesn't significantly augment the parameter semantics beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get fee recommendations for UTXO blockchains' and lists the specific blockchains (bitcoin, bitcoin-cash, litecoin, dogecoin, dash, zcash). It also differentiates from sibling tools by naming the UTXO scope, which contrasts with the EVM and XRP siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context: 'Use this before preparing or signing a transaction to determine the appropriate fee rate.' It also breaks down the two actions and their specific use cases. However, it does not explicitly mention when to avoid this tool or name alternative tools, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
blockchain_fees_xrpA
Blockchain Fees XRP: get fee recommendations. Networks: mainnet, testnet.
Credits per call: 20
Credits are indicative only and may change at any time. The actual credits spent for each API request are returned in the response headers.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Optional context for the request - echoed back in response | |
| network | Yes | Network name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses credit costs and that actual credits are in response headers, which is useful. However, it does not describe the return format or any side effects, though as a read-only fee tool this is less critical.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the purpose. It includes credit info as a separate block, which is relevant but could be considered extraneous. Overall, it is efficient with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one required parameter and no output schema. The description gives network options and credit costs, but does not explain what 'fee recommendations' includes or the structure of the response. For a minimal fee tool, this is adequate but has gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both 'network' (with enum) and 'context' are fully described in the schema. The description only repeats the network names, adding no new parameter semantics. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'get fee recommendations' for XRP, with specific network options. It distinguishes itself from sibling tools like blockchain_fees_utxo and blockchain_fees_evm by explicitly naming the chain (XRP) and supported networks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you need fee recommendations for XRP on mainnet or testnet. However, it does not explicitly state when to prefer this over sibling fee tools or system_info, nor does it mention exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
system_infoA
CryptoAPIs reference documentation — no API call, no credits consumed.
Actions: • blockchains — Supported blockchains, networks, products per chain, denominations, fiat currencies • errors — Complete error code table (HTTP status, error code, message) • credits — Credit charging structure, cost multipliers per blockchain, monitoring & operations taxes (xPub, synced addresses, blockchain events), pay-as-you-go • callbacks — Webhook mechanics: URL requirements, retry strategy (5 retries, exponential backoff), HMAC security, idempotency • limits — Throughput soft/hard limits per plan, 2.1x penalty multiplier, rate limiting behavior
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Reference topic to retrieve | |
| context | No | Optional context for the request - echoed back in response |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and explicitly notes 'no API call, no credits consumed,' which is key behavioral information. It also discloses detailed content such as retry strategy, HMAC security, and rate-limit penalty multipliers, going well beyond a generic 'returns info' statement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the critical 'no API call, no credits consumed' caveat and uses a compact bullet list. Each bullet covers a distinct action without wasted prose, making it highly scannable for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a reference-documentation tool with no output schema and no annotations, this description is complete enough: it defines all five actions and gives sufficient detail about their content. It also clarifies side effects (none) and cost implications (none), covering the main contextual risks.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema coverage is 100%, the description adds significant meaning by explaining each allowed action enum value in detail (e.g., callbacks covers URL requirements, 5 retries, HMAC). This transforms enum names into actionable context and compensates fully beyond the schema's short parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states this is CryptoAPIs reference documentation with no API call or credits consumed, and enumerates five specific topics (blockchains, errors, credits, callbacks, limits). This clearly identifies it as an informational tool distinct from domain siblings like aml.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The bulleted actions give clear contexts for when to use the tool, such as looking up error codes, credit structures, callback mechanics, or rate limits. It does not explicitly name alternatives or exclusion conditions, so it stops short of a full when/when-not specification.
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.
4 tool updates
v0.3.0- First observed
blockchain_fees_evm - First observed
blockchain_fees_utxo - First observed
blockchain_fees_xrp - First observed
system_info
TDQS
Scored across 4 tools
Each tool targets a distinct blockchain family (UTXO, EVM, XRP) or serves a clearly separate documentation purpose (system_info). There is no overlap or ambiguity between tool purposes.
The three fee tools follow a consistent 'blockchain_fees_<type>' pattern, making their scope predictable. system_info deviates from the fee-focused naming but is a clear utility name, so the overall set is mostly consistent.
Four tools is a well-scoped count for a fee-estimation server. Each tool handles a distinct category (UTXO, EVM, XRP, documentation) without unnecessary bloat or missing essentials.
The server covers the primary blockchain fee estimation families (UTXO, EVM, XRP) and includes detailed internal actions for each. Minor gaps exist for other fee types or chains, but the core domain is well covered.
Maintenance
Related MCP Connectors
MCP server with quote and live cryptocurrency price tools, local and cloud-deployed transports.
MCP server for Fuse Network: balances, tokens, staking, DeFi data, swaps and on-chain transactions.
Unlock the power of real-time cryptocurrency data with our Crypto Price Insights MCP server.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server for Crypto APIs Prepare Transactions product that builds unsigned EVM transactions for native coin, fungible token (ERC-20), and NFT (ERC-721) transfers.265 npmMIT
- AlicenseAqualityCmaintenanceMCP server for Crypto APIs Address History product, enabling querying full blockchain address transaction history for synced addresses across EVM and UTXO blockchains.475 npmMIT
- AlicenseNot gradedqualityCmaintenanceMCP server for Crypto APIs Block Data product. Get block details by height or hash for EVM, UTXO, and XRP blockchains.118 npmMIT
- AlicenseNot gradedqualityCmaintenanceMCP server for Crypto APIs Transactions Data. Enables lookup of transaction details by hash across EVM, UTXO, Solana, XRP, and Kaspa blockchains.53 npmMIT