Ankr API MCP Server
Ankr API MCPサーバー
Ankr APIを通じてブロックチェーンデータにアクセスするためのMCP(Model Context Protocol)サーバーです。
概要
Ankr MCPサーバーは、Ankr APIを介してオンチェーンデータを取得します。MCPを実装しており、LLMが20以上のチェーンにわたってブロックチェーンデータをクエリできるようにします。
Related MCP server: Base Network MCP Server
機能
このサーバーは、Ankr Advanced APIの全カテゴリーにわたる21のツールを提供します。
トークン操作
トークン残高の取得 (
get_token_balances): 特定のブロックチェーン上のウォレットの全トークン残高を取得します通貨の取得 (
get_currencies): ブロックチェーン上で利用可能な全通貨をリストアップしますトークン価格の取得 (
get_token_price): トークンの現在のUSD価格を取得しますトークン保有者の取得 (
get_token_holders): トークンの保有者アドレスをリストアップしますトークン保有者数の取得 (
get_token_holders_count): 過去の保有者数データを取得しますトークン転送履歴の取得 (
get_token_transfers): アドレスのトークン転送履歴を取得しますトークン価格履歴の取得 (
get_token_price_history): 時系列の過去価格データを取得しますトークン価格の解説 (
explain_token_price): トークン価格がどのように算出されているかを解説します
NFT操作
所有者別NFTの取得 (
get_nfts_by_owner): ウォレットが所有する全NFTを取得しますNFTメタデータの取得 (
get_nft_metadata): 特定のNFTのメタデータ(名前、画像、特性)を取得しますNFT保有者の取得 (
get_nft_holders): NFTコレクションの全保有者を取得しますNFT転送履歴の取得 (
get_nft_transfers): NFTの転送履歴を取得します
クエリ操作
ブロックチェーン統計の取得 (
get_blockchain_stats): チェーンの統計情報(トランザクション数、ブロック時間など)を取得しますブロックデータの取得 (
get_blocks): ブロック範囲の完全なブロックデータを取得しますログの取得 (
get_logs): 過去のイベントログデータを取得しますハッシュによるトランザクション検索 (
get_transactions_by_hash): ハッシュからトランザクションを検索しますアドレスによるトランザクション検索 (
get_transactions_by_address): アドレスの全トランザクションを取得しますインタラクションの取得 (
get_interactions): ウォレットがやり取りした全チェーンをリストアップします過去のアカウント残高の取得 (
get_account_balance_historical): 過去のブロック高時点での残高を取得しますブロック別内部トランザクションの取得 (
get_internal_transactions_by_block): ブロック内の内部トランザクションを取得します親ハッシュ別内部トランザクションの取得 (
get_internal_transactions_by_parent_hash): 親トランザクションからの内部トランザクションを取得します
インストール
npm install @akki91/ankr-mcp使用方法
環境設定
ANKR APIドキュメントポータルにログインし、ANKR APIトークンを設定してください。
export ANKR_API_TOKEN=your_api_token_hereサーバーの実行
サーバーはコマンドラインから直接実行できます:
npx @akki91/ankr-mcpLLMツールでの使用
このサーバーはModel Context Protocol (MCP)を実装しており、互換性のあるAIモデルのツールプロバイダーとして使用できます。
AIモデルとの統合
MCPをサポートするAIアプリケーションにこのサーバーを統合するには、アプリのサーバー設定に以下を追加してください:
{
"mcpServers": {
"ankr-mcp": {
"command": "npx",
"args": [
"@akki91/ankr-mcp"
],
"env": {
"ANKR_API_TOKEN": "your_api_token_here"
}
}
}
}Claude DesktopへのAnkr MCPツールの統合
以下の手順に従って設定を更新し、Claude Desktop内でMCPサーバーが利用できるようにしてください。
ステップ 1: Claude Desktopの設定にアクセス
Claude Desktopを起動します。
メインメニューからSettings(設定)に移動します。
ステップ 2: 開発者設定の更新
Developer Settings(開発者設定)を開きます。
MCPサーバー定義が含まれている設定ファイルを編集します。
すでにMCPサーバーがリストされている場合は、既存のリストにAnkr MCPの設定を追加します。そうでない場合は、上記のAnkr MCPサーバー用の設定全体をコピー&ペーストしてください。
ステップ 3: Claude Desktopの再起動
Developer Settingsメニューを閉じます。
Claude Desktopを再起動して変更を適用します。
ステップ 4: 統合の確認
Claude Desktopが再起動したら、チャットプロンプトのすぐ下にあるツールアイコンをクリックします。
Ankr MCPサーバーによって提供されるツールリストが表示され、アクセス可能であることを確認します。
これらの手順に従うことで、Ankr MCP設定がClaude Desktopに統合され、インターフェースを通じて直接ツールにアクセスできるようになります。
チャットプロンプトのサンプル
Claudeや互換性のあるAIでこのMCPサーバーを使用する際のプロンプト例です:
トークンクエリ
What are the token balances for 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 on Ethereum?What's the current price of USDC on Ethereum?Show me the price history of ETH over the last 30 days.How many holders does the LINK token have on Ethereum?Show me recent token transfers for vitalik.eth on Polygon.NFTクエリ
What NFTs does 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 own?Get me the metadata for Bored Ape #1234.Who holds NFTs from the CryptoPunks collection?Show me recent NFT transfers for this wallet on Ethereum.ブロックチェーン&トランザクションクエリ
What are the current stats for Ethereum and Polygon?Which blockchains has wallet 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 interacted with?Look up transaction 0x1234abcd... and decode the logs.Show me the latest blocks on Arbitrum with transactions included.What were the internal transactions in Ethereum block 19000000?What was my wallet balance at block 17000000?開発
ソースからのビルド
# Clone the repository
git clone https://github.com/akki91/ankr-mcp.git
cd ankr-mcp
# Install dependencies
npm install
# Build the project
npm run buildテストの実行
npm testデバッグモード
このプロジェクトのデバッグはMCP Inspectorを使用してサポートされています。
npm run debugソース
このプロジェクトはこちらで作成されたサーバーリストから着想を得ています。
検証
Available Tools
1 toolget_token_balances_on_networkB
Gets all token balances for a given address on a specific network
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | The address to check token balances for | |
| network | Yes | The blockchain network (e.g., "ethereum", "base") |
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 of behavioral disclosure. It mentions 'Gets' which implies a read operation, but fails to describe critical behaviors such as rate limits, authentication requirements, error handling, or what 'all token balances' entails (e.g., pagination, format). This leaves significant gaps for an agent.
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 a single, efficient sentence that directly states the tool's purpose without any unnecessary words. It is appropriately sized and front-loaded, making it easy to parse.
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?
Given the tool's low complexity (2 simple parameters) and no output schema, the description is minimally adequate but incomplete. It lacks details on behavioral aspects and output format, which are important for a read operation with no annotations to rely on.
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?
The input schema has 100% description coverage, clearly documenting both parameters. The description adds no additional semantic context beyond what the schema provides, such as examples or constraints, so it meets the baseline for high schema coverage.
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 action ('Gets') and the resource ('all token balances for a given address on a specific network'), making the purpose specific and understandable. However, since there are no sibling tools mentioned, it cannot distinguish from alternatives, 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.
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, prerequisites, or exclusions. It simply states what the tool does without context for usage decisions.
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.
1 tool update
v1.0.0- First observed
get_token_balances_on_network
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly defined and distinct by default.
A single tool inherently has perfect naming consistency, as there are no other tools to compare it against. The name 'get_token_balances_on_network' follows a clear verb_noun pattern.
One tool is too few for a server named 'Ankr API MCP Server', which suggests a broader API scope. This minimal set severely limits functionality and likely leaves significant gaps in coverage for blockchain-related operations.
The tool surface is severely incomplete for an API server. It only provides token balances, missing essential operations like querying transactions, network status, smart contract interactions, or other common blockchain API functions, leading to dead ends for agents.
Maintenance
Related MCP Connectors
MCP server for OpenAI API (chat completions, image generation, embeddings) via AceDataCloud
MCP server giving AI agents one-connection access to crypto & DeFi data: DeFi protocol TVL, stableco
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP server connecting AI agents to non-custodial staking data across 130+ networks.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP server that connects Claude for Desktop with blockchain functionality, allowing users to check balances and send tokens on EVM and Solana chains through natural language interactions.-
- AlicenseBqualityDmaintenanceAn MCP server that enables LLMs to perform blockchain operations on the Base network through natural language commands, including wallet management, balance checking, and transaction execution.454 npm3MIT
- AlicenseAqualityFmaintenanceAn MCP server that empowers AI agents to inspect any wallet’s balance and onchain activity across major EVM chains and Solana chain.39MIT
- AlicenseBqualityDmaintenanceAn MCP server providing comprehensive access to Ethereum blockchain data across 72+ networks via Etherscan's V2 API. It enables users to check balances, track transactions, analyze smart contracts, and monitor gas prices through natural language.2415 npm1MIT