local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
ベースMCPサーバー 🔵
Claude Desktop や Cursor などの AI アプリケーションにオンチェーン ツールを提供し、Base Network や Coinbase API と対話できるようにする Model Context Protocol (MCP) サーバー。
概要
この MCP サーバーは、Base 上であらゆることを実行するためのツールを提供することで、あらゆる MCP クライアントの機能を拡張します。
- ウォレットアドレスを取得する
- ウォレット残高を一覧表示する
- ウォレット間で資金を移動
- スマートコントラクトをデプロイする
- オンチェーン融資のためにMorpho Vaultと連携
- 契約関数を呼び出す
- Coinbase経由のオンランプ資金
- ERC20トークンを管理する
- NFT(ERC721およびERC1155)の一覧表示と転送
- USDCでOpenRouterクレジットを購入する
サーバーは、Base Developer Tools とAgentKitを活用して Base と対話します。
3Pプロトコル、ツール、データソースによるベースMCPの拡張
Base MCPは拡張性を重視して設計されており、独自のサードパーティ製プロトコル、ツール、データソースを追加できます。このセクションでは、Base MCPサーバーを新しい機能で拡張する方法の概要を説明します。
新しいツールの追加
Base MCP サーバーに新しいツールを追加する場合は、次の手順に従います。
src/tools
ディレクトリにツール用の新しいディレクトリを作成します。- 既存のパターンに従ってツールを実装します。
index.ts
: ツールの定義とエクスポートschemas.ts
: ツールの入力スキーマを定義するhandlers.ts
: ツールの機能を実装する
src/tools/index.ts
の利用可能なツールのリストにツールを追加します。- README.mdにツールのドキュメントを追加します
- ツールの使用方法の例をexamples.mdに追加します。
- ツールのテストを書く
プロジェクト構造
ベース MCP サーバーは、ツールに関して次の構造に従います。
ツール開発のベストプラクティス
Base MCP 用の新しいツールを開発する場合:
- 既存のコードスタイルとパターンに従う
- ツールの目的が明確で焦点が絞られていることを確認する
- 包括的な入力検証を提供する
- 詳細なエラー処理を含める
- 徹底したドキュメントを書く
- ツールの使い方を示す例を追加します
- ツールのテストを含める
新しいツールやプロトコルの追加など、Base MCP への貢献に関する詳細については、 CONTRIBUTING.mdファイルを参照してください。
前提条件
- Node.js (v16 以上)
- npmまたはyarn
- Coinbase API 認証情報 (API キー名と秘密鍵)
- ウォレットシードフレーズ
- Coinbase プロジェクト ID (オンランプ機能用)
- Alchemy API キー(NFT 機能に必要)
- オプション: OpenRouter API キー (OpenRouter クレジットの購入用)
インストール
オプション1: npmからインストールする(推奨)
パッケージをインストールしたら、次のコマンドでクライアントを構成できます。
オプション2: ソースからインストールする
- このリポジトリをクローンします:Copy
- 依存関係をインストールします:Copy
- プロジェクトをビルドします。Copy
- オプションで、グローバルにリンクします。Copy
構成
資格情報を使用して.env
ファイルを作成します。
テスト
MCP サーバーをテストして、正しく動作していることを確認します。
このスクリプトは、接続と利用可能なツールをテストして、MCP サーバーが正しく動作していることを確認します。
例
Claude を介して Base MCP ツールと対話する方法の詳細な例については、 examples.mdファイルを参照してください。
Claude Desktopとの統合
この MCP サーバーを Claude Desktop に追加するには:
- 次の場所で Claude Desktop 構成ファイルを作成または編集します。
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
Claude デスクトップ アプリから「Claude > 設定 > 開発者 > 構成の編集」に移動すると、このファイルに簡単にアクセスできます。
- 次の構成を追加します。Copy
- 変更を有効にするには、Claude Desktop を再起動してください。
利用可能なツール
住所取得
ウォレットのアドレスを取得します。
クロードへのクエリの例:
「私のウォレットアドレスは何ですか?」
リスト残高
ウォレットの残高をすべて一覧表示します。
クロードへのクエリの例:
「ウォレットの残高を見せてください。」
送金資金
ウォレットから別のアドレスに資金を転送します。
パラメータ:
destination
: 送金先のアドレスassetId
: 転送する資産IDamount
: 送金する資金の金額
クロードへのクエリの例:
「0.01 ETHを0x1234567890abcdef1234567890abcdef12345678に転送します。」
デプロイ契約
スマート コントラクトをブロックチェーンにデプロイします。
パラメータ:
constructorArgs
: コントラクトコンストラクタの引数contractName
: デプロイするコントラクトの名前solidityInputJson
: コントラクトソースと設定を含むSolidityコンパイラのJSON入力solidityVersion
: solidityコンパイラのバージョン
クロードへのクエリの例:
「シンプルな ERC20 トークン コントラクトをデプロイしてください。」
アドレスの評判を確認する
アドレスの評判を確認します。
パラメータ:
address
: 確認するEthereumアドレス
クロードへのクエリの例:
「0x1234567890abcdef1234567890abcdef12345678 の評判はどうですか?」
get_morpho_vaults
Morpho 上の特定のアセットのボールトを取得します。
パラメータ:
assetSymbol
: ボールトをフィルタリングする資産シンボル(オプション)
クロードへのクエリの例:
「USDC で利用可能な Morpho Vault を表示してください。」
コール契約
ブロックチェーン上のコントラクト関数を呼び出します。
パラメータ:
contractAddress
: 呼び出すコントラクトのアドレスfunctionName
: 呼び出す関数の名前functionArgs
: 関数に渡す引数abi
: 契約のABIvalue
: トランザクションで送信するETHの値(オプション)
クロードへのクエリの例:
「0x1234567890abcdef1234567890abcdef12345678 のコントラクトの balanceOf 関数を呼び出します。」
オンランプアセットを取得する
特定の国/区分でオンランプに使用できる資産を取得します。
パラメータ:
country
: 購入ユーザーの居住国を表す ISO 3166-1 2桁の国コード文字列subdivision
: ISO 3166-2 2桁の国区分コード(米国の場合は必須)
クロードへのクエリの例:
「米国、特にニューヨークでオンランプできる資産は何ですか?」
オンランプ
Coinbase 経由で資金をオンランプするための URL を取得します。
パラメータ:
amountUsd
: オンランプする資金の額assetId
: オンランプする資産ID
クロードへのクエリの例:
「100ドル相当のETHをオンランプしたい。」
erc20残高
ERC20トークンの残高を取得します。
パラメータ:
contractAddress
: ERC20コントラクトのアドレス
クロードへのクエリの例:
「0x1234567890abcdef1234567890abcdef12345678 のトークンの残高はいくらですか?」
erc20_転送
ERC20トークンを別のアドレスに転送します。
パラメータ:
contractAddress
: ERC20コントラクトのアドレスtoAddress
: 受信者のアドレスamount
: 転送するトークンの量
クロードへのクエリの例:
「10 USDCを0x1234567890abcdef1234567890abcdef12345678に転送します。」
リスト_nfts
特定のアドレスが所有する NFT を一覧表示します。
パラメータ:
ownerAddress
: リストするNFTの所有者のアドレスlimit
: 返されるNFTの最大数(デフォルト: 50)
クロードへのクエリの例:
「0x89A93a48C6Ef8085B9d07e46AaA96DFDeC717040 が所有する NFT を表示してください。」
転送_nft
NFTを別のアドレスに転送します。ERC721とERC1155の両方の規格をサポートします。
パラメータ:
contractAddress
: NFTコントラクトのアドレスtokenId
: 転送するNFTのトークンIDtoAddress
: 受信者のアドレスamount
: 転送する金額(ERC1155のみ使用、デフォルト: 1)
クロードへのクエリの例:
「契約番号0x3F06FcF75f45F1bb61D56D68fA7b3F32763AA15c、トークンID 56090175025510453004781233574040052668718235229192064098345825090519343038548のNFTを0x1234567890abcdef1234567890abcdef12345678に転送してください。」
オープンルータークレジットを購入する
USDC で OpenRouter クレジットを購入します。
パラメータ:
amountUsd
: 購入するクレジットの量(USD)
クロードへのクエリの例:
「20 ドル相当の OpenRouter クレジットを購入してください。」
セキュリティに関する考慮事項
- 設定ファイルには機密情報(APIキーやシードフレーズなど)が含まれています。適切に保護され、共有されていないことを確認してください。
- 機密情報をハードコーディングする代わりに、環境変数または安全な資格情報マネージャーの使用を検討してください。
- 資金を送金したり契約を展開したりする際には、これらの操作はブロックチェーン上では元に戻せないため、注意してください。
- オンランプ機能を使用する場合は、安全な接続であることを確認してください。
- 特に資金を送金する場合やクレジットを購入する場合は、確認する前にすべての取引の詳細を確認してください。
トラブルシューティング
問題が発生した場合:
- Coinbase APIの認証情報が正しいことを確認してください
- シードフレーズが有効であることを確認する
- 正しいネットワーク(ベースメインネット)に接続していることを確認してください
- Claude Desktopのログでエラーメッセージを確認してください
ライセンス
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
Base MCP への貢献に関する詳細なガイドラインは次のとおりです。
- バグの報告
- 機能強化の提案
- 開発セットアップ
- コーディング標準
- 新しいツール、プロトコル、データ ソースの追加(上記のBase MCP の拡張セクションも参照)
- テスト要件
- ドキュメント標準
包括的なCONTRIBUTING.mdガイドを参照してください。
基本的な貢献手順:
- リポジトリをフォークする
- 機能ブランチを作成します(
git checkout -b feature/amazing-feature
) - 変更をコミットします (
git commit -m 'Add some amazing feature'
) - ブランチにプッシュする (
git push origin feature/amazing-feature
) - プルリクエストを開く
コードが既存のスタイルに従っており、適切なテストが含まれていることを確認してください。
This server cannot be installed
Claude AI が Base ブロックチェーンおよび Coinbase API と対話するためのオンチェーン ツールを提供し、ウォレットの管理、資金の送金、スマート コントラクトの展開を可能にします。
- Overview
- Extending Base MCP with 3P Protocols, Tools, and Data Sources
- Prerequisites
- Installation
- Configuration
- Testing
- Examples
- Integration with Claude Desktop
- Available Tools
- Security Considerations
- Troubleshooting
- License
- Contributing