使用说明
项目简介
MCPilot 是一套 Model Context Protocol (MCP) 服务器,旨在使大型语言模型 (LLM) 能够安全地与区块链交互。它通过集成 MetaMask 钱包,允许用户使用自然语言安全地管理 Web3 资产和操作,无需担心私钥泄露的风险。
主要功能点
- 自然语言区块链交互:用户可以使用自然语言指令,轻松完成代币交换、跨链桥接、合约签署等复杂的区块链操作。无需编写代码,降低了 Web3 的使用门槛。
- 安全私钥管理:用户的私钥被安全地存储在 MetaMask 钱包中,MCPilot 服务器不会接触到用户的私钥,所有交易签名都在 MetaMask 钱包应用内完成,确保资产安全。
- Web2/Web3 互操作性:MCPilot 允许 LLM 同时集成 Web2 和 Web3 服务,从而实现跨平台的数据流动和智能合约交互,扩展了 LLM 的应用场景。
- 模块化 MCP 服务器套件:MCPilot 包含多个独立的 MCP 服务器,每个服务器专注于特定功能,用户可以根据需求选择性部署,例如:
- 'metamask-mcp': 提供 MetaMask 钱包交互能力。
- 'chainlist-mcp': 提供区块链网络信息查询能力。
- 'solc-mcp': 提供 Solidity 智能合约编译能力。
- 'erc20-mcp': 提供 ERC20 代币管理能力。
- 'polygon-mcp', 'celo-mcp', 'zircuit-mcp': 提供特定区块链网络的合约验证和代币信息查询能力。
安装步骤
-
克隆仓库
git clone https://github.com/Xiawpohr/mcpilot.git -
进入项目目录
cd mcpilot -
安装依赖
根据您需要使用的 MCP 服务器,进入相应的 package 目录(例如 'packages/metamask-mcp'),并运行包管理器命令安装依赖。
cd packages/metamask-mcp npm install # 或 yarn install对其他需要使用的 package 执行相同的操作。
-
配置环境变量 (可选)
部分 MCP 服务器(例如 'polygon-mcp', 'celo-mcp')可能需要 API 密钥才能访问区块链浏览器 API。如果需要使用这些服务器,请在相应的 package 目录下创建 '.env' 文件,并根据 'env.ts' 文件中的定义配置 API 密钥。例如,'packages/polygon-mcp' 需要配置 'POLYGONSCAN_API_KEY'。
服务器配置
以下 JSON 配置示例用于配置支持 MCP 协议的客户端(例如 Claude Desktop)以连接 MCPilot 服务器。您需要将 '/PATH/TO/YOUR_PROJECT' 替换为 MCPilot 项目在您本地机器上的实际路径。
{ "mcpServers": { "metamask-server": { "command": "npx", "args": [ "tsx", "/PATH/TO/YOUR_PROJECT/packages/metamask-mcp/src/index.ts" ], "comment": "连接 MetaMask 钱包,进行账户和交易管理" }, "chainlist-server": { "command": "npx", "args": [ "tsx", "/PATH/TO/YOUR_PROJECT/packages/chainlist-mcp/src/index.ts" ], "comment": "获取 Chainlist 提供的区块链网络信息" }, "solc-server": { "command": "npx", "args": [ "tsx", "/PATH/TO/YOUR_PROJECT/packages/solc-mcp/src/index.ts" ], "comment": "编译 Solidity 智能合约代码" }, "erc20-server": { "command": "npx", "args": [ "tsx", "/PATH/TO/YOUR_PROJECT/packages/erc20-mcp/src/index.ts" ], "comment": "管理 ERC20 标准代币,例如查询余额、批准和转移" }, "polygon-server": { "command": "npx", "args": [ "tsx", "/PATH/TO/YOUR_PROJECT/packages/polygon-mcp/src/index.ts" ], "comment": "在 Polygon 网络上验证智能合约" }, "celo-server": { "command": "npx", "args": [ "tsx", "/PATH/TO/YOUR_PROJECT/packages/celo-mcp/src/index.ts" ], "comment": "在 Celo 网络上验证智能合约" }, "zircuit-server": { "command": "npx", "args": [ "tsx", "/PATH/TO/YOUR_PROJECT/packages/zircuit-mcp/src/index.ts" ], "comment": "获取 Zircuit 网络上的代币列表" } } }
基本使用方法
-
启动 MCPilot 服务器
根据您需要的功能,启动相应的 MCP 服务器。例如,如果您需要使用 MetaMask 交互功能,请在 'packages/metamask-mcp' 目录下打开终端,并运行启动命令:
cd packages/metamask-mcp npx tsx src/index.ts您可以根据需要同时启动多个 MCP 服务器,以便 LLM 客户端可以访问不同的功能。
-
配置 MCP 客户端
在您的 MCP 客户端(例如 Claude Desktop)中,打开 MCP 服务器配置,并将上述 “服务器配置” JSON 代码粘贴到配置中。确保根据实际情况修改项目路径。
-
使用自然语言与区块链交互
在 MCP 客户端中,您可以使用自然语言向 LLM 发出指令,LLM 将会调用 MCPilot 服务器提供的工具来与区块链进行交互。例如:
- 询问 MetaMask 钱包地址:'我的 MetaMask 钱包地址是什么?'
- 查询 ETH 余额:'我的 ETH 余额是多少?'
- 发起代币转账:'向 0xRecipientAddress 转账 10 DAI'
- 部署智能合约:'部署一个新的 ERC20 代币,名称为 TestToken,符号为 TTK,精度为 18'
LLM 将会解析您的自然语言指令,并调用相应的 MCP 工具来执行区块链操作,并通过 MetaMask 钱包安全地完成交易签名。
信息
分类
AI与计算