Token导航 LogoToken导航TokenDH.com
MCP Dns Registry logo
浏览器工具未说明官方级别未说明来源级核验

MCP Dns Registry

MCP Server

为MCP生态系统提供基于DNS的AI代理发现服务,通过TXT记录实现组织范围的注册表管理。

工具数

2

提示词数

0

GitHub Stars

6

资源数

0
HTMLAI代理浏览器自动化

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

mariothomas

提供方

mariothomas

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

mcp dns注册表

MCP的基于DNS的发现:使用组织范围的注册表 _mcp TXT记录

![License: MIT](LICENSE) ![Paper: v1.5](paper/mcp-registry-architecture.pdf)

______________________________________________________________________

这是什么

此存储库提供了一个完整的、可部署的参考架构,用于解决中的代理发现问题 模型上下文协议(MCP) 生态系统。

核心建议很简单:组织在 _mcp.yourdomain.com 它将任何合规的AI代理指向其MCP注册表。该注册表本身就是一个完全兼容的MCP服务器——代理使用相同的方法发现它 tools/listtools/call 他们用于其他所有事情的电话。没有发现SDK。没有新的协议。没有新的基础设施。

_mcp.example.com.   IN   TXT   "v=mcp1;
  registry=https://mcp.example.com/registry;
  public=true;
  auth=https://auth.example.com/token;
  version=2026-02"

一天内部署。每月不到5美元。无需维护服务器。

______________________________________________________________________

它解决的问题

MCP定义了AI代理如何连接到工具。它没有定义代理如何发现存在哪些工具。如今,答案是手动配置——开发人员在构建时对服务器地址进行硬编码。这无法扩展。

没有发现层: n agents × m servers = n×m configuration decisions\ 使用此注册表: n agents + m servers = n+m

______________________________________________________________________

关键设计决策

1.注册表本身就是MCP服务器\ 代理不需要特殊的发现客户端。他们打电话 tools/list 在注册表上——就像其他MCP服务器一样——接收可用服务器的清单。发现不需要新的客户端行为。

2.DNS作为引导层\ 一个 _mcp TXT记录是代理人唯一需要知道的事情。仅从一个域名,它就可以发现一个组织的整个MCP生态系统。这遵循了既定的先例: _dmarc, _acme-challengeWebFinger。

3.公共和私人在一个登记处\ 随着 public=true 在DNS记录中,任何知道您的域的代理都可以发现您的公共MCP服务器——不需要中央注册表提交。通过身份验证,同一注册表可以安全地显示私有内部服务器。两者都使用相同的基础设施。

4.治理优先写入路径\ 注册表项通过Git拉取请求进行管理。每一个变化都会被归因、审查和恢复。读取路径完全无服务器;治理存在于写入路径中。

______________________________________________________________________

架构(AWS参考实施)

Agent
  │
  ├─ 1. DNS lookup: _mcp.example.com
  │       └─ Returns registry URL + auth endpoint
  │
  ├─ 2. GET token from auth endpoint
  │
  ├─ 3. POST tools/list → CloudFront → Lambda@Edge
  │       └─ Validates JWT, queries DynamoDB, returns tool manifest
  │
  └─ 4. POST tools/call (discover_servers)
          └─ Returns filtered server list based on auth status
组件服务目的
全球CDN亚马逊CloudFront边缘分发
请求处理Lambda@EdgeJSON-RPC解析、JWT验证、路由
注册表数据DynamoDB全局表服务器条目,多区域读取
二进制资产亚马逊S3+签名URL文档、清单

该架构是供应商中立的。计划使用Cloudflare Workers+KV或Azure Front Door+Cosmos DB的等效实现——请参阅 alternative-implementations/infrastructure/.

______________________________________________________________________

仓库结构

mcp-dns-registry/
├── CLIENT.md                        # curl examples for querying the live registry
├── CONTRIBUTING.md                  # Contribution guidelines
├── DNS.md                           # DNS record format and operator setup guide
├── LICENSE                          # MIT licence
├── README.md                        # This file
├── SPEC.md                          # The _mcp DNS convention specification
├── health.json                      # Registry health check response
├── alternative-implementations/     # Community implementations (Cloudflare, Azure, GCP)
├── infrastructure/                  # Infrastructure-as-code
│   ├── aws/                         # CloudFormation template
│   ├── azure/                       # Azure deployment (community contributions welcome)
│   ├── gcp/                         # GCP deployment (community contributions welcome)
│   └── terraform/                   # Terraform for AWS, Azure, and GCP
├── mcp-function/                    # Lambda@Edge function source
│   ├── index.js                     # Handler — JSON-RPC routing, JWT validation, DynamoDB
│   ├── package.json
│   └── package-lock.json
└── paper/                           # Architecture paper
    ├── mcp-registry-architecture.md
    ├── mcp-registry-architecture.docx
    ├── mcp-registry-architecture.pdf
    └── versions/                    # Archived prior versions

______________________________________________________________________

快速开始

1.发布您的DNS记录

# Route 53 example — see DNS.md for all providers
_mcp.yourdomain.com.  300  IN  TXT  "v=mcp1;registry=https://mcp.yourdomain.com/registry;public=true;auth=https://auth.yourdomain.com/token;version=2026-02"

2.部署注册表

# Deploy using the CloudFormation template
aws cloudformation deploy \
  --template-file infrastructure/aws/cloudformation.yaml \
  --stack-name mcp-registry \
  --parameter-overrides \
      DomainName=mcp.yourdomain.com \
      CertificateArn=arn:aws:acm:us-east-1:YOUR_ACCOUNT:certificate/YOUR_CERT \
  --capabilities CAPABILITY_NAMED_IAM

然后从以下位置部署Lambda函数源 mcp-function/:

cd mcp-function
zip -r ../registry-function.zip .
aws lambda update-function-code \
  --function-name mcp-registry \
  --zip-file fileb://../registry-function.zip

3.添加您的第一台服务器

aws dynamodb put-item \
  --table-name mcp-registry \
  --item '{
    "server_id":    { "S": "my-first-server" },
    "name":         { "S": "My First MCP Server" },
    "url":          { "S": "https://mcp.yourdomain.com/my-first-server" },
    "public":       { "BOOL": true },
    "capabilities": { "SS": ["data", "search"] },
    "deprecated":   { "BOOL": false }
  }' \
  --region us-east-1

4.测试一下

客户.md 关于实时参考实现的完整curl示例。

curl -X POST https://mcp.mariothomas.com/registry \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"discover_servers","arguments":{}}}'

______________________________________________________________________

实时参考实施

工作实施可在以下网址获得 mcp.mariothomas.com:

  • DNS记录: _mcp.mariothomas.com
  • 注册表: https://mcp.mariothomas.com/registry
  • 文章服务器: https://mcp.mariothomas.com/articles (公众)
  • 位置服务器: https://mcp.mariothomas.com/locations (公众)
  • 文档服务器: https://mcp.mariothomas.com/documents (私有--需要身份验证)

客户.md 对于完整的卷曲示例。

______________________________________________________________________

与其他工作的关系

提案它的作用关系
MCP官方登记处MCP服务器的全球公共目录互补——两者都使用。全球搜索官方登记处;这是基于域的引导
1959年9月每台服务器DNS验证原语可堆叠--使用SEP#1959验证通过此注册表发现的各个服务器
南达联邦目录协议不同层——NANDA可以通过以下方式引导 _mcp 记录

______________________________________________________________________

纸张

当前的架构论文(v1.4)可在 paper/ 以及at mariothomas.com。以前的版本存档于 .

______________________________________________________________________

更新日志

版本日期状态更改摘要
1.02026年2月25日已发布首次发布。
1.12026年2月27日已发布增加了第2.3节——本提案无法解决的问题——澄清 _mcp DNS记录仅用于发现,身份验证、授权和工具功能枚举明确超出了DNS层的范围。
1.22026年2月28日已发布扩展了第7.4节,以解决注册表级内容过滤作为快速注入攻击的缓解措施。增加了第10.6节——代理对等体发现:一个自然扩展。添加了致谢部分。
1.32026年3月2日已发布扩展了第8.1节,将基于路径和基于子域的注册表URL模式作为同样兼容的实现方法进行记录,并对每种模式进行权衡。相应地更新了SPEC.md。
1.42026年3月2日已发布更新了第8.1节,以反映mcp.mariothomas.com的参考实现使用基于路径的路由。更新了第8.4节和第8.5节,以使用正确的文件名 index.js 和处理程序 index.handler.用现在时态重写第12节,以反映实时部署,确认GitHub存储库URL,并注意参考实现中使用的基于路径的路由模式。
1.4.12026年3月3日已发布添加了版权声明。没有内容更改。
1.52026年3月19日已发布扩展了第2.3节,将显式的255字节DNS TXT记录约束作为指针而非容器设计决策的硬技术基础。在5.4节DynamoDB模式中添加了版本字段,用于注册表项的语义版本控制,并附有将其与protocol_version区分开来的字段描述。增加了第5.7节——读取路径:审计跟踪——明确指出CloudFront和Lambda@Edge日志提供了每个代理访问的可查询记录。添加了第7.5节——大型注册表中的上下文窗口约束——指出这是一个已知的限制,并建议积极使用capability_filter、简洁的服务器条目和大规模分页。致谢已更新,以反映Cole Johnston的反馈。

______________________________________________________________________

贡献

欢迎投稿,特别是替代云实现、其他语言的客户端库以及对DNS约定本身的反馈。

贡献.md 作为指导方针。

______________________________________________________________________

作者

马里奥·托马斯\ AWS应用人工智能和新兴技术战略主管\ 特许董事兼董事学会会员\ mariothomas.com · mario@mariothomas.com

______________________________________________________________________

许可证

麻省理工学院——见 许可证.

目录标签

目录标签

HTMLAI代理浏览器自动化本地部署DNS发现MCP协议服务注册无服务器架构

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP