使用说明
项目简介
本项目 'mcp-ipfs-server' 是一个基于 Model Context Protocol (MCP) 构建的后端服务器,专注于提供与 IPFS (InterPlanetary File System) 网络进行交互的功能。通过此服务器,LLM 客户端可以方便地利用 IPFS 的分布式存储能力,实现文件的上传、下载、固定和目录列表等操作。
主要功能点
- 文件上传 (upload-file): 允许用户将本地文件上传到 IPFS 网络,并返回文件的 CID (内容标识符)。
- 文件下载 (get-file): 根据文件的 CID 从 IPFS 网络检索文件内容。
- 文件固定 (pin-file): 将文件固定在 IPFS 节点上,确保文件持久化存储,防止被垃圾回收。
- 目录列表 (list-folder): 列出 IPFS 目录 (通过 CID 标识) 下的文件和子目录信息。
- 取消固定 (unpin-file): 从 IPFS 节点取消固定文件,允许 IPFS 进行垃圾回收。
安装步骤
- 安装 Node.js 和 npm: 确保你的系统已安装 Node.js 和 npm (Node.js 包管理器)。
- 克隆仓库: 'git clone https://github.com/AleksanStark/mcp-ipfs-server'
- 进入仓库目录: 'cd mcp-ipfs-server'
- 安装依赖: 'npm install'
- 构建项目: 'npm run build'
服务器配置
MCP 客户端需要以下配置信息来连接 'mcp-ipfs-server' 服务器。请将以下 JSON 配置添加到你的 MCP 客户端配置中:
{ "serverName": "mcp-ipfs-server", // 服务器名称,与 capabilities.name 保持一致 "command": "node", // 启动服务器的命令,这里使用 node "args": [ // 启动命令的参数 "/Absolute/Path/to/build/index.js" // index.js 文件的绝对路径,请替换为实际路径 ] }
注意:
- 请将 '/Absolute/Path/to/build/index.js' 替换为 'mcp-ipfs-server' 项目 'build/index.js' 文件的绝对路径。例如,如果你的项目位于 '/home/user/mcp-ipfs-server',则路径可能为 '/home/user/mcp-ipfs-server/build/index.js'。
- 确保 MCP 客户端能够访问到 'node' 命令和 'index.js' 文件。
基本使用方法
-
启动服务器: 在 'mcp-ipfs-server' 仓库目录下,按照 README.md 中的说明,使用 'node /Absolute/Path/to/build/index.js' 命令启动服务器。服务器将通过 stdio (标准输入输出) 与 MCP 客户端通信。
-
配置 MCP 客户端: 将上述服务器配置 JSON 添加到你的 MCP 客户端配置中。
-
使用 MCP 客户端调用工具: 通过 MCP 客户端,你可以调用以下工具来管理 IPFS 文件:
- 'upload-file': 上传文件,需要提供文件路径 'filePath'。
- 'get-file': 下载文件,需要提供文件 CID 'cid'。
- 'pin-file': 固定文件,需要提供文件 CID 'cid'。
- 'list-folder': 列出目录内容,需要提供目录 CID 'cid'。
- 'unpin-file': 取消固定文件,需要提供文件 CID 'cid'。
具体的工具调用方式和参数传递方法,请参考你的 MCP 客户端的使用文档。
示例:使用 'upload-file' 工具
假设你要使用 'upload-file' 工具上传本地文件 '/path/to/your/file.txt',你需要在 MCP 客户端中构造一个调用 'upload-file' 工具的请求,并传入参数 'filePath: "/path/to/your/file.txt"'。服务器会将文件上传到 IPFS 并返回文件的 CID。
信息
分类
数据库与文件