使用说明
项目简介
IR Toolshed MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为安全专业人员提供网络事件响应和分析工具。它通过标准化的 MCP 协议,向 LLM 客户端(如 Claude Desktop)提供 ASN 查询、DNS 查询、WHOIS 信息和 IP 地理定位等功能,帮助 AI 模型进行安全调查和分析。
主要功能点
- 资源 (Resources):提供工具的详细文档,帮助 AI 系统理解工具的使用方法和输出格式。例如,'asnlookup_documentation' 资源提供了 ASN 查询工具的文档。
- 工具 (Tools):注册并提供多种网络安全工具,允许 LLM 客户端调用执行,包括:
- ASN Lookup Tool:查询 IP 地址的 ASN 信息,包括 ASN 号码和组织名称。
- DNS Lookup Tool:执行 DNS 查询,支持多种记录类型(A, AAAA, MX, NS, TXT 等),返回格式化的 DNS 记录。
- WHOIS Lookup Tool:检索域名注册信息,包括所有者详细信息、注册日期、NameServer 信息和注册商详细信息。
- Geolocation Tool:使用 MaxMind GeoLite2 数据库提供 IP 地址的地理位置信息,包括国家、城市、经纬度、网络信息和时区数据。
- Prompt 模板 (Prompts):为每个工具提供使用示例,帮助用户了解如何通过 LLM 客户端调用这些工具。例如,'asnlookup_examples' Prompt 提供了 ASN 查询工具的使用示例。
安装步骤
- 克隆仓库
git clone https://github.com/rossja/irtoolshed-mcp-server cd irtoolshed-mcp-server - 创建虚拟环境
uv venv - 激活虚拟环境
- Windows:
.venv\Scripts\activate - macOS/Linux:
source .venv/bin/activate
- Windows:
- 安装项目
uv pip install -e .
服务器配置
为了让 MCP 客户端(如 Claude Desktop)连接到 IR Toolshed MCP Server,您需要配置客户端的服务器连接信息。以下是一个 JSON 格式的配置示例,您需要将其添加到 MCP 客户端的服务器配置中。
{ "servers": [ { "name": "irtoolshed-mcp-server", "command": "uv", "args": [ "run", "mcp", "dev", "src/mcp_server.py" ], "host": "localhost", "port": 8080 // 默认情况下,FastMCP 开发服务器监听 8080 端口,请根据实际情况调整 } ] }
配置参数说明:
- name: 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。例如 '"irtoolshed-mcp-server"'。
- command: 启动服务器的命令,这里使用 'uv' 包管理器来运行 Python 脚本。固定为 '"uv"'。
- args: 启动命令的参数列表。
- '"run"': 'uv' 命令的子命令,用于运行 Python 脚本。固定为 '"run"'。
- '"mcp"': 表示运行 MCP 服务器应用。固定为 '"mcp"'。
- '"dev"': 指定以开发模式运行 MCP 服务器,启用热重载等特性。固定为 '"dev"'。
- '"src/mcp_server.py"': MCP 服务器主程序的路径。固定为 '"src/mcp_server.py"'。
- host: MCP 服务器监听的主机地址。如果服务器和客户端在同一台机器上,可以使用 '"localhost"'。
- port: MCP 服务器监听的端口。默认情况下 'FastMCP' 开发服务器监听 8080 端口。如果需要更改端口,请查阅 'FastMCP' 文档或服务器代码。
注意: 请确保您的 MCP 客户端支持 JSON 格式的服务器配置,并将上述配置添加到客户端的相应配置文件中。启动 IR Toolshed MCP Server 后,MCP 客户端应该能够通过配置信息连接到服务器并使用其提供的工具。
基本使用方法
-
确保 IR Toolshed MCP Server 已经成功启动并运行。
-
在 MCP 客户端(如 Claude Desktop)中,配置并连接到 "irtoolshed-mcp-server"。
-
在 MCP 客户端的交互界面中,可以使用以下格式调用工具:
- 'asnlookup("IP地址")' 例如:'asnlookup("8.8.8.8")'
- 'dnslookup("域名", "记录类型")' 例如:'dnslookup("google.com", "A")'
- 'whoislookup("域名")' 例如:'whoislookup("example.com")'
- 'geolookup("IP地址")' 例如:'geolookup("1.1.1.1")' (首次使用地理定位工具可能需要配置 MaxMind 许可证密钥,请参考仓库 README 文档)
客户端会向 IR Toolshed MCP Server 发送请求,服务器执行相应的工具并返回 JSON 格式的结果。
请参考仓库的 README.md 文件和每个工具的文档资源(例如 'resource://asnlookup/documentation')获取更详细的使用信息和工具参数说明。
信息
分类
网页与API