Skip to main content
Glama
akki91
by akki91

MCP Badge

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-mcp

LLMツールでの使用

このサーバーは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の設定にアクセス

  1. Claude Desktopを起動します。

  2. メインメニューからSettings(設定)に移動します。

ステップ 2: 開発者設定の更新

  1. Developer Settings(開発者設定)を開きます。

  2. MCPサーバー定義が含まれている設定ファイルを編集します。

  3. すでにMCPサーバーがリストされている場合は、既存のリストにAnkr MCPの設定を追加します。そうでない場合は、上記のAnkr MCPサーバー用の設定全体をコピー&ペーストしてください。

ステップ 3: Claude Desktopの再起動

  1. Developer Settingsメニューを閉じます。

  2. Claude Desktopを再起動して変更を適用します。

ステップ 4: 統合の確認

  1. Claude Desktopが再起動したら、チャットプロンプトのすぐ下にあるツールアイコンをクリックします。

  2. 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 tool
get_token_balances_on_networkB

Gets all token balances for a given address on a specific network

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesThe address to check token balances for
networkYesThe blockchain network (e.g., "ethereum", "base")

TDQS

B3.1/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 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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

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, 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. 1 tool updatev1.0.0
    • First observedget_token_balances_on_network

TDQS

B3.2/5.0

Scored across 1 tool

Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count2/5

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.

Completeness1/5

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

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers