使用说明
项目简介
Polygon MCP Server是一个基于Model Context Protocol (MCP) 构建的应用后端,它充当AI系统和Polygon区块链之间的桥梁,通过标准化的JSON-RPC接口,为AI助手提供访问和操作Polygon网络的能力。该服务器简化了区块链交互的复杂性,使AI应用能够安全、便捷地与Polygon链进行数据访问和功能调用。
主要功能点
- 钱包操作: 支持获取钱包地址、查询余额、转移资金(包括MATIC和ERC20代币),以及在Mumbai测试网上获取测试MATIC。
- 智能合约操作: 允许部署、验证智能合约,并提供预定义的合约模板(如ERC20、NFT等)。
- L2桥接操作: 支持ETH和ERC20代币在以太坊和Polygon之间的跨链桥接(存款和取款)。
- DeFi交互: 集成QuickSwap和Uniswap V3 DEX,支持代币兑换、获取报价和添加流动性;同时集成Polymarket预测市场,支持市场信息查询、下注和持仓查询。
- 交易模拟: 在链下模拟交易执行效果,预估Gas消耗,辅助用户进行安全的链上操作。
- 网络工具: 提供获取当前Gas价格和切换Polygon网络(主网/测试网)的功能。
安装步骤
-
克隆仓库或下载源代码: 从GitHub仓库 'https://github.com/Dbillionaer/polygonmcp' 克隆代码到本地或下载ZIP压缩包并解压。
-
安装依赖: 进入项目根目录 'polygonmcp',运行以下命令安装项目依赖:
npm install -
配置环境变量: 在项目根目录下创建 '.env' 文件,并根据需要配置以下环境变量:
# 网络 RPC 端点 (必填) POLYGON_MAINNET_RPC=https://polygon-rpc.com # Polygon Mainnet RPC URL POLYGON_MUMBAI_RPC=https://rpc-mumbai.maticvigil.com # Polygon Mumbai Testnet RPC URL ETHEREUM_RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_ALCHEMY_KEY # 以太坊主网 RPC URL (用于桥接功能) # API Keys (可选,但Polygonscan API Key用于合约验证) POLYGONSCAN_API_KEY=YOUR_POLYGONSCAN_API_KEY # Polygonscan API Key (用于合约验证) # 钱包私钥 (重要!生产环境请使用更安全的密钥管理方案) PRIVATE_KEY=your_private_key_here # 你的Polygon钱包私钥,用于交易签名 DEFAULT_NETWORK=mumbai # 默认网络,可选 mainnet 或 mumbai # DeFi 配置 (可选) DEFAULT_SLIPPAGE=0.5 # 默认交易滑点百分比 DEFAULT_DEADLINE_MINUTES=20 # 默认交易过期时间(分钟)注意: 请务必替换 'YOUR_ALCHEMY_KEY' 和 'YOUR_POLYGONSCAN_API_KEY' 为你自己的API Key,并将 'your_private_key_here' 替换为你的Polygon钱包私钥。在生产环境中,请使用更安全的密钥管理方案,避免直接将私钥硬编码在环境变量中。
-
启动服务器: 在项目根目录下运行以下命令启动服务器:
npm start或使用以下命令以开发模式启动,支持代码更改自动重启:
npm run dev
服务器配置 (config.json)
MCP客户端需要配置MCP服务器的启动命令和参数,以便建立连接。以下是一个典型的 'config.json' 配置示例,用于配置 Polygon MCP Server:
{ "mcpServers": { "polygon": { "command": "node", // 启动服务器的命令,这里使用 Node.js "args": ["path/to/polygon-mcp.js"], // 启动命令的参数,指向 polygon-mcp.js 文件路径 "env": { // 环境变量配置,与 .env 文件中的配置相同,但可以直接在 config.json 中配置 "POLYGON_MAINNET_RPC": "https://polygon-rpc.com", "POLYGON_MUMBAI_RPC": "https://rpc-mumbai.maticvigil.com", "ETHEREUM_RPC_URL": "https://eth-mainnet.alchemyapi.io/v2/YOUR_ALCHEMY_KEY", "POLYGONSCAN_API_KEY": "YOUR_POLYGONSCAN_API_KEY", "PRIVATE_KEY": "your_private_key_here", "DEFAULT_NETWORK": "mumbai", "DEFAULT_SLIPPAGE": "0.5", "DEFAULT_DEADLINE_MINUTES": "20" }, "disabled": false, // 是否禁用该服务器,false 表示启用 "autoApprove": [] // 自动批准的工具列表,空数组表示不自动批准任何工具 } } }
请注意:
- '"command"' 和 '"args"' 需要根据 'polygon-mcp.js' 文件在你本地文件系统中的实际路径进行调整。如果 'polygon-mcp.js' 文件位于配置文件的同级目录下,则 '"args"' 可以简化为 '["./polygon-mcp.js"]'。
- '"env"' 部分的环境变量配置与 '.env' 文件作用相同,可以根据需要选择在 '.env' 文件或 'config.json' 中配置。
- MCP客户端会根据 '"command"' 和 '"args"' 配置启动 Polygon MCP Server 进程,并通过标准输入/输出 (stdio) 与服务器进行通信。
基本使用方法
-
启动Polygon MCP Server: 按照上述步骤启动服务器。
-
配置MCP客户端: 在你的MCP客户端(例如 Claude、Cursor 等)中,配置 'config.json' 文件,添加上述服务器配置信息。
-
使用MCP客户端与Polygon链交互: 启动MCP客户端,客户端将自动连接到 Polygon MCP Server。你可以通过在MCP客户端中调用预定义的工具(例如 'polygon:get-address', 'polygon:transfer-funds', 'polygon:quickswap-tokens' 等),指示AI助手与Polygon区块链进行交互。
例如,在支持MCP协议的AI助手界面中,你可以指示助手执行以下操作:
- "我的Polygon钱包地址是什么?" (对应 'polygon:get-address' 工具)
- "查询我的USDC余额" (对应 'polygon:list-balances' 工具,可能需要指定token为USDC)
- "转0.1 MATIC给地址 0xRecipientAddress" (对应 'polygon:transfer-funds' 工具,指定token为MATIC,to地址和金额)
- "将10个MATIC兑换成USDC" (对应 'polygon:quickswap-tokens' 工具,指定fromToken为MATIC, toToken为USDC, amount为10)
AI助手会将这些自然语言指令转换为对 Polygon MCP Server 相应工具的JSON-RPC调用,服务器执行链上操作后,将结果返回给AI助手。
关键词
Polygon区块链, 区块链交互, DeFi, 智能合约, L2桥接
信息
分类
网页与API