recon

io.github.blisspixel由 GitHub 账号 blisspixel 发布v2.27.0更新于 Oct 29, 2026

Public DNS, certificate transparency, and identity observations.

概览

AI 生成的概览

本地 MCP 服务器,让助手查询域名的公开 DNS、证书透明度与身份足迹,并给出有证据支撑的观察结果。

可以做什么
  • 查询域名的公开技术与身份足迹:邮件服务商与邮件控制、身份标识、SaaS 服务与云基础设施
  • 获取查询的证据与来源状态,或输出结构化 JSON 记录
  • 生成全新的、可追溯证据的复核包,并与缓存基线做差异对比
  • 批量查询给定的域名列表,描述观察到的异同而不推断归属关系
适用场景
适合让助手以被动来源梳理某域名的公开邮件、身份与云环境状况,或对比多个给定域名,且无需凭据、不做主动扫描。结果只是观察,并非完整清单或安全结论。
运行要求
以本地进程通过 stdio 运行,从 PyPI 包 recon-tool 用 uvx(或 pip/pipx)安装;支持 Python 3.11 至 3.15。未声明任何凭据、API 密钥或环境变量。查询需要网络访问;安装 MCP 后需重启客户端,建议先手动批准工具调用。
安装前请注意
查询会让 DNS 请求对递归与权威基础设施可见,默认会请求 MTA-STS;Google CSE 与 BIMI 证书探测需显式开启直接探测。结果可能复用 24 小时缓存,除非禁用。缺失证据表示“未观察到”,而非“未使用”;单个域名不能界定组织边界。README 的安装命令会把远程脚本直接交给 shell 执行。

安装

在 SourceWeft 中

  1. 打开 控制台中的 recon,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

recon

[CI] [PyPI] [Python] [License] [OpenSSF Scorecard] [OpenSSF Best Practices]

Point recon at a domain to see its public technology and identity footprint: email providers and controls, identity indicators, SaaS services, and cloud infrastructure. No credentials, API keys, or active scanning. Use the CLI for a quick lookup, versioned JSON for automation, or the local MCP server from an agent.

recon reports evidence-backed observations, not a complete inventory or a security verdict. A domain does not establish an organization's boundaries.

See the Output

[Synthetic recon output in a modern Linux terminal]

Synthetic illustration, generated, not captured. The real formatter renders a deterministic, no-network fixture for Example Industries Ltd. No real organization is depicted, and no live lookup of reserved example.com reproduces this fixture.

Accessible text transcript
text
demo@recon:~$ recon example.com    # synthetic fixture, not a captured run6 sources: 5 matched, 1 no matchExample Industries Ltd (unverified)example.comReserved name: results are public residue, not an organization.──────────────────────────────────────────────────────────────────────────────  Provider      Microsoft 365 + Proofpoint gateway  Tenant        a1b2c3d4-e5f6-7890-abcd-ef1234567890 • NA  Tenant domain example-industries.onmicrosoft.example.com  Auth          Federated  Confidence    ●●● High (3 sources)

Services  Email            Microsoft 365, Proofpoint, DMARC reject, DKIM,                   SPF strict, MTA-STS enforce  Identity         Okta  Cloud            Cloudflare (CDN/edge), AWS Route 53 (DNS)  Security         Wiz Security  Data & Analytics Snowflake, Datadog  Collaboration    Slack, Atlassian (Jira/Confluence), GitHub, Zoom                   Evidence roles: --explain

High-signal related domains  login.example.com, support.example.com, status.example.com
Insights  Federated identity observed; identity-vendor indicators: Okta  Email security: observed controls: DMARC reject, DKIM, SPF strict, MTA-STS

Quick Start

macOS / Linux:

bash
curl -fsSL https://raw.githubusercontent.com/pueo-labs/recon/main/scripts/install.sh | bash

Windows (PowerShell):

powershell
powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://raw.githubusercontent.com/pueo-labs/recon/main/scripts/install.ps1 | iex"

The installer sets up recon for your user account, including Python when needed. Open a new terminal afterward. Python 3.15 is the default development and release runtime; 3.11 through 3.15 remain supported. Already have a supported Python? Use pip install recon-tool in a virtual environment, or uv tool install --python 3.15 recon-tool / pipx install --python python3.15 recon-tool on managed distributions like Arch Linux and Omarchy. For review-before-run instructions, other package managers, updates, and recovery, see the installation guide.

bash
recon --version      # offline install checkrecon doctor         # online connectivity and installation diagnostics

Lookups make DNS queries visible to recursive and authoritative infrastructure. MTA-STS is the only default target-owned HTTP request; Google CSE and BIMI certificate probes require explicit --direct-probes. There is no port scanning or application crawling. Replace the placeholder to start:

bash
recon "<domain-you-want-to-review>"

Ordinary lookups may reuse the 24-hour result cache and say so when they do; a result whose collection had unavailable sources is never reused. Use --no-cache to bypass the cache for both reading and writing; certificate-transparency enrichment has a separate cache. See first lookup and cache behavior.

Common Commands

The bare command stays compact. Request evidence or structured output when needed:

bash
recon example.com                      # compact panelrecon example.com --explain             # evidence and source statusrecon example.com --json                # structured recordrecon example.com --plain               # linear text for screen readers and greprecon review example.com               # fresh, evidence-linked review bundlerecon batch domains.txt --json          # look up a supplied domain listrecon delta example.com                # compare with a cached baselinerecon update                           # update through the original package manager

These examples use reserved domains; real lookups will not reproduce the synthetic illustration above. For multi-domain reviews, recon describes observed similarities and differences without inferring ownership or a corporate relationship. See the evidence-first review workflow and batch guide.

Use with an Agent

The PyPI package installs the CLI and MCP runtime. Connect the local server to Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, or Kiro:

bash
recon mcp install --client=claude-desktoprecon mcp doctor

Restart the client and begin with manual tool approvals. Ask for one domain's email and identity indicators, or a service comparison across supplied domains. Missing evidence means "not observed", not "not used"; collection failures remain explicit. Local execution is the default, and the project does not operate a hosted service.

See MCP setup and supported clients and skills, plugins, and their validation status.

Omarchy Desktop Shell Integration

recon includes a thin, keyboard-first desktop shell plugin for Omarchy located in integrations/omarchy/:

  • Keyboard-driven workflow: focus domain input automatically, press Enter to run bounded inspection, and press Ctrl+D to toggle baseline delta comparison.
  • Direct process invocation: passes structured arguments directly (["recon", domain, "--json"]) without shell interpolation.
  • Safe clipboard handling: pasting text never triggers an automatic network request.
  • Zero background daemons: runs unprivileged inside Omarchy's Quickshell environment.

See integrations/omarchy/README.md for installation and shortcuts.

Documentation

NeedGuide
Install, update, uninstall, or troubleshootGetting started
Find a command or flagCLI reference
Build automation or hand off evidenceJSON schema, review bundles
Understand results and their limitsHow it works, limitations, reporting observations
Linux and Omarchy environment setupLinux / Omarchy guide
Check plans and shipped changesRoadmap, changelog
Find architecture, security, research, or release proceduresFull documentation index

Contributing and Support

Catalog corrections and documented vendor patterns are especially useful. Start with CONTRIBUTING.md for setup, verification, and contribution requirements; coding agents should also read AGENTS.md. For repeatable catalog work, start with the harness-neutral maintenance skill and offline example.

Use issues for bugs and feature requests. Keep public examples reserved and synthetic; never post evaluated company domains, tenant IDs, or per-domain results. See the private reporting paths and security policy. Intended for defensive use.

License

Apache 2.0.

来源:README.md,提交 4d7ff0c

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v2.27.0最新Oct 29, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分