使用说明
项目简介
Sherlock MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,专注于域名购买和管理。它通过标准化的 MCP 协议,为 LLM 客户端提供域名相关的上下文信息和操作能力。例如,LLM 可以通过调用 Sherlock MCP Server 提供的工具来搜索域名、设置联系信息、查询域名列表和管理 DNS 记录等。
主要功能点
- 域名搜索 (search): 允许 LLM 客户端搜索可用的域名。
- 账户管理 (claim_account, get_contact_information, set_contact_information): 支持账户关联和联系人信息的设置与获取,为域名购买做准备。
- 域名管理 (domains): 列出当前用户拥有的域名。
- DNS记录管理 (dns_records, create_dns, update_dns, delete_dns): 提供 DNS 记录的查看、创建、更新和删除功能。
- 购买域名 (get_purchase_offers): 获取域名购买的支付报价。
安装步骤
由于这是一个 MCP 服务器,安装步骤主要涉及服务器的部署和配置,以便 MCP 客户端能够连接和使用。根据仓库 'README.md' 提供的 "Quickstart" 部分,以下是在开发环境配置 Sherlock MCP Server 的步骤(以 MacOS 为例):
- 环境准备: 确保你已经安装了 'uv' (可能是 uvloop 或类似工具,用于运行 Python 应用)。根据 'README.md' 的构建和发布部分,项目使用了 'uv' 进行依赖管理和构建。
- 获取代码: 从 GitHub 克隆仓库代码到本地:
git clone https://github.com/Fewsats/sherlock-mcp.git cd sherlock-mcp - 安装依赖 (可能需要): 虽然 'README.md' 中有 'uv sync' 命令,但对于运行服务器,你可能需要确保基本依赖已安装。根据项目代码,它依赖 'mcp' 库和 'sherlock.core' (假设是项目内部库)。 你可能需要先执行 'uv sync' 来同步依赖。
uv sync - 运行服务器: 使用 'uv run' 命令运行 'server.py' 文件。根据 'README.md' 的配置示例,完整的命令可能如下:
或者,如果 'sherlock-mcp' 目录在你的 Go 语言路径下(根据 README 中的路径 '/Users/pengren/go/github.com/Fewsats/sherlock-mcp'),可以使用更简洁的命令:uv run src/sherlock_mcp/server.py
(注意:'sherlock-mcp' 在这里可能指代某个入口脚本或模块,实际运行命令需要根据项目结构调整,这里假设 'sherlock-mcp' 是指 'src/sherlock_mcp' 目录,并且 'server.py' 是入口点。)uv --directory /Users/pengren/go/github.com/Fewsats/sherlock-mcp run sherlock-mcp
服务器配置
MCP 服务器是为 MCP 客户端(如 Claude)设计的。客户端需要配置服务器的启动信息才能连接。根据 'README.md' 提供的 "Development/Unpublished Servers Configuration" 和 "Published Servers Configuration" 部分,你需要将以下 JSON 配置添加到 MCP 客户端的配置文件中(例如 Claude Desktop 的 'claude_desktop_config.json'):
开发环境配置示例 (Development/Unpublished Servers Configuration):
"mcpServers": { "sherlock-mcp": { // 服务器名称,客户端用此名称引用 "command": "uv", // 启动服务器的命令,这里使用 uv "args": [ // 启动命令的参数列表 "--directory", // 指定工作目录 "/Users/pengren/go/github.com/Fewsats/sherlock-mcp", // 服务器代码所在的目录 (需要替换为你本地的实际路径) "run", // uv 的子命令,表示运行 "src/sherlock_mcp/server.py" // 运行的 Python 脚本路径 (根据实际情况调整) ] } }
发布环境配置示例 (Published Servers Configuration):
"mcpServers": { "sherlock-mcp": { // 服务器名称,客户端用此名称引用 "command": "uvx", // 启动服务器的命令,这里使用 uvx (可能是 uvloop 的执行器) "args": [ // 启动命令的参数列表 "sherlock-mcp" // 假设 "sherlock-mcp" 是一个已打包发布的可执行文件或脚本 ] } }
注意:
- 你需要根据你的实际环境和 MCP 客户端的要求选择合适的配置。
- '/Users/pengren/go/github.com/Fewsats/sherlock-mcp' 路径需要替换为你本地 'sherlock-mcp' 仓库的实际路径。
- 'command' 和 'args' 的配置需要与你的服务器运行方式匹配。开发环境通常直接运行 Python 脚本,发布环境可能使用打包后的可执行文件。
- 'server name' ("sherlock-mcp") 是客户端用来识别和调用此服务器的名称,可以自定义。
基本使用方法
- 启动 MCP 服务器: 按照上述 "安装步骤" 和 "服务器配置" 中的说明启动 Sherlock MCP Server。
- 配置 MCP 客户端: 将 "服务器配置" 中的 JSON 配置添加到你的 MCP 客户端配置文件中,确保客户端能够识别并连接到 Sherlock MCP Server。
- 在 MCP 客户端中使用工具: 一旦客户端成功连接到 Sherlock MCP Server,你就可以在客户端中使用服务器提供的工具。例如,在支持 MCP 协议的 LLM 应用中,你可以指示 LLM 调用 'search' 工具来搜索域名,或者调用 'domains' 工具来查看已拥有的域名。具体的调用方式取决于 MCP 客户端的界面和交互设计。
- 通过 MCP Inspector 调试 (推荐): 'README.md' 推荐使用 MCP Inspector 进行调试。按照 'README.md' 中的 "Debugging" 部分的说明,使用 'npx @modelcontextprotocol/inspector' 命令启动 Inspector,它可以帮助你监控和调试 MCP 服务器与客户端之间的通信。
信息
分类
商业系统