使用说明
Web3 MCP服务器
该项目实现了一个模型上下文协议(MCP)服务器,该服务器使用 我知道 图书馆。它支持查询余额、交易、区块、ENS等。
项目结构
- 服务器/:主要重点。包含MCP服务器实现和所有核心逻辑。因此,下面的命令和说明将使用其目录:
cd server. - 客户/:用于测试MCP服务器。您可以使用此文件夹运行测试脚本或在开发过程中与服务器交互。要运行客户端,请运行:
cd client; npm i && npm start
特性
- 获取ETH和ERC-20代币余额
- 查询交易和区块详细信息
- ENS名称解析和反向查找
- 调用只读合约方法
- 支持主网、Goerli、Sepolia和本地(Hardhat)网络
环境设置
- 安装依赖项:
npm install - 创建一个
.env文件 (可选,用于环境变量):CHAIN_ENV=mainnet # or goerli, sepolia, local- 如果未设置,则默认为
mainnet. - 对于
local,确保节点正在运行http://127.0.0.1:8545.
- 如果未设置,则默认为
运行服务器
npm start
交换网络
设置 CHAIN_ENV 环境变量为以下之一:
mainnetgoerlisepolialocal
例子:
CHAIN_ENV=goerli npm start
测试MCP服务器
您可以使用以下工具测试MCP服务器 mcp-cli 工具:
npx @wong2/mcp-cli npm start
这允许您列出工具,调用它们,并交互式地检查服务器的功能。
将MCP服务器与Claude和Cursor IDE集成
Claude和Cursor IDE都允许您通过其设置添加自定义MCP服务器。这两种工具的过程几乎相同:
添加MCP服务器的步骤
-
构建您的MCP服务器:
npm run build这将服务器编译为
server/build目录。 -
打开工具中的设置:
- 光标IDE: 首选
Settings>MCP. - 克劳德(桌面): 首选
Settings>Developer>Edit Config.
- 光标IDE: 首选
-
添加新的全局MCP服务器:
- 您可以通过UI或直接编辑JSON配置文件来完成此操作。
- JSON配置示例:替换
{ "mcpServers": { "web3-tools": { "command": "node", "args": ["$GITHUB_REPO/server/build/index.js"] } } }$GITHUB_REPO带有本地存储库目录的路径。
-
保存配置,必要时重新启动/重新加载工具。
-
要更新工具,请执行以下操作:
- 始终运行
npm run build更改服务器代码后。 - 您可能需要手动刷新工具或重新启动MCP服务器以使更改生效。
- 始终运行
注意:随着这些工具的发展,UI和配置文件的位置可能会发生变化。有关最新详细信息,请参阅他们的文档。
后续步骤
- [x] 为testnet/local添加写入(事务)支持
- [x] 使用Vitest通过单元和集成(e2e)测试确保全面演示(
npm test运行所有测试) - []将代码重构为模块以提高可维护性
- []添加有关RPC使用的基本速率限制或警告