使用说明
x402 + ERC-8004 MCP Server
一个集成了 x402 支付协议 和 ERC-8004 AI Agent 标准 的 Model Context Protocol (MCP) 服务器。
✨ 新特性:ERC-8004 AI Agent 身份和声誉管理
现已支持 ERC-8004 标准,实现 AI Agent 的去中心化身份注册、声誉管理和可发现性!
🎯 核心功能:
- 🆔 链上身份 - AI Agent 在区块链上拥有可验证的唯一身份
- ⭐ 声誉系统 - 基于真实交互的去中心化评分机制
- 🔍 智能搜索 - 通过 The Graph 索引,快速发现优质 Agents
- 💰 支付集成 - 高级功能使用 x402 协议收费
- 📊 数据分析 - 完整的 Agent 统计和趋势分析
📖 ERC-8004 集成完整指南 - 详细的使用教程和变现路径
🚀 快速部署 HTTP API 服务器
新功能! 现在支持 HTTP API 服务器,可被 x402scan 索引和发现。
一键部署到 Vercel(免费)
或按照详细指南部署:
📖 部署检查清单 - 一步步部署指南(5分钟完成)
📖 快速部署指南 - 网页界面部署(无需命令行)
部署后您将获得:
- ✅ 免费的生产环境 API 服务器
- ✅ 5 个区块链数据 API 端点
- ✅ HTTP 402 支付协议支持
- ✅ 在 x402scan 上可被发现
- ✅ 自动 HTTPS 和全球 CDN
什么是 x402?
x402 是一个开放的互联网原生支付标准,基于 HTTP 402 状态码构建。它允许:
- 🚀 即时支付 - 以互联网速度进行交易
- 🔐 无账户访问 - 无需注册或个人信息
- ⛓️ 多链支持 - 支持以太坊、Base、Polygon 等
- 🤖 AI 原生 - 专为机器对机器支付设计
- 💸 零协议费 - 仅收取区块链网络费用
功能特性
该 MCP 服务器提供以下工具:
x402 支付工具
1. verify_payment
验证 x402 支付签名并检查支付是否有效。
参数:
payment_signature(string, 必需): x402 支付签名resource_path(string, 必需): 正在访问的资源路径expected_amount(string, 可选): 预期支付金额
返回: 支付验证结果,包括交易哈希、支付者地址、金额和时间戳。
2. create_payment_request
创建带有 402 Payment Required 响应的 x402 支付请求。
参数:
resource_path(string, 必需): 需要支付的资源路径amount(string, 必需): 所需支付金额currency(string, 可选): 货币或代币符号(默认:ETH)description(string, 必需): 付费资源描述networks(array, 可选): 支持的区块链网络(默认:['base', 'ethereum'])
返回: 包含支付详情和使用说明的 402 响应结构。
3. check_payment_status
检查 x402 支付交易的状态。
参数:
transaction_hash(string, 必需): 区块链交易哈希network(string, 可选): 区块链网络(默认:base)
返回: 支付状态,包括确认状态、区块号和确认数。
4. list_payment_configs
列出所有已配置的支付端点及其要求。
返回: 所有支付配置的列表。
ERC-8004 AI Agent 工具
5. erc8004_register_agent
在链上注册新的 AI Agent,获得去中心化身份。
参数:
name(string, 必需): Agent 名称description(string, 必需): Agent 描述capabilities(array, 必需): Agent 能力列表apiEndpoint(string, 可选): API 端点 URLtags(array, 可选): 分类标签
返回: Agent ID 和交易哈希
6. erc8004_search_agents
搜索和发现 AI Agents(支持关键词、标签、能力、评分筛选)。
参数:
keyword(string, 可选): 搜索关键词tags(array, 可选): 标签筛选capabilities(array, 可选): 能力筛选minRating(number, 可选): 最低评分(0-5)limit(number, 可选): 结果数量(默认 20)
返回: 符合条件的 Agent 列表
7. erc8004_get_agent
获取指定 Agent 的详细信息(包括声誉数据)。
参数:
agentId(string, 必需): Agent ID
返回: Agent 完整信息
8. erc8004_submit_feedback
为 Agent 提交评分和反馈。
参数:
agentId(string, 必需): Agent IDrating(number, 必需): 评分 1-5 星comment(string, 必需): 评论内容
返回: Feedback ID 和交易哈希
9. erc8004_get_trending
获取热门/趋势 AI Agents。
参数:
limit(number, 可选): 结果数量(默认 10)
返回: 热门 Agent 列表
10. erc8004_get_stats
获取平台统计数据(总 Agents 数、总反馈数、平均评分等)。
返回: 平台统计信息
安装
前置要求
- Node.js 18+
- npm 或 yarn
步骤
- 克隆或下载此项目:
cd x402-mcp-server
- 安装依赖:
npm install
- 配置环境变量:
cp .env.example .env
# 编辑 .env 文件,填入你的配置
- 构建项目:
npm run build
配置
环境变量
在 .env 文件中配置以下变量:
# 钱包私钥(用于签署交易)
X402_WALLET_PRIVATE_KEY=your_private_key_here
# RPC URLs
X402_RPC_URL=https://mainnet.base.org
X402_ETH_RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY
# 支付接收地址
X402_BASE_ADDRESS=0xYourBaseAddressHere
X402_ETH_ADDRESS=0xYourEthereumAddressHere
Claude Desktop 配置
在 Claude Desktop 中配置此 MCP 服务器,编辑配置文件:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
添加以下配置:
{
"mcpServers": {
"x402-payment": {
"command": "node",
"args": [
"/absolute/path/to/x402-mcp-server/dist/index.js"
],
"env": {
"X402_WALLET_PRIVATE_KEY": "your_private_key",
"X402_RPC_URL": "https://mainnet.base.org",
"X402_BASE_ADDRESS": "0xYourAddress"
}
}
}
}
使用示例
创建支付请求
// 通过 MCP 调用
{
"tool": "create_payment_request",
"arguments": {
"resource_path": "/api/premium-data",
"amount": "0.001",
"currency": "ETH",
"description": "Premium API access",
"networks": ["base", "ethereum"]
}
}
验证支付
// 通过 MCP 调用
{
"tool": "verify_payment",
"arguments": {
"payment_signature": "0x...",
"resource_path": "/api/premium-data",
"expected_amount": "0.001"
}
}
检查支付状态
// 通过 MCP 调用
{
"tool": "check_payment_status",
"arguments": {
"transaction_hash": "0x123abc...",
"network": "base"
}
}
开发
运行开发模式
npm run dev
构建生产版本
npm run build
运行服务器
npm start
工作原理
-
支付请求流程:
- 服务器检测到需要支付的资源访问
- 返回 HTTP 402 状态码和支付要求
- 客户端收到支付详情(金额、网络、地址等)
-
支付验证流程:
- 客户端创建并签署区块链交易
- 将支付签名发送给服务器
- 服务器验证链上交易
- 验证通过后授予资源访问权限
-
状态检查:
- 查询区块链确认交易状态
- 返回确认数和区块信息
安全注意事项
- ⚠️ 永远不要 将私钥提交到版本控制系统
- 🔐 使用环境变量存储敏感信息
- 🛡️ 在生产环境中使用专用的支付钱包
- 🔍 始终验证支付金额和接收地址
- 📊 记录所有支付交易以便审计
资源
许可证
MIT License
贡献
欢迎提交 Issue 和 Pull Request!
支持
如遇到问题,请:
- 查看 x402 文档
- 在 GitHub 上提交 Issue
- 加入 Discord 社区
由 Claude Code 生成 🤖