域名搜索MCP
](https://www.npmjs.com/package/domain-search-mcp) ](https://www.npmjs.com/package/domain-search-mcp)  ](https://www.npmjs.com/package/domain-search-mcp)   
MCP客户端的快速、本地优先域可用性检查。使用公共RDAP/WHOIS进行零配置,并可选择通过您控制的后端使用注册商定价来丰富结果。
🆕 v1.10.0:GoDaddy公共端点集成!增强型回退链(RDAP→ GoDaddy→ WHOIS),具有高级/拍卖域名检测功能。断路器模式确保了弹性。
🤖 v1.9.0+:AI驱动的域名建议开箱即用!不需要API密钥- suggest_domains_smart 使用我们的公共微调Qwen 7B-DPO模型。另外:Redis分布式缓存和 /metrics 可观察性端点。
建立在 模型上下文协议 适用于Claude、Codex、VS Code、Cursor、Cline和其他MCP兼容客户端。
特性
| 特性 | 描述 |
|---|---|
| 🔍 多TLD搜索 | 检查.com、.io、.dev、.ai和500多个TLD中的一个名称 |
| 📦 批量检查 | 在一次通话中验证多达100个域名 |
| 💎 高级检测 | 通过GoDaddy识别高级和拍卖域名 |
| 🤖 AI建议 | 使用微调的Qwen 7B-DPO生成品牌名称 |
| 💰 价格比较 | 比较Porkbun和Namecheap的价格 |
| 🌐 社交手柄检查 | 验证GitHub、Twitter等上的用户名可用性。 |
| 🔌 双重运输 | 通过stdio(Claude)或HTTP/SSE(ChatGPT操作)工作 |
| ⚡ 零配置 | 立即工作-不需要API密钥即可使用 |
它做什么
- 检查多个TLD中的单个名称。
- 一个TLD最多可批量检查100个名称。
- 比较注册商定价(配置时使用后端)。
- 建议姓名并验证社交句柄。
- 检测溢价/拍卖信号
search_domain.
运作原理
可用性和定价被有意分开:
Availability Chain (zero-config):
┌─────────┐ ┌─────────┐ ┌─────────┐
│ RDAP │ ──► │ GoDaddy │ ──► │ WHOIS │
│ (fast) │ │(premium)│ │(fallback│
└─────────┘ └─────────┘ └─────────┘- 可用性 (默认情况下,不需要密钥):
- RDAP:主要来源-快速、无限制的公共注册表数据 - GoDaddy:二级-增加溢价/拍卖检测(30要求/分钟,断路器保护) - WHOIS:边缘案例的最后退路
- 定价 (可选):
- 推荐: PRICING_API_BASE_URL (后端带有Porkbun密钥) - 可选BYOK:仅当后端未配置时才使用Porkbun/Namecheap
这使服务器保持零配置,同时让高级用户启用定价。
定价验证
回应包括 price_check_url (注册商结账/搜索链接),可能包括 price_note 当估算价格时。始终在注册商处核实最终价格 购买前的结账页面。
如果检测到拍卖/溢价信号,结果包括 aftermarket 块状 链接到可用的市场页面。被拿走的域名可能包括Sedo拍卖 提示(公共提要)和基于名称服务器的市场提示(Sedo/Dan/Aftenic)。
快速开始
选项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运输选项
stdio(默认)
对于Claude Desktop、Cursor、VS Code等MCP客户端,使用stdin/stdout:
npx -y domain-search-mcp@latestHTTP/SSE(ChatGPT、Web客户端、LM Studio)
对于ChatGPT操作、web应用程序和REST API客户端:
# Start HTTP server on port 3000
npx -y domain-search-mcp@latest --http
# Or with custom port
MCP_PORT=8080 npx -y domain-search-mcp@latest --http终点:
/mcp-MCP协议(POST用于消息,GET用于SSE流)/api/tools/*-每个工具的REST API(与ChatGPT操作兼容)/openapi.json-OpenAPI 3.1规范/health-健康检查/metrics-Prometheus兼容指标(缓存统计数据、请求计数、AI推理健康状况)
ChatGPT自定义GPT集成
- 启动HTTP服务器(见上文)
- 通过ngrok曝光:
ngrok http 3000 - 在ChatGPT中,创建自定义GPT并添加操作
- 从导入OpenAPI规范
https://your-ngrok-url.ngrok-free.dev/openapi.json - 测试工具!
对于生产部署,使用带有SSL的永久域而不是ngrok。
REST API示例:
curl -X POST https://your-domain/api/tools/search_domain \
-H "Content-Type: application/json" \
-d '{"domain_name":"vibecoding"}'MCP客户端配置
克劳德代码 (.mcp.json 在项目根目录中):
{
"mcpServers": {
"domain-search": {
"type": "stdio",
"command": "npx",
"args": ["-y", "domain-search-mcp@latest"]
}
}
}克劳德桌面版 (claude_desktop_config.json):
{
"mcpServers": {
"domain-search": {
"command": "npx",
"args": ["-y", "domain-search-mcp@latest"]
}
}
}💡 小贴士:始终使用 @latest 以确保您运行的是具有所有功能的最新版本。工具
核心搜索
search_domain:检查多个顶级域名中的名称,添加溢价/拍卖信号。bulk_search:单个TLD最多可检查100个名称。compare_registrars:比较注册商之间的定价(配置后端时)。
基于人工智能的建议
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可选BYOK(本地)
仅在以下情况下使用 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_ipRedis分布式缓存(可选)
对于跨多个MCP实例的水平扩展,请配置Redis:
REDIS_URL=redis://:password@host:6379如果没有Redis,服务器将使用内存缓存(对于单个实例来说效果很好)。Redis支持:
- 跨多个服务器实例共享缓存
- 持续缓存幸存重启
- 负载平衡部署中更好的缓存命中率
人工智能推理(零配置)
基于人工智能的建议(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 | - | 名称便宜的API密钥 |
NAMECHEAP_API_USER | - | Namecheap用户名 |
NAMECHEAP_CLIENT_IP | - | Namecheap IP白名单 |
OUTPUT_FORMAT | 桌子 | 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 | 名称服务器查找超时(ms) |
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键 |
|---|---|---|---|
| RDAP | 第一(主要) | 快速可用性检查 | 不需要 |
| GoDaddy | 第二(回退) | 高级/拍卖检测 | 不需要 |
| WHOIS | 第三(最后手段) | 传统可用性 | 不需要 |
| 定价API | 并行 | 通过后端的实时定价 | 后端令牌 |
| Porkbun API | 并行(BYOK) | 可用性+定价 | API密钥+机密 |
| 名称便宜API | 并行(BYOK) | 可用性+定价 | API密钥+IP白名单 |
| Sedo Feed | 丰富 | 售后拍卖提示 | 不需要 |
定价行为
- 首先尝试实时价格 可用的 域。
- 如果实时报价失败或受到费率限制,结果将回落到目录估计值,包括
price_note. - 始终通过以下方式验证定价
price_check_url购买前。
例子
基本搜索(无API密钥)
search_domain("myproject", ["com", "io", "dev"])
┌─────────────────┬───────────┬─────────┬────────┐
│ Domain │ Available │ Premium │ Source │
├─────────────────┼───────────┼─────────┼────────┤
│ myproject.com │ ✅ │ No │ rdap │
│ myproject.io │ ❌ │ - │ rdap │
│ myproject.dev │ ✅ │ Yes │ godaddy│
└─────────────────┴───────────┴─────────┴────────┘基于人工智能的建议
suggest_domains_smart("coffee shop in seattle", { style: "brandable" })
→ seattlebrew.com, pugetperk.io, raincitycoffee.co, cascadiacafe.com批量检查
bulk_search(["startup", "launch", "begin", "init"], "io")
→ Checks startup.io, launch.io, begin.io, init.io in parallel发展
npm run dev # watch mode
npm test # run Jest
npm run build # compile to dist/发布
看 docs/RELEASE.md 对于金丝雀->最新发布流。标签如 v1.2.24 通过CI触发GitHub发布+npm发布。
更新日志
看 CHANGELOG.md 发布历史。
安全说明
- 不要提交API密钥或
.mcpregistry_*文件夹。 - 没有
PRICING_API_BASE_URL(或BYOK键),定价不可用(可用性仍然有效)。
升级
对于npx用户
如果你使用 npx domain-search-mcp (无 @latest),npx可能会缓存旧版本。
修复:更新MCP配置以使用 @latest:
"args": ["-y", "domain-search-mcp@latest"]或者手动清除npx缓存:
npx clear-npx-cache # then restart your MCP client对于源代码/Git用户
cd domain-search-mcp
git pull origin main
npm install
npm run build保持更新
- 观看回购:点击“观看”→ “仅发布” 以获得新版本的通知。
- 检查发布:参见 查看更新日志和升级说明。
- npm页面: 显示最新版本。
建筑
有关详细的系统架构图,请参阅 docs/ARCHITECTURE.md:
- 传输层(标准传输与HTTP/SSE)
- 工具执行流程
- 数据源瀑布(RDAP→ API定价→ 谁)
- VPS部署架构
- AI建议流程
- MCP会话生命周期
为什么是这个工具?
| 问题 | 解决方案 |
|---|---|
| 域API需要注册/密钥 | RDAP+GoDaddy=零配置可用性 |
| 高级域名显示为“可用” | GoDaddy检测到高级/拍卖状态 |
| 难以检查多个TLD | 单调用检查.com、.io、.dev等。 |
| 命名没有人工智能集成 | 内置Qwen 7B,提供品牌建议 |
| 仅适用于Claude | HTTP传输支持ChatGPT、LM Studio |
常见问题解答
Q: 这在没有任何API密钥的情况下工作吗? A: 是的!可用性检查使用公共RDAP和GoDaddy端点。只有定价需要API密钥。
Q: 支持哪些MCP客户端? A: Claude Desktop、Claude Code、VS Code、Cursor、Cline(stdio)和ChatGPT、LM Studio(HTTP/SSE)。
Q: 高级域名检测有多准确? A: GoDaddy的公共端点可以检测到大多数高级和拍卖域名。始终在注册商结账时进行验证。
Q: 我可以自行托管人工智能建议吗? A: 是的!集 QWEN_INFERENCE_ENDPOINT 连接到运行微调模型的llama.cpp服务器。
链接
- npm:
- MCP注册表: register.modelcontextprotocol.io
- 格拉玛: glama.ai/mcp/servers/@dorukardahan/域名搜索mcp
- 背景7: context7.com/dorukardahan/domain-search-mcp

