nan786521/recon-mcp

GitHub: nan786521/recon-mcp

为 AI 编程智能体提供结构化、带评级的安全侦察工具(DNS、TLS、HTTP 标头、端口扫描等)的 MCP 服务器。

Stars: 1 | Forks: 0

# recon-mcp **简体中文** | [繁體中文](./README.zh-TW.md) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/3aec406269224843.svg)](https://github.com/nan786521/recon-mcp/actions/workflows/ci.yml) [![PyPI](https://img.shields.io/pypi/v/recon-kit-mcp)](https://pypi.org/project/recon-kit-mcp/) [![Python](https://img.shields.io/badge/python-3.10%2B-blue)](https://www.python.org/) [![License: MIT](https://img.shields.io/badge/license-MIT-green)](./LICENSE) 一个为 AI 编程智能体提供安全、结构化的网络与安全**侦察**工具的 [MCP](https://modelcontextprotocol.io) 服务器 —— 适用于 **Claude Code、Codex、Cline 以及任何 MCP 客户端**。 大多数 MCP 服务器只是封装了 CRUD API。而 `recon-mcp` 提供的是工程师在调查资产时会使用的只读侦察功能,并返回整洁的 JSON —— 包含评级结论 —— 从而让智能体能够直接对结果进行推理,而无需费力解析控制台输出。 ## 工具 | 工具 | 功能 | |------|--------------| | `recon_report` | **从这里开始。** 一次调用即可同时检查 DNS、TLS 和 HTTP 标头,并给出总体评级 | | `dns_recon` | DNS + WHOIS + 邮件安全(SPF/DMARC/DKIM),包含评级 | | `subdomain_enum` | 通过 DNS 发现子域名(≤512 个候选/次调用),支持内置或自定义字典 | | `tls_check` | 证书、协议、加密套件及已知 TLS 漏洞,包含评级 | | `http_headers_audit` | HTTP 安全标头(CSP、HSTS、X-Frame-Options 等),包含评级 | | `port_scan` | 单个主机的 TCP 端口扫描(≤1024 个端口/次调用),返回开放端口及服务 | ## 示例 只需向你的智能体提问:*“对 example.com 运行安全侦察报告。”* 它将调用一次 `recon_report` 并获取可直接采取行动的评级概览: ``` { "domain": "example.com", "overall_grade": "F", "summary": "Overall posture F: email A, TLS B, headers F; 13 actionable issue(s).", "components": { "email": { "grade": "A", "issues": [] }, "tls": { "grade": "B", "issues": [] }, "headers": { "grade": "F", "issues": [ { "severity": "high", "label": "Missing Content-Security-Policy", "detail": "CSP not set; cannot restrict resource load sources" } ] } } } ``` 需要某个特定领域的更多细节?智能体可以直接调用 `dns_recon`、`tls_check`、`http_headers_audit` 或 `port_scan`。 ## 安装 要求 Python ≥ 3.10。支持在 Linux、macOS 和 Windows 上运行(已在 CI 中测试)。 **推荐方式 —— 无需克隆,通过 [uv](https://docs.astral.sh/uv/) 运行:** ``` uvx recon-kit-mcp ``` **或者从源码安装(用于开发):** ``` git clone https://github.com/nan786521/recon-mcp cd recon-mcp python -m venv .venv # Windows .venv\Scripts\activate # macOS / Linux source .venv/bin/activate pip install -e . ``` ## 配合 Claude Code 使用 添加此服务器(stdio 传输)。使用 `uvx` 时你无需指定绝对路径: ``` claude mcp add recon -- uvx recon-kit-mcp ``` 或者手动将其添加到任何 MCP 客户端的配置中: ``` { "mcpServers": { "recon": { "command": "uvx", "args": ["recon-kit-mcp"] } } } ``` (如果是从源码检出运行,请将命令指向 `/absolute/path/to/.venv/bin/recon-kit-mcp`。) 然后只需提问:*“对 example.com 运行安全侦察报告”* —— 或者针对特定领域,例如 *“检查 example.com 的邮件安全配置。”* 该服务器还提供了一个 **`security_recon`** 提示词:从你客户端的提示词菜单中选择它,并传入一个域名即可进行带有严重性排序的向导式审计。 ## 工具参考 ### `recon_report(domain, timeout?) -> dict` 同时运行 DNS/邮件、TLS 和 HTTP 标头检查,返回 `overall_grade`(与最薄弱组件的级别一致)、单行的 `summary`,以及 `components`(包含 `email` / `tls` / `headers`),每个组件都包含相应的 `grade` 和可操作的 `issues`。 为提高速度,它使用快速单次握手 TLS 检查 —— 如需完整的加密套件/漏洞分析,请调用 `tls_check`。这是最佳的切入点;如需获取原始细节,请使用下方的具体工具。 ### `dns_recon(domain, checks?, timeout?) -> dict` - **records** — A、AAAA、MX、NS、TXT、SOA、CNAME、CAA 记录 - **whois** — 解析后的注册字段 + 原始 WHOIS 文本 - **email** — SPF、DMARC 和 DKIM 状态,以及带有评级的 `assessment` (字母评级 A–F,以及总结和按严重性分类、附带修复建议的单项检查结果) `checks` 可以是 `["records", "whois", "email"]` 中的任意子集;省略此项则运行全部检查。 ### `subdomain_enum(domain, wordlist?, timeout?) -> dict` 通过 DNS 解析候选子域名,并返回实际存在的子域名。`wordlist` 是逗号分隔的标签(`"www,api,dev"`);省略此项则使用内置的常见列表。每次调用最多限制 512 个候选。返回 `checked`、`found_count` 和 `found`(包含 `subdomain` 及其对应的 `ips`)。 ### `tls_check(host, port=443, timeout?) -> dict` 返回 `grade`、`certificate`(有效性 / 过期时间 / 密钥算法)、`protocols`(标记旧版 SSLv3 / TLS 1.0 / 1.1)、加密套件信息、`forward_secrecy`、`hsts`、`vulnerabilities`(每项带有 `vulnerable` 标记)以及 `findings` 列表。 ### `http_headers_audit(host, port?, use_ssl=True, timeout?) -> dict` 返回 `grade`、`score`、观察到的安全标头以及 `findings` 列表(为每个标头提供建议)。默认为 HTTPS(端口 443)。 ### `port_scan(host, ports?, timeout?) -> dict` 针对**单个**主机的 TCP 连接扫描。`ports` 是一个字符串 —— 可以是 `"22,80,443"`、范围 `"1-1024"` 或混合形式 —— 省略此项则扫描内置的常见端口集。每次调用硬性限制最多 1024 个端口(用于单主机侦察,而非大规模扫描)。返回 `host`、`ip`、`scanned`、`open_count` 以及 `open_ports`(包含端口和服务)。请仅对你获得授权评估的主机进行扫描。 ## 许可证 [MIT](./LICENSE)
标签:GitHub, MCP服务器, Python, 云存储安全, 人工智能, 安全侦察, 无后门, 用户模式Hook绕过, 网络扫描, 逆向工具