🚀 Domain Search MCP
Domain Search MCP 为 MCP 客户端提供快速、以本地优先的域名可用性检查。它可以零配置使用公共 RDAP/WHOIS 进行查询,还可以通过你控制的后端获取注册商定价信息来丰富查询结果。
最新特性
- v1.9.0+:现在开箱即用 AI 驱动的域名建议功能!无需 API 密钥 -
suggest_domains_smart 使用我们公开的微调 Qwen 7B - DPO 模型。
- 新增 Redis 分布式缓存、断路器和
/metrics 端点以实现可观测性。
本项目基于 Model Context Protocol 构建,适用于 Claude、Codex、VS Code、Cursor、Cline 等 MCP 兼容客户端。
🚀 快速开始
选项 1:使用 npx(推荐)
无需安装,直接运行:
npx -y domain-search-mcp@latest
选项 2:从源代码运行
git clone https://github.com/dorukardahan/domain-search-mcp.git
cd domain-search-mcp
npm install
npm run build
npm start
✨ 主要特性
- 多 TLD 单域名检查:可检查单个名称在多个顶级域名(TLD)中的可用性。
- 单 TLD 批量检查:可批量检查多达 100 个名称在单个 TLD 中的可用性。
- 注册商定价比较:(配置后端时可用)比较不同注册商的定价。
- 域名建议与社交账号验证:建议域名并验证社交账号的可用性。
- 高级信号检测:在
search_domain 中检测高级/拍卖信号。
📦 安装指南
选项 1:使用 npx(推荐)
npx -y domain-search-mcp@latest
选项 2:从源代码安装
git clone https://github.com/dorukardahan/domain-search-mcp.git
cd domain-search-mcp
npm install
npm run build
npm start
💻 使用示例
基础用法
search_domain("myproject", ["com", "io"])
myproject.com - available - price_first_year: null - source: rdap
myproject.io - taken - price_first_year: null - source: rdap
高级用法
curl -X POST https://your-domain/api/tools/search_domain \
-H "Content-Type: application/json" \
-d '{"domain_name":"vibecoding"}'
📚 详细文档
传输选项
stdio(默认)
适用于 Claude Desktop、Cursor、VS Code 等 MCP 客户端,使用标准输入/输出:
npx -y domain-search-mcp@latest
HTTP/SSE(ChatGPT、Web 客户端、LM Studio)
适用于 ChatGPT Actions、Web 应用和 REST API 客户端:
npx -y domain-search-mcp@latest --http
MCP_PORT=8080 npx -y domain-search-mcp@latest --http
端点说明:
/mcp - MCP 协议(POST 用于消息,GET 用于 SSE 流)
/api/tools/* - 每个工具的 REST API(与 ChatGPT Actions 兼容)
/openapi.json - OpenAPI 3.1 规范
/health - 健康检查
/metrics - 兼容 Prometheus 的指标(缓存统计、请求计数、AI 推理健康状况)
ChatGPT 自定义 GPT 集成
- 启动 HTTP 服务器(见上文)
- 通过 ngrok 暴露服务:
ngrok http 3000
- 在 ChatGPT 中创建自定义 GPT 并添加操作
- 从
https://your-ngrok-url.ngrok-free.dev/openapi.json 导入 OpenAPI 规范
- 测试工具!
工具列表
核心搜索工具
search_domain:检查单个名称在多个 TLD 中的可用性,并添加高级/拍卖信号。
bulk_search:检查多达 100 个名称在单个 TLD 中的可用性。
compare_registrars:(配置后端时可用)比较不同注册商的定价。
AI 驱动的建议工具
suggest_domains:生成域名变体(前缀/后缀/连字符)。
suggest_domains_smart:🤖 AI 驱动 使用微调 Qwen 7B - DPO 生成品牌化名称。零配置 - 立即生效!
analyze_project:扫描本地项目或 GitHub 仓库以提取上下文并建议匹配的域名。
域名投资工具
hunt_domains:查找有投资价值的域名 - 扫描 Sedo 拍卖、生成模式、计算投资分数。
expiring_domains:监控即将到期的域名(需要联合负缓存)。
实用工具
tld_info:TLD 元数据和限制信息。
check_socials:检查用户名在多个平台上的可用性。
ai_health:检查 AI 推理服务的状态(VPS Qwen、断路器、自适应并发)。
配置说明
定价后端(推荐)
设置拥有注册商密钥(Porkbun)的后端 URL。MCP 将调用该后端的 /api/quote 和 /api/compare 进行定价查询。
PRICING_API_BASE_URL=https://your-backend.example.com
PRICING_API_TOKEN=optional_bearer_token
可选的自带密钥(本地)
仅在未设置 PRICING_API_BASE_URL 时使用。
- Porkbun 密钥:
- https://porkbun.com/account/api
- https://porkbun.com/api/json/v3/documentation
- Namecheap 密钥(需要 IP 白名单):
- https://ap.www.namecheap.com/settings/tools/apiaccess/
- https://www.namecheap.com/support/api/intro/
PORKBUN_API_KEY=pk1_your_api_key
PORKBUN_API_SECRET=sk1_your_secret
NAMECHEAP_API_KEY=your_api_key
NAMECHEAP_API_USER=your_username
NAMECHEAP_CLIENT_IP=your_whitelisted_ip
Redis 分布式缓存(可选)
为了在多个 MCP 实例之间进行水平扩展,配置 Redis:
REDIS_URL=redis://:password@host:6379
如果不使用 Redis,服务器将使用内存缓存(适用于单个实例)。Redis 支持:
- 多个服务器实例之间的共享缓存
- 重启后持久化缓存
- 在负载均衡部署中提高缓存命中率
AI 推理(零配置)
AI 驱动的建议功能 (suggest_domains_smart) 开箱即用,使用我们公开的运行微调 Qwen 7B - DPO 的 VPS。无需 API 密钥!
对于自托管设置,覆盖端点:
QWEN_INFERENCE_ENDPOINT=http://your-server:8000
QWEN_API_KEY=optional_if_secured
环境变量
| 变量 |
默认值 |
描述 |
MCP_TRANSPORT |
stdio |
传输模式:stdio 或 http |
MCP_PORT |
3000 |
HTTP 服务器端口(使用 HTTP 传输时) |
MCP_HOST |
0.0.0.0 |
HTTP 服务器绑定地址 |
CORS_ORIGINS |
* |
允许的 CORS 源(逗号分隔) |
PRICING_API_BASE_URL |
- |
定价后端基础 URL |
PRICING_API_TOKEN |
- |
可选的承载令牌 |
PRICING_API_TIMEOUT_MS |
2500 |
后端请求超时时间 |
PRICING_API_MAX_QUOTES_SEARCH |
0 |
每次搜索的最大定价调用次数(0 = 无限制;受后端速率限制) |
PRICING_API_MAX_QUOTES_BULK |
0 |
每次批量搜索的最大定价调用次数(0 = 无限制;受后端速率限制) |
PRICING_API_CONCURRENCY |
4 |
定价请求并发数 |
PORKBUN_API_KEY |
- |
Porkbun API 密钥 |
PORKBUN_API_SECRET |
- |
Porkbun API 密钥 |
NAMECHEAP_API_KEY |
- |
Namecheap API 密钥 |
NAMECHEAP_API_USER |
- |
Namecheap 用户名 |
NAMECHEAP_CLIENT_IP |
- |
Namecheap IP 白名单 |
OUTPUT_FORMAT |
table |
工具输出格式:table、json 或 both |
LOG_LEVEL |
info |
日志级别 |
CACHE_TTL_AVAILABILITY |
60 |
可用性缓存的 TTL(秒) |
CACHE_TTL_PRICING |
3600 |
定价缓存的 TTL(秒) |
CACHE_TTL_SEDO |
3600 |
Sedo 拍卖源缓存的 TTL(秒) |
CACHE_TTL_AFTERMARKET_NS |
300 |
名称服务器查找缓存的 TTL(秒) |
SEDO_FEED_ENABLED |
true |
启用 Sedo 源查找以获取二手市场拍卖提示 |
SEDO_FEED_URL |
https://sedo.com/txt/auctions_us.txt |
Sedo 公共源 URL |
AFTERMARKET_NS_ENABLED |
true |
启用基于名称服务器的二手市场提示 |
AFTERMARKET_NS_TIMEOUT_MS |
1500 |
名称服务器查找超时时间(毫秒) |
REDIS_URL |
- |
用于分布式缓存的 Redis 连接 URL(例如 redis://:password@host:6379) |
QWEN_INFERENCE_ENDPOINT |
(公共 VPS) |
自托管设置时覆盖 AI 推理端点 |
QWEN_TIMEOUT_MS |
15000 |
AI 推理请求超时时间 |
QWEN_MAX_RETRIES |
2 |
AI 推理失败时的重试次数 |
输出格式
工具响应默认以 Markdown 表格 形式返回。如果你需要用于编程的原始 JSON 数据,请设置:
OUTPUT_FORMAT=json
数据来源
| 来源 |
用途 |
定价 |
| 定价 API |
定价 + 高级信息(Porkbun) |
是(后端) |
| Porkbun API |
可用性 + 定价 |
是(需密钥) |
| Namecheap API |
可用性 + 定价 |
是(需密钥) |
| RDAP |
主要可用性检查 |
否 |
| WHOIS |
备用可用性检查 |
否 |
| GoDaddy 公共端点 |
search_domain 的高级/拍卖信号 |
否 |
| Sedo 公共源 |
二手市场拍卖提示 |
否 |
定价行为
- 对于每个 可用 域名,首先尝试获取实时价格。
- 如果实时报价失败或受到速率限制,结果将回退到目录估计值,并包含
price_note。
- 在购买前,始终通过
price_check_url 验证定价。
🔧 技术细节
工作原理
可用性和定价查询有意分开处理:
- 可用性(默认):
- 主要:RDAP
- 备用:WHOIS
- GoDaddy 公共端点仅用于在
search_domain 中添加高级/拍卖信号
- 定价(可选):
- 推荐:
PRICING_API_BASE_URL(带有 Porkbun 密钥的后端)
- 可选自带密钥:仅在未配置后端时支持 Porkbun/Namecheap
这样可以保持服务器零配置,同时允许高级用户启用定价功能。
定价验证
响应中包含 price_check_url(注册商结账/搜索链接),当价格为估计值时可能包含 price_note。在购买前,始终在注册商结账页面验证最终价格。
如果检测到拍卖/高级信号,结果将包含 aftermarket 块,其中包含可用的市场页面链接。已占用的域名可能包含 Sedo 拍卖提示(公共源)和基于名称服务器的市场提示(Sedo/Dan/Afternic)。
📄 许可证
本项目许可证信息请查看 。
开发与发布
开发
npm run dev
npm test
npm run build
发布
发布流程请参考 docs/RELEASE.md。像 v1.2.24 这样的标签会通过 CI 触发 GitHub Releases 和 npm 发布。
更新日志
发布历史请查看 CHANGELOG.md。
安全注意事项
- 不要提交 API 密钥或
.mcpregistry_* 文件。
- 未设置
PRICING_API_BASE_URL(或自带密钥)时,无法获取定价信息(可用性检查仍可正常工作)。
升级指南
npx 用户
如果你使用 npx domain-search-mcp(未使用 @latest),npx 可能会缓存旧版本。
解决方法:更新 MCP 配置以使用 @latest:
"args": ["-y", "domain-search-mcp@latest"]
或者手动清除 npx 缓存:
npx clear-npx-cache
源代码/Git 用户
cd domain-search-mcp
git pull origin main
npm install
npm run build
保持更新
架构说明
详细的系统架构图请参考 docs/ARCHITECTURE.md:
- 传输层(stdio 与 HTTP/SSE)
- 工具执行流程
- 数据源瀑布式查询(RDAP → 定价 API → WHOIS)
- VPS 部署架构
- AI 建议流程
- MCP 会话生命周期
相关链接
- MCP 注册表:https://registry.modelcontextprotocol.io
- Glama 页面:https://glama.ai/mcp/servers/@dorukardahan/domain-search-mcp
- Context7 索引:https://context7.com/dorukardahan/domain-search-mcp
- 架构文档:docs/ARCHITECTURE.md
- API 参考:docs/API.md
- 配置文档:docs/CONFIGURATION.md
- 工作流程文档:docs/WORKFLOWS.md