Skip to main content
Glama
by rossja

IR Toolshed MCP 服务器

一个全面的模型上下文协议 (MCP) 服务器,为安全专业人员提供事件响应和网络分析工具。该服务器允许像 Claude 这样的 AI 代理执行各种与网络相关的查找和分析,以协助安全调查。

概述

IR Toolshed MCP 服务器提供了一套可通过模型上下文协议访问的网络和安全工具。它旨在成为网络事件响应人员的通用服务,使他们能够使用以下工具执行基本查找:

  • ASN(自治系统编号)查找

  • DNS 查找和分析

  • WHOIS 记录检索

  • IP地理定位

  • 以及更多网络分析功能即将推出

每个工具都附有详细的文档作为资源,使人工智能系统能够轻松了解如何使用这些工具以及预期的输出。

Related MCP server: Wireshark MCP

当前工具

ASN 查找工具

ASN 查找工具返回有关 IP 地址的信息,包括:

  • 被查询的IP地址

  • 与 IP 地址关联的 AS 编号

  • 拥有 AS 编号的组织的名称

DNS查找工具

DNS 查找工具提供域的 DNS 记录信息:

  • 支持多种记录类型(A、AAAA、MX、NS、TXT)

  • 返回格式化的 DNS 记录

  • 处理 IPv4 和 IPv6 查询

WHOIS查询工具

WHOIS 查询工具检索域名注册信息:

  • 域名所有权详情

  • 注册日期

  • 名称服务器信息

  • 注册商详细信息

地理定位工具

IP 地理定位工具使用 MaxMind 的 GeoLite2 数据库提供位置信息:

  • 国家和城市级别的位置数据

  • 纬度和经度坐标

  • 网络信息

  • 时区数据

注意:地理定位工具需要 MaxMind 许可证密钥。您可以:

  1. 从以下网址获取免费密钥: https://dev.maxmind.com/geoip/geolite2-free-geolocation-data

  2. 任何一个:

    • 设置 MAXMIND_LICENSE_KEY 环境变量

    • 使用工具时将其作为参数提供

    • 出现提示时输入

未来版本中将会添加更多工具。

先决条件

  • Python 3.8 或更新版本(推荐 3.13+)

  • uv Python 包管理器

安装

  1. 克隆此存储库:

git clone <repository-url> cd ir-toolshed-mcp-server
  1. 创建虚拟环境:

uv venv
  1. 激活虚拟环境:

在 Windows 上:

.venv\Scripts\activate

在 macOS/Linux 上:

source .venv/bin/activate
  1. 以开发模式安装包:

uv pip install -e .

运行服务器

使用以下命令启动 MCP 服务器:

uv run mcp dev src/mcp_server.py

这将以开发模式启动服务器,使其可供 Claude Desktop 等 MCP 客户端使用。

使用工具

ASN 查找工具

当连接到 MCP 客户端(例如 Claude Desktop)时,您可以通过提供 IP 地址来使用 ASN 查找工具:

asnlookup("8.8.8.8")

示例输出:

{ "ip_addr": "8.8.8.8", "as_number": "15169", "as_name": "GOOGLE - Google LLC" }

DNS查找工具

当连接到 MCP 客户端(例如 Claude Desktop)时,您可以通过提供域名来使用 DNS 查找工具:

dnslookup("example.com")

示例输出:

{ "domain": "example.com", "record_type": "A", "record_value": "93.184.216.34" }

WHOIS查询工具

当连接到 MCP 客户端(例如 Claude Desktop)时,您可以通过提供域名来使用 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." }

地理定位工具

当连接到 MCP 客户端(例如 Claude Desktop)时,您可以通过提供 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": "Detailed error message", "query": "Original query value" }

特定工具的错误示例:

ASN 查找:

{ "ip_addr": "<queried-ip>", "status": "error", "error": "Invalid IP address format" }

DNS查找:

{ "domain": "<queried-domain>", "record_type": "<requested-type>", "status": "error", "error": "DNS resolution failed" }

WHOIS查询:

{ "domain": "<queried-domain>", "status": "error", "error": "WHOIS server not available" }

地理位置:

{ "ip_addr": "<queried-ip>", "status": "error", "error": "MaxMind database not found or license key invalid" }

项目结构

该项目遵循标准 Python 包结构:

irtoolshed_mcp_server/ # Main package directory ├── __init__.py # Package initialization ├── asnlookup.py # ASN lookup functionality ├── dnslookup.py # DNS lookup functionality ├── geolookup.py # Geolocation functionality ├── mcp_server.py # Main MCP server implementation └── whoislookup.py # WHOIS lookup functionality tests/ # Test directory ├── test_asnlookup.py # ASN lookup tests ├── test_dnslookup.py # DNS lookup tests ├── test_geolookup.py # Geolocation tests └── test_whoislookup.py # WHOIS lookup tests

发展

设置开发环境

  1. 克隆此存储库:

git clone <repository-url> cd ir-toolshed-mcp-server
  1. 创建虚拟环境并安装依赖项:

uv venv source .venv/bin/activate # On Windows use: .venv\Scripts\activate uv pip install -e ".[dev]"

运行测试

运行测试套件:

uv run pytest

这将:

  • 运行tests/目录中的所有测试

  • 显示测试覆盖率信息

  • 显示任何故障的详细输出

注意:某些测试需要额外的配置:

  • 地理定位测试需要 MaxMind GeoLite2 数据库和许可证密钥

  • 如果 WHOIS 服务不可用,WHOIS 测试可能会失败

代码质量

该项目使用多种工具来维护代码质量:

  • 用黑色格式化代码:

uv run black .
  • 使用 isort 对导入进行排序:

uv run isort .
  • 使用 mypy 运行类型检查:

uv run mypy .
  • 使用 ruff 进行 linting:

uv run ruff .

路线图

已完成:✓ ASN 查询✓ DNS 记录查询(A、AAAA、MX 等)✓ WHOIS 记录检索✓ IP 地理定位服务

计划纳入的未来工具:

  • 域名信誉评分

  • SSL证书分析

  • 网络端口扫描

  • 威胁情报集成

  • 被动 DNS 历史记录

  • 电子邮件安全分析(SPF、DKIM、DMARC)

  • BGP路由分析

  • 网络流量可视化

  • 恶意软件哈希查找

  • URL 信誉检查

贡献

欢迎贡献代码来添加新的 IR 工具或改进现有的 IR 工具。请遵循以下步骤:

  1. 分叉存储库

  2. 创建功能分支

  3. 按照 mcp_server.py 中的现有模式添加您的工具

  4. 包括适当的文档作为资源

  5. 提交拉取请求,并清晰描述你的更改

执照

Apache 2.0

安全注意事项

此服务器仅用于合法的安全研究和事件响应。用户在使用这些工具时必须确保遵守所有适用的法律法规。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rossja/irtoolshed-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server