项目简介
本项目是一个单仓(monorepo),包含用于与 Sui 网络交互的 AI 工具集 '@suiware/ai-tools' 和一个实现 Model Context Protocol (MCP) 标准的服务器 '@suiware/mcp'。该 MCP 服务器旨在为支持 MCP 的 LLM 客户端(如某些桌面 AI 应用)提供与 Sui 区块链交互的能力,通过暴露一系列预定义的工具,使 AI 能够执行查询余额、转账、质押等操作。
主要功能点
- Sui 网络交互工具集: 提供与 Sui 区块链交互的工具,包括获取 Sui 地址、查询钱包余额、执行代币转账、代币兑换、SUI 质押和取消质押等操作。
- MCP 服务器实现: 将上述 Sui 工具封装为 MCP 标准工具,并通过 Stdio 传输协议提供服务。
- 提供 AI 后端能力: 作为 LLM 客户端的后端,允许 AI 模型通过调用这些工具,获取实时的链上信息并执行交易。
- 可插拔的工具: 工具设计为模块化,方便扩展或添加新的 Sui 交互功能。
安装步骤
- 克隆仓库:
git clone https://github.com/suiware/ai-tools.git cd ai-tools - 安装依赖: 使用包管理器安装项目依赖。
npm install # 或者 pnpm install # 或者 yarn install - 构建项目: 构建 '@suiware/mcp' 服务器包。
npm run build # 或者 pnpm build # 或者 yarn build - 配置 Sui 钱包: 服务器需要您的 Sui 钱包私钥和网络信息才能执行链上操作。在项目根目录创建 '.env' 文件,并按以下格式填写您的信息:
请确保私钥格式正确且与指定的网络兼容。SUI_PRIVATE_KEY=您的Sui钱包私钥 (格式通常为 suiprivkey...) SUI_NETWORK=mainnet 或 testnet 或 devnet 或 localnet
服务器配置 (为 MCP 客户端准备)
该服务器通常由支持 MCP 的 LLM 客户端(如某些桌面 AI 客户端)启动和管理。您需要在您的 MCP 客户端中配置该服务器的启动信息。典型的 MCP 客户端配置会包含一个 JSON 对象,指定服务器的名称、启动命令及其参数。
以下是一个示例配置结构,您需要将其添加到您 MCP 客户端的服务器配置列表中:
{ "name": "Suiware MCP Server", "command": "npm", "args": [ "run", "mcp", "--", "start", "--env-file", ".env" // 根据需要,可以在此添加其他启动参数 ], "description": "Provides tools for interacting with the Sui blockchain.", "icon": "可选:服务器图标文件路径或 URL" // 其他可能的配置项... }
- 'name': 服务器在客户端界面显示的名称。
- 'command': 用于启动服务器的可执行命令。这里使用 'npm' 命令来运行项目中定义的启动脚本。
- 'args': 传递给 'command' 的参数列表。'run', 'mcp', '--', 'start' 指示 npm 运行 'package.json' 中名为 'mcp' 的脚本(该脚本通常指向 'packages/mcp' 包的启动入口),并传递 'start' 命令及其后续参数 '--env-file .env'。'--env-file .env' 参数指示服务器读取项目根目录下的 '.env' 文件加载配置。
- 'description': 服务器的功能描述。
- 'icon': (可选) 服务器在客户端界面显示的图标。
注意: 具体的配置方式和格式取决于您使用的 MCP 客户端。请参考您客户端的文档进行配置。确保您的 MCP 客户端能够访问到克隆下来的 'ai-tools' 项目目录,以便执行 'npm run mcp -- start' 命令并找到 '.env' 文件。
基本使用方法
- 启动 MCP 服务器: 在支持 MCP 的客户端中配置好上述信息后,启动该客户端。客户端会自动根据配置启动 Suiware MCP 服务器。
- 与 AI 交互: 在客户端的聊天界面中,向 AI 模型提问或发出指令,涉及 Sui 网络的操作,例如:
- "我的 Sui 钱包余额是多少?"
- "把 10 个 SUI 转到地址 '0x...'"
- "我想质押 50 个 SUI"
- AI 调用工具: AI 模型会识别您的意图,并根据 MCP 协议发现并调用相应的 Sui 工具(如 'get-wallet-balance', 'transfer-coin', 'stake-sui' 等)。
- 获取结果: 服务器执行工具操作后,会将结果(如余额信息、交易摘要等)返回给 AI 客户端,AI 再将结果组织成自然语言回复给您。
确保服务器已正确配置 '.env' 文件中的私钥和网络信息,这是执行链上操作的前提。
信息
分类
开发者工具