关于 🪐 MCP IPFS Server (storacha.network) 🛰️
MCP IPFS Server 是一个 Node.js MCP 服务,通过 w3 命令行工具(@web3-storage/w3cli)与 storacha.network 平台交互。它面向需要管理空间、上传下载数据和授权的 LLM 与 MCP 客户端。
主要功能
- 01封装 w3 CLI 实现 storacha.network 集成
- 02提供空间管理工具
- 03支持数据上传、列出与删除
- 04支持委托、证明与密钥管理
- 05提供账户、套餐与用量报告工具
适用场景
- 01通过 MCP 客户端上传与分享文件到 IPFS
- 02管理 storacha.network 空间与授权委托
MCP 相关
该服务向 MCP 客户端暴露一组 w3_ 前缀的工具,每个工具对应 w3 命令的调用。部分命令需要绝对文件路径,Docker 运行时需挂载宿主目录。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
🪐 MCP IPFS 服务(storacha.network)🛰️

一个 Node.js 服务,通过 w3 命令行界面(@web3-storage/w3cli)与 storacha.network 平台交互,实现了 Model Context Protocol(MCP)。
该服务通过无缝封装 w3 命令,让语言模型 🤖 和其他 MCP 客户端能够管理 storacha.network 空间、上传/下载数据、管理委托,并执行各种其他任务。
✨ 功能
- 封装
w3CLI,与 storacha.network 原生集成。 - 提供覆盖多种
w3功能的 MCP 工具:- 🔑 身份验证与 Agent:
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
- 🔑 身份验证与 Agent:
🛠️ 前置条件
- 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 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。