mcpField
E
ENS MCP Server

ENS MCP Server

ローカル
github.com/JustaName-id金融データ841 週間前に更新

ENS MCP Server について

AI クライアントから Ethereum Name Service(ENS)のデータを照会する MCP サーバーです。名前解決、レコード、利用可否、サブドメイン、履歴、登録価格を扱います。

主な機能

  1. 01名前解決とアドレスからの逆引き
  2. 02ENS テキストレコードと全レコードの取得
  3. 03名前の利用可否と所有者の確認
  4. 04サブドメインと名前の履歴の一覧
  5. 05登録価格の確認

活用シーン

  1. 01ENS 名に対応する Ethereum アドレスの特定
  2. 02名前のレコード、所有権、サブドメインの調査
  3. 03登録前の利用可否や費用の確認

MCP 対応

名前解決、レコード、利用可否、履歴、価格など、ENS の照会・登録関連ツールを MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"ens": {
"command": "npx",
"args": [
"-y",
"mcp-server-ens"
]
}
}
}
起動コマンドnpx -y mcp-server-ens

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmmcp-server-ens

ツール

8

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
namestringはい解決する ENS 名(例:'vitalik.eth')

詳細

ENS MCP サーバー

Ethereum Name Service(ENS)用の MCP サーバーです。Claude が ENS システムと連携して、名前の解決、空き状況の確認、レコードの取得などを行えます。

npm パッケージ:https://www.npmjs.com/package/mcp-server-ens

ツール

resolve-name

ENS 名を Ethereum アドレスに解決します

  • 必須の入力:
    • name(文字列):解決する ENS 名(例:'vitalik.eth')
  • 戻り値: 対応する Ethereum アドレス、またはエラーメッセージ
reverse-lookup

Ethereum アドレスに対応する ENS 名を取得します

  • 必須の入力:
    • address(文字列):検索する Ethereum アドレス
  • 戻り値: 対応する ENS 名、または名前が見つからなかったことを示す情報
get-text-record

ENS 名のテキストレコードを取得します

  • 必須の入力:
    • name(文字列):照会する ENS 名
    • key(文字列):検索するレコードキー(例:'email'、'url'、'avatar'、'description'、'twitter' など)
  • 戻り値: 指定されたテキストレコードの値、またはレコードが見つからなかったことを示す情報
check-availability

ENS 名が登録可能かどうかを確認します

  • 必須の入力:
    • name(文字列):確認する ENS 名
  • 戻り値: 登録可能かどうかと、登録済みの場合は所有者情報
get-all-records

ENS 名について取得可能なすべての情報を取得します

  • 必須の入力:
    • name(文字列):照会する ENS 名
  • 戻り値: リゾルバーアドレス、テキストレコード、アドレス、コンテンツハッシュ、所有権、有効期限などの包括的な情報
get-subdomains

ENS 名のサブドメインを取得します

  • 必須の入力:
    • name(文字列):サブドメインを照会する ENS 名
  • 戻り値: 所有者情報を含むサブドメインの一覧
get-name-history

ENS 名の履歴を取得します

  • 必須の入力:
    • name(文字列):履歴を確認する ENS 名
  • 戻り値: 移転、リゾルバーの変更、登録イベントなど、名前に関連する過去のイベント
get-registration-price

ENS 名の登録価格を取得します

  • 必須の入力:
    • name(文字列):価格を確認する ENS 名
  • 任意の入力:
    • duration(数値、デフォルト:1):登録期間(年)
  • 戻り値: 基本価格、プレミアム、合計額を含む登録価格の内訳

セットアップ

前提条件
  • Node.js(v16 以降)
  • npm または yarn
  • Ethereum RPC プロバイダー(パブリックまたはプライベート)へのアクセス
インストール
  1. リポジトリをクローンするか、新しいプロジェクトを作成します:
git clone https://github.com/JustaName-id/ens-mcp-server
  1. 依存関係をインストールします:
npm i
  1. Ethereum プロバイダーを設定します: プロジェクトのルートに .env ファイルを作成し、次の内容を記述します(任意):
PROVIDER_URL=https://your-provider-url.com,https://your-backup-provider.com

プロバイダーを指定しない場合、サーバーは次のデフォルト値を使用します:

Claude Desktop での使用

次の内容を claude_desktop_config.json に追加します:

npx を使用する場合
{
  "mcpServers": {
    "ens": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-ens"
      ],
      "env": {
        "PROVIDER_URL": "https://your-provider-url.com,https://your-backup-provider.com"
      }
    }
  }
}
ローカルスクリプトを使用する場合
{
  "mcpServers": {
    "ens": {
      "command": "node",
      "args": [
        "/path/to/your/server.js"
      ],
      "env": {
        "PROVIDER_URL": "https://your-provider-url.com,https://your-backup-provider.com"
      }
    }
  }
}

Claude Code での使用

claude mcp add ens -- npx -y mcp-server-ens

カスタムプロバイダーを使用する場合:

claude mcp add ens -e PROVIDER_URL="https://your-provider-url.com" -- npx -y mcp-server-ens

接続を確認します:

claude mcp list

エラー処理

このサーバーは、次のようなさまざまな状況に対応する堅牢なエラー処理を実装しています:

  • Ethereum プロバイダーへの接続時のネットワークエラー
  • 無効な ENS 名または Ethereum アドレス
  • ENS 固有のエラー
  • 一般的な運用エラー

すべてのエラーは、デバッグに必要な技術的詳細を保持しながら、ユーザーにわかりやすいメッセージに正規化されます。

公開

npm パッケージとして公開するには:

npm publish --access public

トラブルシューティング

エラーが発生した場合:

  • Ethereum プロバイダーが動作しており、アクセス可能であることを確認してください
  • 照会する ENS 名が正しい形式であることを確認してください
  • ENS ライブラリの最新バージョンを使用していることを確認してください
  • PROVIDER_URL 環境変数で複数のプロバイダーをカンマ区切りで指定してみてください

ライセンス

この MCP サーバーは MIT License の下でライセンスされています。MIT License の条項に従う限り、このソフトウェアを自由に使用、変更、配布できます。詳しくは、プロジェクトリポジトリの LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。