一个全面的模型上下文协议(MCP)服务器,提供事件响应和网络分析工具,供安全专业人员使用。此服务器允许像Claude这样的AI代理执行各种与网络相关的查找和分析,以协助安全调查。
IR Toolshed MCP Server 提供了一套可通过模型上下文协议访问的网络和安全工具。它旨在作为网络事件响应者的通用服务,使他们能够使用以下功能进行基本查找:
每个工具都附有详细的文档作为资源,使得AI系统易于理解如何使用这些工具以及预期的输出。
ASN 查找工具返回有关IP地址的信息,包括:
DNS 查找工具提供域名的DNS记录信息:
WHOIS 查找工具检索域名注册信息:
IP地理定位工具使用MaxMind的GeoLite2数据库提供位置信息:
注意:地理定位工具需要一个MaxMind许可证密钥。您可以:
未来版本中将添加更多工具。
git clone <repository-url>
cd ir-toolshed-mcp-server
uv venv
.venv\Scripts\activate
source .venv/bin/activate
uv pip install -e .
启动MCP服务器:
uv run mcp dev src/mcp_server.py
这将以开发模式启动服务器,使其对如Claude Desktop等MCP客户端可用。
连接到如Claude Desktop等MCP客户端后,可以通过提供IP地址来使用ASN查找工具:
asnlookup("8.8.8.8")
示例输出:
{
"ip_addr": "8.8.8.8",
"as_number": "15169",
"as_name": "GOOGLE - Google LLC"
}
连接到如Claude Desktop等MCP客户端后,可以通过提供域名来使用DNS查找工具:
dnslookup("example.com")
示例输出:
{
"domain": "example.com",
"record_type": "A",
1"record_value": "93.184.216.34"
}
连接到如Claude Desktop等MCP客户端后,可以通过提供域名来使用WHOIS查找工具:
whoislookup("example.com")
示例输出:
{
"domain": "example.com",
"ownership_details": "Google LLC",
"registration_date": "2004-04-26",
"nameserver_information": "ns1.google.com",
"registrar_details": "MarkMonitor Inc."
}
连接到如Claude Desktop等MCP客户端后,可以通过提供IP地址来使用地理定位工具:
geolocation("8.8.8.8")
示例输出:
{
"ip_addr": "8.8.8.8",
"country": "US",
"city": "Mountain View",
"latitude": 37.40599,
"longitude": -122.078514,
"network": "AS15169 Google LLC",
"timezone": "America/Los_Angeles"
}
每个工具遵循一致的错误处理模式:
通用错误响应格式:
{
"status": "error",
"error": "详细错误消息",
"query": "原始查询值"
}
特定工具的错误示例:
ASN 查找:
{
"ip_addr": "<被查询的IP>",
"status": "error",
"error": "无效的IP地址格式"
}
DNS 查找:
{
"domain": "<被查询的域名>",
"record_type": "<请求的类型>",
"status": "error",
"error": "DNS解析失败"
}
WHOIS 查找:
{
"domain": "<被查询的域名>",
"status": "error",
"error": "WHOIS服务器不可用"
}
地理定位:
{
"ip_addr": "<被查询的IP>",
"status": "error",
"error": "未找到MaxMind数据库或许可证密钥无效"
}
项目遵循标准的Python包结构:
irtoolshed_mcp_server/ # 主包目录
├── __init__.py # 包初始化
├── asnlookup.py # ASN查找功能
├── dnslookup.py # DNS查找功能
├── geolookup.py # 地理定位功能
├── mcp_server.py # 主MCP服务器实现
└── whoislookup.py # WHOIS查找功能
tests/ # 测试目录
├── test_asnlookup.py # ASN查找测试
├── test_dnslookup.py # DNS查找测试
├── test_geolookup.py # 地理定位测试
└── test_whoislookup.py # WHOIS查找测试
git clone <repository-url>
cd ir-toolshed-mcp-server
uv venv
source .venv/bin/activate # 在Windows上使用:.venv\Scripts\activate
uv pip install -e ".[dev]"
运行测试套件:
uv run pytest
这将:
tests/目录中的所有测试注意:某些测试需要额外配置:
该项目使用多种工具来维护代码质量:
uv run black .
uv run isort .
uv run mypy .
uv run ruff .
已完成: ✓ ASN查找 ✓ DNS记录查找(A、AAAA、MX等) ✓ WHOIS记录检索 ✓ IP地理定位服务
未来计划包含的工具:
欢迎贡献新的IR工具或改进现有工具。请按照以下步骤操作:
Apache 2.0
此服务器旨在用于合法的安全研究和事件响应。用户必须确保在使用这些工具时遵守所有适用的法律和法规。