🪐 MCP IPFS Server (storacha.network) 🛰️ について
MCP IPFS Server は、w3 コマンドライン (@web3-storage/w3cli) をラップして storacha.network プラットフォームと連携する Node.js 製の MCP サーバーです。スペース、データ、委任を管理する LLM や MCP クライアントを対象としています。
主な機能
- 01storacha.network 連携のための w3 CLI ラッパー
- 02スペースの一覧表示・切り替えツール
- 03データのアップロード・一覧・削除ツール
- 04委任・証明・キー管理ツール
- 05アカウント、プラン、利用状況レポートツール
活用シーン
- 01MCP クライアントからの IPFS へのファイルアップロードと共有
- 02storacha.network のスペースと委任の管理
MCP 対応
w3_ で始まる一連のツールを MCP クライアントに公開し、それぞれが w3 コマンドの呼び出しに対応します。一部のコマンドは絶対パスを必要とし、Docker 実行時はホストディレクトリのマウントが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🪐 MCP IPFS サーバー(storacha.network)🛰️

Model Context Protocol (MCP)を実装した Node.js サーバーです。storacha.networkプラットフォームと、w3コマンドラインインターフェース(@web3-storage/w3cli)を介して連携します。
このサーバーを使うと、言語モデル🤖やその他の MCP クライアントが、w3コマンドをシームレスにラップすることで、storacha.network のスペースの管理、データのアップロード/ダウンロード、委任の管理、その他さまざまなタスクを実行できます。
✨ 機能
w3CLI をラップし、storacha.network とネイティブに連携します。- 幅広い
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 - ⚙️ 高度なストレージ(
w3 can ...): Blob、CAR、アップロード、インデックス、アクセスクレーム、Filecoin 情報の管理 - 💳 アカウントと請求:
w3_plan_get、w3_coupon_create、w3_usage_report
- 🔑 認証とエージェント:
🛠️ 前提条件
- Node.js: バージョン 22.0.0 以降(
node -v)。 w3CLI: このサーバーはw3コマンドを直接実行します。@web3-storage/w3cliがグローバルにインストールされ、設定されていることを確認してください。npm install -g @web3-storage/w3cli w3 login <[email protected]> # 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": "[email protected]"
}
}
}
}
例: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": "[email protected]"
}
}
}
}
📝 パスに関する注意:
複数の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 install
TypeScript コードをビルドします。
npm run build
その後、サーバーを直接実行できます。
# Ensure W3_LOGIN_EMAIL is set in your environment
export W3_LOGIN_EMAIL="[email protected]"
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ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。