PluginWorld
Th

theharvester-mcp

MCP

Enables AI agents and MCP clients to run on-demand OSINT harvests for public emails, subdomains, hostnames, IPs, and LinkedIn profiles, returning structured JSON and allowing prior results to be retrieved by harvest ID.

@devkindhq · MIT License · updated today

SECURITY

B

SCORE

60

STARS

▲ 0

PLUG IN

git clone https://github.com/devkindhq/theharvester-mcp.git

See the README to configure this MCP server

README

theHarvester MCP Server: OSINT email and subdomain discovery for AI agents

theHarvester MCP Server wraps theHarvester in a Model Context Protocol server so Claude Code, Cursor, or any MCP client can harvest public emails, subdomains, hostnames, IPs, and LinkedIn profiles for a domain on demand. Multi-arch Docker image, stdio transport, no API keys for the default free sources.

It is built for lead generation and prospecting: ask your agent "find public contacts for example.com" and it calls the harvest tool, which fans out to sources like crtsh, hackertarget, urlscan, and DuckDuckGo, then returns structured JSON. Harvests run asynchronously with configurable concurrency and timeouts, and results stay retrievable by harvest ID.

Quick start

docker pull devkind/theharvester-mcp

Add to .mcp.json (Claude Code) or your MCP client config:

{
  "mcpServers": {
    "theharvester": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "devkind/theharvester-mcp"]
    }
  }
}

Then ask your agent: "Harvest example.com using free sources."

Tools

Tool What it does
harvest Run an OSINT harvest on a domain (sources: free, all, or comma-separated)
get_harvest_results Fetch a previous harvest by ID
list_active_harvests Show currently running harvests
list_sources List all available sources and which need API keys

Seven sources work with no API key: crtsh, hackertarget, dnsdumpster, rapiddns, urlscan, otx, and duckduckgo. Sources like shodan, censys, and virustotal need keys configured in the theHarvester install.

Example call and output

Tool call: harvest with {"domain": "example.com", "sources": "free"}

{
  "harvest_id": "a1b2c3d4",
  "domain": "example.com",
  "status": "completed",
  "duration_seconds": 42.5,
  "sources_used": ["crtsh", "hackertarget", "urlscan"],
  "summary": {"emails": 3, "hosts": 27, "ips": 12, "linkedin": 2},
  "emails": ["info@example.com", "support@example.com", "press@example.com"],
  "hosts": ["www.example.com", "api.example.com", "mail.example.com"]
}

Output is illustrative; real counts depend on the target domain and source availability. The harvest tool accepts domain (required), sources (free, all, or a comma-separated list), limit, and timeout; invalid domains are rejected before any network call.

Configuration

Environment variables: THEHARVESTER_TIMEOUT (default 120s), THEHARVESTER_MAX_CONCURRENT (default 2), THEHARVESTER_OUTPUT_DIR (default /app/output).

Responsible use

theHarvester collects only publicly published information, but OSINT tooling attracts scrutiny. Use this server only on domains you own or have written permission to research, and for lawful purposes such as security assessment, asset inventory, and business prospecting against public business contact data. Respect each source's terms of service and applicable privacy and anti-spam law (GDPR, CAN-SPAM, PECA) when acting on harvested contacts. The maintainers are not responsible for misuse.

Roadmap

  • MCP Registry listing (server.json + publisher CLI)
  • Optional Smithery / Glama listings
  • Pinned theHarvester version releases alongside latest
  • CI workflow building and pushing the multi-arch image on tag

License and contributing

MIT © Devkind. Issues and PRs welcome, see CONTRIBUTING.md and SECURITY.md.

Built by Devkind. Maintained by Kazim Ali.

SIMILAR PLUGINS