项目简介
本项目提供了一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为大型语言模型 (LLM) 客户端提供与 Oraichain 区块链交互的能力。它将 Oraichain 的核心功能封装成可被 LLM 调用的工具,支持资产查询、转账、质押等操作,使 AI 智能体能够理解并执行链上任务。
主要功能点
- 资产查询与管理: 查看钱包余额、查询质押委托信息。
- 链上交易执行: 支持代币转账、质押委托、解除质押、验证人佣金提取等操作。
- 交易签名与广播: 提供工具用于生成交易签名文档(供客户端签名)或直接使用内置签名器进行签名并广播交易。
- 验证人信息: 获取单个或全部 Oraichain 验证人的详细信息(如佣金)。
- 自动复投: 使用内置签名器自动领取质押奖励并重新进行质押。
- 事务状态查询: 根据交易哈希查询链上交易执行状态。
- 多传输协议: 支持 Stdio 和 SSE (Server-Sent Events) 两种通信协议与 MCP 客户端交互。
安装步骤
- 安装 Node.js: 确保您的系统已安装 Node.js (v18 或更高版本)。可以访问 Node.js 官方网站 下载安装 LTS 版本。安装后请验证版本:
node --version npm --version - 安装 pnpm: 使用 npm 全局安装 pnpm (v9.0.0 或更高版本):
安装后验证版本:npm install -g pnpm
有关其他安装方法,请参考 pnpm 安装指南。pnpm --version - 克隆仓库: 克隆 Oraichain MCP 服务器的 GitHub 仓库:
git clone https://github.com/oraichain/orai-mcp.git cd orai-mcp - 安装依赖: 在仓库根目录运行 pnpm 安装所有项目依赖:
pnpm install - 构建项目: 构建整个项目:
pnpm build
服务器配置 (供 MCP 客户端使用)
本 MCP 服务器需要由 MCP 客户端启动和管理。以下是 MCP 客户端(例如 Claude Desktop)通常需要的配置信息示例(JSON 格式),用于告诉客户端如何启动并连接到此服务器:
{ "mcpServers": { "oraichain-mcp": { // 给服务器实例起一个名称 "command": "npx", // 启动服务器进程的命令 "args": ["-y", "@oraichain/mcp-server"], // 传递给命令的参数,这里使用 npx 运行已发布的 npm 包 // "args": ["node", "path/to/your/cloned/repo/orai-mcp/packages/mcp-server/build/index.js"], // 或者直接运行构建后的 JS 文件 (Stdio 协议) // "args": ["node", "path/to/your/cloned/repo/orai-mcp/packages/mcp-server/build/sseIndex.js"], // 或者运行构建后的 SSE 服务器 JS 文件 (SSE 协议,需要额外的服务器如 HyperExpress) "env": { // 可选:设置服务器进程的环境变量 "RPC_URL": "https://rpc.orai.io", // Oraichain RPC 节点的 URL "MNEMONIC": "your mnemonic phrase here" // 可选:如果需要签名功能,提供助记词 (请谨慎保管) } // 其他可能的客户端配置,如协议类型 (protocol), 地址 (address), 端口 (port) 等,取决于具体的 MCP 客户端实现和服务器启动方式 (例如,SSE 协议需要客户端知道服务器监听的地址和端口) } } }
请注意:上述 JSON 仅为配置 结构 示例,实际配置方式取决于您使用的 MCP 客户端软件。客户端通过 'command' 和 'args' 启动服务器进程(对于 Stdio 协议),或通过网络地址连接(对于 SSE/WebSocket 协议)。'env' 部分的环境变量用于配置 MCP 服务器的运行时行为,例如连接到哪个区块链节点。
基本使用方法
MCP 服务器本身是一个后端服务,通常由 MCP 客户端(如支持 MCP 的 AI 桌面应用或命令行客户端)启动和连接。
- 配置客户端: 根据您的 MCP 客户端的文档,添加上述配置信息,指向您构建好的 Oraichain MCP 服务器的可执行文件 ('packages/mcp-server/build/index.js' 用于 Stdio,或启动 'packages/mcp-server/build/sseIndex.js' 并配置客户端连接到相应的 HTTP 地址/端口用于 SSE)。
- 启动客户端: 启动您的 MCP 客户端。客户端将根据配置自动启动 MCP 服务器进程(Stdio 模式)或尝试连接到已运行的服务器(SSE/WebSocket 模式)。
- 通过 LLM 调用工具: 在 MCP 客户端中与 LLM 交互时,如果 LLM 识别出用户意图需要执行 Oraichain 相关的操作(例如查询余额、转账),并且 LLM 配置允许调用外部工具,LLM 就会通过 MCP 协议向服务器发送工具调用请求。
- 查看结果: MCP 服务器执行工具操作后,会将结果通过 MCP 协议返回给客户端,客户端通常会将结果呈现给用户或返回给 LLM 进行后续处理。
直接从命令行启动服务器(例如 'node packages/mcp-server/build/index.js')主要用于开发和测试。在生产环境中,建议通过 MCP 客户端的推荐方式进行配置和启动。
信息
分类
商业系统