mcpField
W
Whodis MCP Server

Whodis MCP Server

本地服务
github.com/vinsidious开发工具479 周前更新

关于 Whodis MCP Server

Whodis MCP Server 通过 WHOIS 查询域名是否显示为已注册,面向 AI 助手和开发者,同时提供 MCP 工具和命令行接口。

主要功能

  1. 01通过 WHOIS 检查域名可用性
  2. 02返回可用及已注册域名列表
  3. 03通过命令行直接查询
  4. 04通过环境变量或 .env 文件配置
  5. 05提供结构化调试日志

适用场景

  1. 01检查项目候选域名
  2. 02从命令行测试域名查询

MCP 相关

向 MCP 客户端提供 `check-domain-availability` 工具。工具接收域名并返回显示为可用或已注册的列表;结果取决于 WHOIS 响应。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Whodis MCP 服务

本项目提供一个专为使用 WHOIS 查询检查域名可用性而设计的 Model Context Protocol(MCP)服务。它允许 AI 助手或其他工具将域名可用性检查集成到工作流中。


概述

什么是 MCP?

Model Context Protocol(MCP)是一种开放标准,允许 AI 系统安全地、结合上下文地连接外部工具和数据源。本服务实现了 MCP 标准,可提供域名可用性信息。

功能

  • 域名可用性检查:使用 whoiser 库执行 WHOIS 查询,并确定域名是否看起来可用或已注册。
  • MCP 工具集成:向 MCP 客户端(如 AI 助手)提供 check-domain-availability 工具。
  • CLI 界面:包含一个命令行界面(whodis-mcp-server check-domain-availability ...),可直接使用和测试。
  • 结构化日志:提供详细日志,便于调试和监控。
  • 可配置:支持通过环境变量或 .env 文件进行配置。

开始使用

先决条件

  • Node.js(>=18.x):下载
  • Git:用于版本控制

步骤 1:克隆并安装

# Clone the repository
git clone https://github.com/vinsidious/whodis-mcp-server.git
cd whodis-mcp-server

# Install dependencies
npm install

步骤 2:运行开发服务

在开发模式下启动服务,以便通过 MCP Inspector 与其交互:

npm run dev:server

这会启动 MCP 服务,并在 http://localhost:5173 启用 MCP Inspector,你可以在其中测试 check-domain-availability 工具。


步骤 3:通过 CLI 测试工具

直接从命令行运行域名可用性检查器:

# Using CLI in development mode
npm run dev:cli -- check-domain-availability example.com non-existent-domain-12345.org

# Or run the built version
npm run start:cli -- check-domain-availability google.com my-unique-idea.dev

CLI 将输出一个 JSON 对象,其中包含 available 和 unavailable 数组。


架构

本服务采用分层架构:

src/
├── cli/              # Command-line interface logic
├── controllers/      # Business logic for domain checks
├── services/         # Interaction with the whoiser library
├── tools/            # MCP tool definition and argument validation
├── types/            # Shared type definitions
├── utils/            # Shared utilities (logging, errors, etc.)
└── index.ts          # Main entry point for server and CLI

开发指南

开发脚本

# Start MCP server in development mode (with MCP Inspector)
npm run dev:server

# Run CLI commands in development mode
npm run dev:cli -- check-domain-availability <domains...>

# Build the project for production
npm run build

# Start MCP server in production mode (requires MCP client)
npm run start:server

# Run CLI commands using the production build
npm run start:cli -- check-domain-availability <domains...>

测试

# Run all tests
npm test

# Generate test coverage report
npm run test:coverage

代码质量

# Lint code
npm run lint

# Format code with Prettier
npm run format

MCP 工具:check-domain-availability

  • 用途:检查一个或多个域名的可用性。
  • 输入:域名数组。
    {
    	"domains": ["example.com", "another-domain.net"]
    }
    
  • 输出:一个 JSON 对象,包含两个数组:available(看起来尚未注册的域名)和 unavailable(看起来已注册的域名)。
    {
    	"available": ["likely-available-domain123.xyz"],
    	"unavailable": ["google.com"]
    }
    
    注意:可用性检查取决于 WHOIS 服务的响应,对于所有 TLD 或因临时网络问题,结果可能并非 100% 准确。查询失败的域名会被省略。
  • 适用场景:需要确定特定域名是否可能可以注册时,使用此工具。

调试

MCP Inspector

访问可视化 MCP Inspector,以测试工具并查看请求/响应详情:

  1. 运行 npm run dev:server
  2. 在浏览器中打开 http://localhost:5173
  3. 使用 UI 调用 check-domain-availability 工具。

服务日志

启用调试日志以查看详细输出:

# Set environment variable
DEBUG=true npm run dev:server

# Or set DEBUG=true in your .env file

日志也会保存到 ~/.mcp/data/whodis-mcp-server.*.log 中。


发布

要将更新发布到 npm:

  1. 确保更改已提交,并遵循约定式提交消息格式(例如 feat:、fix:、chore:)。
  2. 将更改推送到 main 分支。
  3. ci-semantic-release.yml 工作流将自动构建、测试、确定版本并将软件包发布到 npm。

许可证

ISC 许可证

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。