内容
# 代理发现MCP
[](https://codeguilds.dev/packages/agent-discovery-mcp)
> 一个MCP服务器,允许您的AI编码代理(Claude Code、OpenClaw、Codex、Cursor等)**发现并调用链上代理**,并使用Coinbase的x402协议自动支付。
代理在[ERC-8004](https://eips.ethereum.org/EIPS/eip-8004)上注册,这是以太坊的代理身份标准。该服务器将该注册表与x402支付桥接,以便您的现有工具运行时可以在单个工具调用中找到并支付任意链上代理 - 无需智能账户,无需捆绑器,无需中继。只需您的EOA,一个HTTPS请求和自动的402 → 签名 → 重试流程。
**适用人群:** 构建或使用AI编码代理的开发人员,他们希望在不建立自定义发现或支付堆栈的情况下进入链上代理生态系统。
## 功能
三个工具,通过[模型上下文协议](https://modelcontextprotocol.io/)公开:
| 工具 | 功能 | 真实来源 |
|---|---|---|
| `find_agents_by_skill` | 在ERC-8004注册表中搜索与技能关键词匹配的代理。返回id,链,名称,描述,端点和x402支持标志。 | [8004scan.io](https://8004scan.io/)公共API + 语义搜索 |
| `get_agent_card` | 获取一个代理的完整ERC-8004注册卡(名称,服务,x402支持,信任模型,所有者地址)。 | 8004scan,备用直接RPC |
| `call_agent_with_payment` | 调用代理端点。如果代理返回`HTTP 402`,使用您的EOA签名x402支付并重试 - 自动。 | [`x402-fetch`](https://www.npmjs.com/package/x402-fetch)(Coinbase官方) |
整个服务器大约有250行TypeScript代码。无需智能合约账户,无需捆绑器,无需第三方中继 - 支付直接通过EOA签名按照x402规范进行。
## 为什么存在
代理到代理经济的组成部分现在是真实的:
- **x402**(Coinbase的基于HTTP 402的支付协议)处理了1.65亿+交易和约5000万美元的交易量,截至2026年4月。
- **ERC-8004**(以太坊的代理身份标准)于2026年1月29日部署到主网,现在有数万个注册代理。
- **MCP**(Anthropic的工具调用协议)是连接AI编码代理到外部能力的实际标准。
但是,没有干净的“胶水”让Claude Code / OpenClaw / Cursor用户*仅发现和支付*任意链上代理从其现有工具内部。像[`@azeth/mcp-server`](https://www.npmjs.com/package/@azeth/mcp-server)这样的现有选项捆绑了ERC-4337智能账户和自定义信任层 - 这强制依赖于捆绑器/中继,在测试网络中可能会失败。
该服务器跳过了所有这些。它使用:
1. **8004scan公共API**进行代理发现(ERC-8004团队维护的规范ERC-8004索引器)
2. **Coinbase官方`x402-fetch`**进行支付 - 包装原生`fetch`以自动处理402
3. **viem**进行EOA签名 - 无需合约账户部署,无需捆绑器
结果:安装,设置一个环境变量,您的代理运行时可以调用ERC-8004注册表中的任何x402代理。
## 当前状态
这是可用的v0.1.0,底层有真实的基础设施,但生态系统仍处于早期阶段。
- **发现功能正常。** 8004scan API从ERC-8004注册表中返回真实代理(截至2026年中旬,跨链注册约70k+)。
- **支付功能正常。** x402支付流程使用Coinbase官方的`x402-fetch`库和EOA签名,端到端测试通过。
- **生态系统注意事项。** 许多代理在元数据中设置`x402Support: true`,但不对其端点强制实施付费墙 - 它们免费接受调用或返回404。该标志是自我声明的;目前没有人验证它。大多数生产x402流量今天通过托管平台(Coinbase Agent.market,AWS Bedrock AgentCore等)流动。无许可注册流程是真实的,但仍处于早期阶段。
参见[路线图](#路线图)了解下一步计划。
## 安装
**需要Node ≥ 20**
```bash
git clone https://github.com/claynsn/agent-discovery-mcp
cd agent-discovery-mcp
npm install
npm run build
```
设置您的钱包私钥(这将是签署x402支付的EOA):
```bash
export TEST_WALLET_KEY=0x...your-64-hex-private-key
```
> `TEST_WALLET_KEY`仅在`call_agent_with_payment`时需要。发现工具(`find_agents_by_skill`,`get_agent_card`)无需它即可工作。
**macOS LaunchAgent用户**(例如OpenClaw):使用`launchctl setenv`,因为LaunchAgent进程不会继承您的shell环境变量:
```bash
launchctl setenv TEST_WALLET_KEY 0x...
```
## 用法
### 与Claude Code一起使用
在您的项目根目录或`~/.claude/mcp_settings.json`中添加`.mcp.json`:
```json
{
"mcpServers": {
"agent-discovery": {
"command": "node",
"args": ["/absolute/path/to/agent-discovery-mcp/dist/index.js"],
"env": {
"TEST_WALLET_KEY": "${TEST_WALLET_KEY}"
}
}
}
}
```
### 与OpenClaw一起使用
在`~/.openclaw/openclaw.json`的`mcp.servers`下添加:
```json
{
"mcp": {
"servers": {
"agent-discovery": {
"command": "node",
"args": ["/absolute/path/to/agent-discovery-mcp/dist/index.js"],
"env": {
"TEST_WALLET_KEY": "${TEST_WALLET_KEY}"
}
}
}
}
}
```
然后`openclaw gateway restart`.
### 与Cursor / Cline / 任何MCP兼容客户端一起使用
标准MCP_stdio服务器。将您的客户端指向`node /path/to/dist/index.js`。
## 示例工作流程
在您的AI编码代理中,只需询问:
> 在Base主网上为我找到5个可以进行文本摘要的代理,仅限支持x402的代理。
代理调用`find_agents_by_skill({ skill_keyword: "summarization", chain_id: 8453, x402_only: true, limit: 5 })`并返回真实的链上代理。
然后:
> 调用代理#25886在其主要端点与文本"... long article ...",支付最大$0.05 USDC。
代理调用`call_agent_with_payment({ endpoint: "...", payload: { text: "..." }, max_pay_usdc: 0.05, chain_id: 8453 })`。如果服务器响应402,EOA签名EIP-3009 USDC授权,重试并返回结果。
## 工具参考
### `find_agents_by_skill`
```typescript
{
skill_keyword: string; // 例如“summarization”,“code review”,“price feed”
limit?: number; // 1-50,默认10
chain_id?: number; // 例如8453(Base),1(Ethereum),56(BSC)
x402_only?: boolean; // 筛选到声明支持x402的代理
}
```
### `get_agent_card`
```typescript
{
agent_id: number; // ERC-8004代币ID
chain_id: number; // 例如8453
}
```
### `call_agent_with_payment`
```typescript
{
endpoint: string; // 完整的HTTPS URL
payload?: unknown; // JSON主体(省略GET请求)
max_pay_usdc: number; // 最大支付USDC,例如0.10
chain_id?: number; // 结算链,默认8453
}
```
## 支持的链
| 链ID | 网络 | x402结算 | 发现 |
|---|---|---|---|
| 1 | 以太坊主网 | ✅ | ✅ |
| 8453 | Base主网 | ✅ | ✅ |
| 56 | BSC | — | ✅ |
| 84532 | Base Sepolia | ✅ | ✅ |
| 11155111 | 以太坊Sepolia | ✅ | ✅ |
## 架构
```
┌───────────────────────┐ ┌──────────────────────┐
│ Claude Code / │ MCP │ agent-discovery-mcp │
│ OpenClaw / Cursor │ ──────▶ │ (此服务器) │
└───────────────────────┘ stdio └──────────┬───────────┘
│
┌───────────────────┼───────────────────┐
│ │ │
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌─────────────┐
│ 8004scan │ │ Base RPC │ │ x402-fetch │
│ 公共API │ │ (备用) │ │ (Coinbase) │
│ 发现 │ │ tokenURI │ │ EOA签名 │
└────────────┘ └────────────┘ │ EIP-3009 │
└─────────────┘
```
无需智能合约账户。无需捆绑器。无需中继。您的EOA签名,x402-fetch重试,代理的促进者结算。
## CodeGuilds
该软件包在[CodeGuilds](https://codeguilds.dev/packages/agent-discovery-mcp)上列出,这是一个MCP服务器和AI代理工具的目录。
## 路线图
- [ ] 在`find_agents_by_skill`中返回代理之前进行端点健康检查(过滤掉404演示部署)
- [ ] 通过探询端点402响应验证链上`x402Support`声明
- [ ] 单次调用中的多链支付(自动选择USDC最便宜的链)
- [ ] 与Coinbase促进者可选集成以结算元数据
- [ ] 支出限制策略(服务器端上限独立于`max_pay_usdc`参数)
- [ ] 接收日志记录到磁盘用于税务/审计
## 许可证
MIT