Skip to main content

osint-mcp

tests PyPI

MCP server that gives Claude (or any MCP client) a handful of passive recon lookups for domains and IPs. No API keys needed, everything comes from public sources.

I got tired of jumping between whois, crt.sh, the Wayback Machine and Shodan tabs when looking into a domain, so this lets the model do it and put the results together.

Tools

tool what it does source
recon_domain all of the below at once + a list of highlights worth a look everything
domain_whois registrar, created/expires, nameservers, abuse contact RDAP (rdap.org)
ip_whois network owner, CIDR, country, abuse contact, PTR RDAP + reverse DNS
dns_lookup A, AAAA, CNAME, MX, NS, TXT, SOA, CAA (or pick your own) your resolver or a custom one
subdomains subdomains found in certificate transparency logs crt.sh
wayback archived snapshots of a URL, supports example.com/* Wayback CDX API
http_headers status, redirect chain, headers, missing security headers direct request
shodan_internetdb open ports, hostnames, CPEs, known CVEs Shodan InternetDB (free)
email_security SPF, DMARC, MTA-STS, TLS-RPT, DKIM, graded A-F DNS
tls_certificate issuer, expiry, SANs, TLS version, why a cert is invalid direct connection
asn_lookup which AS announces an IP, who owns it, all its prefixes RIPEstat

Everything except http_headers and tls_certificate is passive, the target never sees your traffic. Those two just open a normal connection, same as visiting the site in a browser.

Install

Needs Python 3.10+.

pip install osint-mcp-server

or if you use uv you don't need to install anything, just point the client at uvx (see below).

Claude Desktop

Add this to claude_desktop_config.json:

{
  "mcpServers": {
    "osint": {
      "command": "uvx",
      "args": ["osint-mcp-server"]
    }
  }
}

If you installed with pip, "command": "osint-mcp-server" with no args works too.

Claude Code

claude mcp add osint -- uvx osint-mcp-server

Cursor, Windsurf etc. take the same JSON as Claude Desktop.

Example prompts

  • "run recon on example.com and tell me what stands out"
  • "can someone spoof email from our domain? what should we fix first?"
  • "which of these 20 domains have certificates expiring this month?"
  • "what ip ranges does AS13335 announce?"
  • "check the security headers on these 5 sites and tell me which are worst"
  • "which of the subdomains of example.com resolve to something with open ports?"
  • "what did example.com/about look like in 2015?"

Caching

API responses (RDAP, crt.sh, Wayback, RIPEstat, InternetDB) are cached in sqlite for 6 hours at ~/.cache/osint-mcp/cache.sqlite3, mostly so crt.sh doesn't get hammered. DNS, TLS and HTTP checks are always live.

OSINT_MCP_CACHE=off           # disable
OSINT_MCP_CACHE_TTL=3600      # seconds
OSINT_MCP_CACHE_PATH=/tmp/x.db

Notes

  • crt.sh and the Wayback CDX API are slow and return 502/503 pretty often. The server retries a couple of times but sometimes you just have to try again later.
  • InternetDB isn't real-time and only has IPs Shodan has actually scanned.
  • DKIM selectors can't be listed, email_security tries the common ones. Pass dkim_selectors if you know yours.
  • .ro, .de and some other ccTLDs don't have public RDAP, so domain_whois can't do much for them.

Development

git clone https://github.com/robyroro/osint-mcp
cd osint-mcp
pip install -e . pytest
pytest

Tests don't hit the network, HTTP calls are mocked.

To poke at it with the MCP inspector:

npx @modelcontextprotocol/inspector osint-mcp

Be reasonable

This only pulls public data, but still: use it on your own stuff, bug bounty targets that are in scope, or for research. Don't use it to go after people.

License

MIT © Robert Vind-Gardoș (@robyroro)

Metadata

Release files for osint-mcp-server 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for osint-mcp-server 0.2.2
File Size Uploaded
osint_mcp_server-0.2.2.tar.gz 24.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for osint-mcp-server 0.2.2
File Interpreter ABI Platform
osint_mcp_server-0.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 45.2 kB

Release files / osint_mcp_server-0.2.2.tar.gz

Download URL osint_mcp_server-0.2.2.tar.gz
Size 24.6 kB
Tags Source
SHA-256 checksum
How to use checksums
fb15e979396f58321c83c8a4a0d594481847d9c7b50f9f893c43077d45a118fb
BLAKE2b-256 checksum
How to use checksums
ce6cbf29f6ff3515706723c2d21ab27c0bf702a5f5fd57fe8f56163114fd5058
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release files / osint_mcp_server-0.2.2-py3-none-any.whl

Download URL osint_mcp_server-0.2.2-py3-none-any.whl
Size 20.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
29b3c421ef32daf0dc166584a086ae7a0a836a14db7bea09bc64b9a8e23d0d24
BLAKE2b-256 checksum
How to use checksums
29bacf28e020d2683e5501b0b1a8779d7d690158b835e3ef69a9526b35c46a3d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.0

2 release files

This release

0.2.2 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page