MCP Ethers Wallet

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides API key-based access to Ethereum networks, serving as a node provider for blockchain interactions.

  • Enables comprehensive interaction with Ethereum networks, including querying blockchain data, managing wallets, sending transactions, and interacting with smart contracts.

  • Utilizes Ethers.js v6 as the core library for blockchain interactions, providing standardized interfaces for wallet management, smart contract interaction, and transaction handling.

MCP Ethersウォレット

Ethers.js v6を使用してEthereumウォレットおよびネットワークとやり取りするためのモデルコンテキストプロトコルサーバー。このサーバーは、LLMにEthereumネットワーク、スマートコントラクト、ウォレットとやり取りするための標準化されたインターフェースを提供します。

概要

MCP Ethers Wallet サーバーはモデルコンテキストプロトコル仕様を実装し、LLM に次のツールを提供します。

  • 複数のネットワークにわたるブロックチェーンデータのクエリ
  • スマートコントラクトと対話する
  • ウォレット操作の管理
  • ENS名を解決する
  • 取引を処理する
  • ガス料金の見積もり

インストール

npm install mcp-ethers-wallet

クイックスタート

サーバーの起動

import { startServer } from 'mcp-ethers-wallet'; startServer().catch((error) => { console.error('Failed to start server:', error); process.exit(1); });

Claude Desktopでの使用

  1. Claude Desktopをインストールする
  2. 次の構成で新しい MCP サーバーを追加します。
    "ethers": { "command": "node", "args": [ "/path-to-mcp-ethers-wallet/build/src/index.js" ], "env": { "ALCHEMY_API_KEY": "<<your alchemy api key>>" } }
  3. ツールはClaudeとの会話で利用できるようになります

MCP Inspectorによるテスト

  1. MCP Inspector をインストールします。
    npm install -g @modelcontextprotocol/inspector
  2. サーバーを起動します。
    npm start
  3. 別のターミナルで、インスペクターを実行します。
    mcp-inspector
  4. ツールを操作するには、ブラウザでhttp://localhost:5173を開いてください。

利用可能なツール

ネットワーク情報

  • getSupportedNetworks : サポートされているすべてのネットワークとその構成のリストを取得します。
  • getBlockNumber : ネットワークの現在のブロック番号を取得します
  • getBlockDetails : 特定のブロックの詳細情報を取得する
  • getGasPrice : 現在のガス価格を取得する
  • getFeeData : 基本料金や優先料金を含む詳細な料金データを取得します。

ウォレット操作

  • checkWalletExists : ウォレットが設定されているかどうかを確認する(秘密鍵を公開せずに)
  • getWalletBalance : ウォレットのネイティブトークン残高を取得する
  • getWalletTransactionCount : ウォレットから送信されたトランザクションの数を取得する
  • getERC20Balance : ウォレットのERC20トークンの残高を取得する

トランザクション管理

  • getTransactionDetails : トランザクションの詳細情報を取得する
  • sendTransaction : ネイティブトークントランザクションを送信する
  • sendTransactionWithOptions : カスタムオプション(ガス、ノンスなど)を指定してトランザクションを送信する
  • getTransactionsByBlock : 特定のブロック内のすべてのトランザクションを取得する

スマートコントラクトの相互作用

  • contractCall : コントラクト書き込みメソッドを実行する
  • contractCallView : コントラクト読み取りメソッドを実行する
  • getContractCode : デプロイされたコントラクトのバイトコードを取得する

ENSオペレーション

  • lookupAddress : ENS名をアドレスに解決する
  • resolveName : アドレスをENS名に解決する

ネットワークサポート

サーバーは、以下を含む複数のネットワークをサポートします。

  • イーサリアムメインネット
  • ポリゴン PoS
  • 仲裁
  • 楽観
  • ベース
  • さらに…

サポートされているネットワークの完全なリストを取得するには、 getSupportedNetworksツールを使用してください。

構成

サーバーは環境変数を使用して設定できます。

  • ALCHEMY_API_KEY : ネットワークアクセス用のAlchemy APIキー
  • PRIVATE_KEY : トランザクション署名用の秘密鍵(オプション)
  • DEFAULT_NETWORK : 使用するデフォルトのネットワーク(デフォルトは「mainnet」)

エラー処理

サーバーは、一般的な問題に関する詳細なエラー メッセージを提供します。

  • 無効なネットワーク名またはRPC URL
  • チェーンIDの不一致
  • 契約のやり取りの失敗
  • 取引エラー
  • ネットワーク接続の問題

発達

# Install dependencies npm install # Run tests npm test # Start in development mode npm run dev # Build npm run build

貢献

問題やプルリクエストは GitHub で歓迎します。

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。

著者

デニソン・バートラム ( dennison@tally.xyz )

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

LLM に、Ethereum ネットワークとの対話、ウォレットの管理、ブロックチェーン データのクエリ、標準化されたインターフェースを介したスマート コントラクト操作の実行機能を提供するモデル コンテキスト プロトコル サーバー。

  1. Overview
    1. Installation
      1. Quick Start
        1. Starting the Server
        2. Using with Claude Desktop
        3. Testing with MCP Inspector
      2. Available Tools
        1. Network Information
        2. Wallet Operations
        3. Transaction Management
        4. Smart Contract Interaction
        5. ENS Operations
      3. Network Support
        1. Configuration
          1. Error Handling
            1. Development
              1. Contributing
                1. License
                  1. Author
                    ID: j75jbdup5m