🪐 MCP IPFS サーバー (storacha.network) 🛰️

w3コマンドライン インターフェイス ( @web3-storage/w3cli ) を介してstoracha.networkプラットフォームと対話するためのModel Context Protocol (MCP)を実装する Node.js サーバー。
このサーバーは、言語モデル 🤖 やその他の MCP クライアントが storacha.network スペースを管理し、データをアップロード/ダウンロードし、委任を管理し、 w3コマンドをシームレスにラップすることでさまざまな他のタスクを実行できるようにします。
✨ 特徴
storacha.network とのネイティブ統合のために
w3CLI をラップします。幅広い
w3機能をカバーする MCP ツールを提供します。🔑認証とエージェント:
w3_login、w3_reset、w3_account_ls(認証チェック用)📦スペース管理:
w3_space_ls、w3_space_use、w3_space_info、w3_space_add、w3_space_provision(注:w3_space_create対話型プロンプトのため手動で実行する必要があります)💾データ管理:
w3_up、w3_ls、w3_rm🔗共有:
w3_open(w3s.link URL を生成)🤝委任と証明:
w3_delegation_create、w3_delegation_ls、w3_delegation_revoke、w3_proof_add、w3_proof_ls🔐キーとトークン:
w3_key_create、w3_bridge_generate_tokens⚙️高度なストレージ ( Blob、CAR、アップロード、インデックス、アクセス要求、Filecoin 情報管理
💳アカウントと請求:
w3_plan_get、w3_coupon_create、w3_usage_report
Related MCP server: Deskaid
🛠️ 前提条件
**Node.js:**バージョン 22.0.0 以上 (
node -v)。**
w3CLI:**サーバーはw3コマンドを直接実行します。@web3-storage/w3cliがグローバルにインストールされ、設定されていることを確認してください。npm install -g @web3-storage/w3cli w3 login <your-email@example.com> # Follow email verification steps環境変数:
w3_loginツールでは、W3_LOGIN_EMAIL環境変数をw3 loginに使用するのと同じ電子メールに設定する必要があります。
🏗️ プロジェクト構造
コードベースは次のように構成されています。
src/
├── index.ts # Main server entry point, MCP setup, request routing
├── schemas.ts # Zod schemas defining input arguments for each tool
├── tool_handlers.ts # Implementation logic for each MCP tool
├── utils.ts # Helper functions (e.g., running w3 commands, parsing JSON)
└── utils/
└── logger.ts # Basic logger configuration🚀 MCP クライアントでの使用
このサーバーは、MCP互換のクライアントであればどれでも使用できます。このサーバーに接続するには、クライアントを設定する必要があります。
例: NPX (単純なローカル使用に推奨)
これは、 npmと前提条件が満たされていることを前提としています。
{
"mcpServers": {
"ipfs": {
"command": "npx",
"args": ["-y", "mcp-ipfs"],
"env": {
"W3_LOGIN_EMAIL": "your-email@example.com"
}
}
}
}例: Docker
最初にイメージをビルドするか (ビルド セクションを参照)、事前にビルドされたイメージalexbakers/mcp-ipfsを使用します。
{
"mcpServers": {
"mcp-ipfs": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-v",
"/path/to/your/project:/path/to/your/project",
"-e",
"W3_LOGIN_EMAIL",
"alexbakers/mcp-ipfs"
],
"env": {
"W3_LOGIN_EMAIL": "your-email@example.com"
}
}
}
}📝 パスに関する注意:
いくつかのw3コマンドでは絶対ファイルシステム パスが必要です (例: w3_up 、 w3_delegation_create --output 、 w3_proof_add 、 w3_can_blob_add 、 w3_can_store_add )。
**NPX:**ホスト マシンからの絶対パスを指定します。
Docker: コンテナ内の絶対パスを指定します。ホストからファイルを操作する(アップロードなど)場合は、
-vフラグ(例:-v /Users/me/project:/Users/me/project)を使用して関連するホストディレクトリをコンテナにマウントし、ツール引数でコンテナパス(例:/Users/me/project/my_file.txt)を使用する必要があります。
📦 ビルド
リポジトリをクローンし、依存関係をインストールします。
git clone https://github.com/alexbakers/mcp-ipfs.git
cd mcp-ipfs
npm installTypeScript コードをビルドします。
npm run buildその後、サーバーを直接実行できます。
# Ensure W3_LOGIN_EMAIL is set in your environment
export W3_LOGIN_EMAIL="your-email@example.com"
node dist/index.jsまたは公開します(権利がある場合)。
npm publish🐳 Dockerビルド
Docker イメージをビルドします。
# Build locally (replace with your username/repo and desired tag)
docker build -t alexbakers/mcp-ipfs .📜 ライセンス
このMCPサーバーはMITライセンスに基づいてライセンスされています。詳細はLICENSEファイルをご覧ください。