域名分析服务器

一个基于Rust的域名分析服务器,提供WHOIS查询、DNS查询、域名可用性检查等8种工具,适用于域名注册和管理场景。

  • by cgarvis
  • Rust
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 cgarvis/domain-mcp

使用说明

域MCP服务器

用于域名分析和可用性检查的MCP(模型上下文协议)服务器,使用Rust使用rmcp SDK构建。

备注:本项目基于 rinadelph的mcp域,在Rust中重新实现,具有附加功能和全面测试。

特性

域MCP服务器提供8个工具用于全面的域分析:

  1. whois_lookup -使用RDAP(注册数据访问协议)和命令行回退执行WHOIS查找
  2. dns_lookup -使用异步DNS解析器对域执行DNS查找
  3. check_domain_availability -检查域是否可用于注册
  4. ssl_证书_信息 -获取域的SSL证书信息
  5. 搜索_扩展_域 -根据关键字搜索过期域名
  6. domain_age_check -检查域名的年龄
  7. bulk_domain_check -一次检查多个域的可用性
  8. get_dns_records -获取域的所有DNS记录

RDAP实施

WHOIS查找工具使用RDAP(注册数据访问协议),它提供:

  • 结构化JSON数据 而不是纯文本解析
  • 更高的可靠性 具有官方注册端点
  • 隐私合规 遵循现代数据保护标准
  • 自动回退 当RDAP失败时,切换到传统的命令行

支持的RDAP服务器包括:

  • 威瑞信(.com、.net)
  • 公共利益登记处(.org)
  • 各种ccTLD注册机构(.io、.co、.me、.tv)
  • 谷歌注册表(.app、.dev、.cloud)
  • IANA引导发现其他TLD

安装

先决条件

  • 锈蚀1.70+
  • 货物
  • whois命令行工具(用于whois查找)
  • openssl命令行工具(用于SSL证书解析)

构建

cargo build --release

用法

运行服务器

服务器使用stdio传输进行通信:

cargo run --release

MCP检验员测试

您可以使用MCP检查器测试服务器:

npx @modelcontextprotocol/inspector cargo run --release

请求示例

初始化服务器:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "initialize",
  "params": {
    "protocolVersion": "2024-11-05",
    "capabilities": {},
    "clientInfo": {
      "name": "test-client",
      "version": "1.0.0"
    }
  }
}

列出可用工具:

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/list",
  "params": {}
}

检查域可用性:

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "check_domain_availability",
    "arguments": {
      "domain": "example.com"
    }
  }
}

执行DNS查找:

{
  "jsonrpc": "2.0",
  "id": 4,
  "method": "tools/call",
  "params": {
    "name": "dns_lookup",
    "arguments": {
      "domain": "google.com"
    }
  }
}

批量域检查:

{
  "jsonrpc": "2.0",
  "id": 5,
  "method": "tools/call",
  "params": {
    "name": "bulk_domain_check",
    "arguments": {
      "domains": ["example1.com", "example2.net", "example3.org"]
    }
  }
}

建筑

服务器是使用以下方式构建的:

  • rmcp -用于实现模型上下文协议的Rust-MCP SDK
  • 东京 -异步运行时
  • 信任dns解析器 -DNS解析
  • reqwest -API调用的HTTP客户端
  • 铁锈 -TLS/SSL实现
  • 塞尔德 -序列化/反序列化

许可证

麻省理工学院