实体发现协议

EDP是一种协议标准,用于AI代理发现哪个MCP服务于特定实体。

  • by edp-protocol
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 edp-protocol/entity-discovery-protocol

使用说明

实体发现协议(EDP)

AI代理发现哪些MCP为给定实体服务的标准。

问题

模型上下文协议(MCP)使AI代理能够与服务交互。但还有一层缺失:

  • MCP答案:“我如何与此服务器通信?”
  • 服务器卡(SEP-1649)应答:“此MCP服务器能做什么?”
  • 实体发现协议答案:“哪些MCP服务于这项业务?”

餐厅不运行自己的MCP服务器——它 代表们 第三方MCP提供商(预订、交付、付款)将由AI代理采取行动。当代理想要帮助用户在“Acme Bistro”预订餐桌时,它需要发现这家餐厅将预订委托给预订提供商。

User: "Book a table at Acme Bistro Paris for tonight"
Agent: → Which MCP handles Acme Bistro?
       → Query EDP Registry: resolve("acme-bistro.com")
       → Response: Use mcp.booking-provider.com with entity_id "acme-paris-001"
       → Agent calls Booking Provider MCP → Booking complete

运作原理

1.实体卡

实体发布 entity-card.json 声明他们委托给哪些MCP:

https://acme-bistro.com/.well-known/entity-card.json
{
  "schema_version": "0.2.0",
  "domain": "acme-bistro.com",
  "entities": [
    {
      "name": "Acme Bistro Paris",
      "path": "/paris",
      "location": { "city": "Paris", "country": "FR" },
      "mcps": [
        {
          "provider": "booking-provider",
          "endpoint": "https://mcp.booking-provider.com",
          "entity_id": "acme-paris-001",
          "capabilities": ["reservations", "menu", "availability"]
        }
      ]
    },
    {
      "name": "Acme Bistro Lyon",
      "path": "/lyon",
      "location": { "city": "Lyon", "country": "FR" },
      "mcps": [
        {
          "provider": "booking-provider",
          "endpoint": "https://mcp.booking-provider.com",
          "entity_id": "acme-lyon-001"
        }
      ]
    }
  ]
}

实体卡支持每个域的多个实体(例如,具有多个位置的连锁餐厅)。每个实体都声明自己的MCP关联。业务元数据有意地最小化——注册表丰富了来自外部源的条目。

2.电子数据处理登记处

注册表抓取实体卡并为代理提供解析API。它们使用来自外部源(Schema.org、Google business等)的业务元数据来丰富条目。

3.验证级别

级别 来源 信任
0 仅提供程序注册 信任提供程序
1 仅限实体卡 信托业务
2 双方匹配 双方同意

级别2可以可选地包括加密签名(JWT),用于敏感用例(支付、法律)中的不可否认性。

规格

📄 完整规格(SPEC.md)

本规范包括:

  • 实体卡格式和模式
  • MCP提供商注册
  • 验证级别和加密证明
  • 解析API端点
  • 安全注意事项

模式

例子

与MCP的关系

EDP是一种 互补的 MCP协议,诞生于 MCP社区的讨论它解决了MCP故意不覆盖的一层:实体到MCP的发现。

这不是分叉或竞争——MCP定义了通信,EDP定义了发现。我们欢迎MCP社区的反馈,如果有兴趣,我们愿意进行整合。

┌─────────────────────────────────────────────────────────────────┐
│  MCP (Model Context Protocol)                                   │
│  "How agents communicate with servers"                          │
└─────────────────────────────────────────────────────────────────┘
                              │
                              │ describes servers via
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│  Server Cards (SEP-1649)                                        │
│  "What an MCP server can do"                                    │
└─────────────────────────────────────────────────────────────────┘
                              │
                              │ discovered via
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│  Entity Discovery Protocol (EDP)                                │
│  "Which MCP serves this business"                               │
└─────────────────────────────────────────────────────────────────┘

实现

EDP是一种协议规范。要使用它,您需要:

  • 注册表:为实体建立索引并提供解析API
  • MCP提供商:登记其服务实体
  • 实体:在其域上发布实体卡

看 docs/implementations-guide.md 为实施提供指导。

如果您已经实施了EDP,请打开一个PR在此处添加您的实施。

贡献

我们欢迎捐款!看 贡献.md 作为指导方针。

许可证

MIT许可证——见 许可证

链接