用途
MCP IPFS Server(storacha.network)是一个 Node.js 服务器,实现了 Model Context Protocol (MCP),用于通过 w3 命令行界面(@web3-storage/w3cli)与 storacha.network 平台交互。它让语言模型和其他 MCP 客户端能够管理 storacha.network 空间、上传/下载数据、管理委托,并执行多种其他任务,方式是无缝包装 w3 命令。
主要能力
该服务器提供了覆盖 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、Upload、Index、Access Claim、Filecoin Info 管理
- 💳 账户与计费:w3_plan_get、w3_coupon_create、w3_usage_report
使用方式
前提条件
- Node.js:版本 22.0.0 或更高(node -v)。
- w3 CLI:服务器直接执行 w3 命令。确保 @web3-storage/w3cli 已全局安装并配置: npm install -g @web3-storage/w3cli w3 login your-email@example.com # 遵循邮件验证步骤
- 环境变量:w3_login 工具需要将 W3_LOGIN_EMAIL 环境变量设置为与 w3 login 相同的电子邮件。
与 MCP 客户端配合使用
该服务器可与任何兼容 MCP 的客户端一起使用。您需要配置客户端以连接到此服务器。
示例:NPX(推荐用于简单的本地使用) 此方式假设已满足 npm 和前提条件。
示例:Docker 首先构建镜像(参见构建部分)或使用预构建的镜像 alexbakers/mcp-ipfs。
若干 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)。
构建
克隆仓库并安装依赖。 构建 TypeScript 代码。 随后可以直接运行服务器。 或者发布它(如果您有权限)。 构建 Docker 镜像。
适用场景
适用于需要通过语言模型或 MCP 客户端管理 storacha.network 空间、上传下载数据、管理委托、处理密钥令牌、以及进行账户与计费等操作的场景。尤其适合希望将 storacha.network 的 w3 功能集成到自动化工作流或 AI 应用中的开发者。
限制
- w3_space_create 必须手动运行,因为存在交互式提示。
- 部分命令需要绝对文件系统路径,Docker 使用时需正确挂载目录。
- 需要预先安装并配置 w3 CLI,并设置 W3_LOGIN_EMAIL 环境变量。
- 许可证:MIT License,详见 LICENSE 文件。