OSINT Toolbox

io.github.renkagod由 GitHub 账号 renkagod 发布v1.1.0更新于 Oct 24, 2026

Run Sherlock, Maigret, Holehe, GHunt, theHarvester, SpiderFoot and more OSINT tools locally

发布方自己的服务:osint.foundation

概览

AI 生成的概览

在本地运行经典 OSINT 工具(Sherlock、Maigret、Holehe、GHunt、theHarvester、SpiderFoot 等),让助手查询用户名、邮箱、域名、电话和文件元数据。

可以做什么
用 Sherlock、Maigret、Blackbird 和 Holehe 跨站点搜索用户名与邮箱,用 GHunt(需登录)获取公开的 Google 账户数据。用 theHarvester、SpiderFoot、subfinder、dnstwist 和 dnsrecon 收集域名情报。用内置工具查询 WHOIS/RDAP、DNS 记录、证书透明度主机名和 Wayback 快照。用 PhoneInfoga 扫描电话号码,用 ExifTool 读取本地文件元数据(含 GPS)。检查已安装的工具及缺失工具的安装方法。
适用场景
适合经授权的安全评估、对自有账户或域名的调查,以及需要在同一助手界面下调用多种 OSINT 工具的场景。只有已安装的工具才会提供,因此会随你的环境自动调整。
运行要求
通过 uvx(需 Python 与 uv)或 Docker 镜像以 stdio 在本地运行。各工具需单独安装,可用内置安装命令或手动安装;SpiderFoot 与 Blackbird 需 git 检出并通过 OSINT_SPIDERFOOT_DIR、OSINT_BLACKBIRD_DIR 指定,ExifTool 可用 OSINT_EXIFTOOL 指定。GHunt 需一次性登录。需要网络访问,可通过 HTTP_PROXY 等变量设置代理。
安装前请注意
这些工具会收集真实个人与组织的信息,README 要求具备合法依据与授权,并遵守隐私法规和网站条款。扫描会直接查询公开第三方来源,可能触发限流或验证码。GHunt 需要本地保存的已登录 Google 会话。Docker 用户需以只读方式挂载文件供 ExifTool 使用。完整 SpiderFoot 扫描可能长达半小时,客户端可能超时。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

osint-toolbox-mcp

[License: MIT] [CI] [PyPI] [Donate]

An MCP server that lets AI agents run classic OSINT tools on your own machine: Sherlock, Maigret, Blackbird, Holehe, GHunt, theHarvester, SpiderFoot, subfinder, dnstwist, dnsrecon, PhoneInfoga and ExifTool, plus built-in WHOIS, DNS, certificate transparency and Wayback Machine lookups. No API keys and no cloud service in between: the tools run locally and query public sources directly.

Ask your assistant "which sites have an account for [email protected]?" or "what can you find about example.com?", and it picks the tools, runs them and reads the results for you.

Features

ToolGive itYou getNeeds
sherlock_username_searchusernameaccounts on 400+ sitesSherlock
maigret_username_searchusernameaccounts on up to 3000+ sites, with the profile data found on themMaigret
blackbird_username_searchusernameaccounts on the 700+ sites of the WhatsMyName listBlackbird checkout (not in the Docker image)
holehe_email_searchemail addresswhich of about 120 sites have an account for itHolehe
ghunt_google_searchGoogle account email or Gaia IDname, profile picture, Maps reviews, calendar and other public dataGHunt, logged in
theharvester_domain_searchdomain or company nameemail addresses, subdomains, hosts, IP addressestheHarvester
spiderfoot_scandomain, IP, email, phone, username, person name...findings grouped by typeSpiderFoot checkout
phoneinfoga_scanphone numbercountry, number formats, carrier (with an API key), search queriesPhoneInfoga
exiftool_metadatapath to a local fileGPS coordinates, camera, author, software, timestampsExifTool
subfinder_subdomain_searchdomainsubdomains from passive sources, with the sources that reported themsubfinder
dnstwist_lookalike_domainsdomainregistered lookalike domains (typos, homoglyphs, other TLDs) with their A, MX and NS recordsdnstwist
dnsrecon_domain_scandomainDNS records, zone transfer attempts, DNSSEC zone walkingdnsrecon
whois_lookupdomain, IP address, network or AS numberregistrar, dates, name servers, holder and contacts where public (RDAP, or WHOIS)built in
dns_lookupdomain name or IP addressA, AAAA, CNAME, MX, NS, TXT, SOA, CAA records, or the reverse namebuilt in
crtsh_certificate_searchdomainhost names and email addresses from TLS certificates issued for it (crt.sh)built in
wayback_snapshotsURL or domainarchived snapshots in the Wayback Machine, newest firstbuilt in
osint_toolbox_statusnothingwhich tools are installed, and how to install the missing onesbuilt in

Only installed tools are offered to the agent. Runs take from seconds to half an hour (a full SpiderFoot scan); requests run in parallel and can be cancelled.

Quick start

Pick one:

  • Docker: every tool but Blackbird in one image, nothing else to install.
  • uvx: one command installs the tools on your machine, without admin rights.

Docker

The image is large, so pull it once before adding the server; otherwise the first start can take longer than your client waits:

docker pull ghcr.io/renkagod/osint-toolbox-mcp

Add the server to your client:

json
{  "mcpServers": {    "osint-toolbox": {      "command": "docker",      "args": ["run", "-i", "--rm", "ghcr.io/renkagod/osint-toolbox-mcp"]    }  }}

Files for ExifTool, the GHunt login, API keys and proxies are covered in Docker details.

uvx

Install uv, then install the tools. This installs everything that is missing and checks that each tool starts; see Install the tools for what it does:

uvx osint-toolbox-mcp --install

Add the server to your client:

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

To run the latest code from main instead of a release, use uvx --from git+https://github.com/renkagod/osint-toolbox-mcp osint-toolbox-mcp.

Connect your client

One-click install:

Claude Desktop: download osint-toolbox-mcp-<version>.mcpb from the latest release and open it. Claude Desktop installs it as an extension and asks for the optional SpiderFoot, Blackbird and ExifTool locations; the other tools are found on PATH. You can also paste the JSON above into Settings → Developer → Edit Config.

Claude Code:

claude mcp add osint-toolbox -- uvx osint-toolbox-mcpclaude mcp add osint-toolbox -- docker run -i --rm ghcr.io/renkagod/osint-toolbox-mcp

Clients that read the mcpServers JSON above (paste it into the file):

ClientWhere the config lives
Cursor~/.cursor/mcp.json, or .cursor/mcp.json in a project
Windsurf~/.codeium/windsurf/mcp_config.json
ClineMCP Servers → Configure → cline_mcp_settings.json
Roo Code.roo/mcp.json in a project, or the global MCP settings
Gemini CLI~/.gemini/settings.json
Antigravityagent panel "…" → MCP Servers → Manage MCP Servers → View raw config
LM StudioProgram tab → Install → Edit mcp.json
Kiro~/.kiro/settings/mcp.json, or .kiro/settings/mcp.json in a project

Clients with their own format (shown with uvx; for Docker, use docker with the arguments run -i --rm ghcr.io/renkagod/osint-toolbox-mcp):

VS Code
code --add-mcp '{"name":"osint-toolbox","command":"uvx","args":["osint-toolbox-mcp"]}'

Or in .vscode/mcp.json:

json
{  "servers": {    "osint-toolbox": {      "type": "stdio",      "command": "uvx",      "args": ["osint-toolbox-mcp"]    }  }}
Codex CLI
codex mcp add osint-toolbox -- uvx osint-toolbox-mcp

Or in ~/.codex/config.toml, with a longer timeout for slow scans:

toml
[mcp_servers.osint-toolbox]command = "uvx"args = ["osint-toolbox-mcp"]tool_timeout_sec = 1800
Zed

In settings.json:

json
{  "context_servers": {    "osint-toolbox": {      "command": "uvx",      "args": ["osint-toolbox-mcp"],      "env": {}    }  }}
Goose

In ~/.config/goose/config.yaml:

yaml
extensions:  osint-toolbox:    name: osint-toolbox    type: stdio    cmd: uvx    args: [osint-toolbox-mcp]    enabled: true    timeout: 1800
opencode

In opencode.json:

json
{  "$schema": "https://opencode.ai/config.json",  "mcp": {    "osint-toolbox": {      "type": "local",      "command": ["uvx", "osint-toolbox-mcp"],      "enabled": true    }  }}
Continue

In .continue/mcpServers/osint-toolbox.yaml:

yaml
name: OSINT Toolboxversion: 1.0.0schema: v1mcpServers:  - name: osint-toolbox    type: stdio    command: uvx    args:      - osint-toolbox-mcp

Install the tools

Skip this if you use Docker, unless you want Blackbird.

uvx osint-toolbox-mcp --install

installs every tool that is missing, without admin rights, then checks that each one starts. uvx osint-toolbox-mcp --install sherlock maigret installs only the tools named. It needs uv and:

  • puts each Python tool (Sherlock, Holehe, Maigret, GHunt, theHarvester, dnstwist, dnsrecon) in its own environment with uv tool install, on Python 3.12: their dependencies conflict with each other, and some have no builds for newer Pythons. theHarvester and dnsrecon come from their latest GitHub releases;
  • downloads SpiderFoot and Blackbird from GitHub, each with its own virtual environment;
  • downloads PhoneInfoga, subfinder and ExifTool and checks them against the checksums their authors publish. On macOS and Linux, ExifTool needs Perl, which those systems usually have.

Checkouts and downloads go to %LOCALAPPDATA%\osint-toolbox-mcp on Windows, ~/Library/Application Support/osint-toolbox-mcp on macOS and ~/.local/share/osint-toolbox-mcp on Linux; set OSINT_TOOLBOX_HOME to use another folder. The server looks there by itself. GHunt still needs a one-time ghunt login afterwards.

uvx osint-toolbox-mcp --check shows, at any time, every tool as ok, missing (with how to install it) or broken (found but fails to start). The agent can ask the same through the osint_toolbox_status tool.

Installing by hand

ToolInstallTested with
Sherlockuv tool install sherlock-project0.16
Holeheuv tool install holehe1.61
Maigretuv tool install maigret0.6
GHuntuv tool install ghunt, then ghunt login2.3.4
theHarvesteruv tool install git+https://github.com/laramies/[email protected], or its newest release tag4.11.1
dnstwistuv tool install dnstwist --with dnspython --with tld --with idna20250130
dnsreconuv tool install git+https://github.com/darkoperator/[email protected], or its newest release tag1.6.3
subfindera binary from its releases, on PATH2.16.0
PhoneInfogaa binary from its releases, on PATH2.11.0
ExifToolexiftool.org, brew install exiftool or apt install libimage-exiftool-perl13.59
SpiderFoota checkout, see belowcommit 0f815a2
Blackbirda checkout, see belowcommit b455050

If a Python tool fails to build on your default Python, add --python 3.12 to its uv tool install.

SpiderFoot and Blackbird run from git checkouts. Give each its own .venv, which the server picks up automatically, and tell the server where the checkout is:

git clone https://github.com/smicallef/spiderfootcd spiderfootuv venv --python 3.12uv pip install -r requirements.txt

Then set OSINT_SPIDERFOOT_DIR to that folder in your client's config (env). Blackbird is the same with https://github.com/antoniaci/blackbird and OSINT_BLACKBIRD_DIR. SpiderFoot pins lxml<5, which has no builds for Python 3.13 and newer; to use a newer Python, apply patches/spiderfoot-requirements.patch first.

Configuration

All settings are environment variables, set in the env block of your client's config:

json
{  "mcpServers": {    "osint-toolbox": {      "command": "uvx",      "args": ["osint-toolbox-mcp"],      "env": {        "OSINT_SPIDERFOOT_DIR": "/home/me/spiderfoot",        "OSINT_EXIFTOOL": "/opt/exiftool/exiftool"      }    }  }}
VariableMeaning
OSINT_SHERLOCK, OSINT_HOLEHE, OSINT_MAIGRET, OSINT_GHUNT, OSINT_THEHARVESTER, OSINT_SUBFINDER, OSINT_DNSTWIST, OSINT_DNSRECON, OSINT_PHONEINFOGA, OSINT_EXIFTOOLFull path to the tool, when it isn't on PATH
OSINT_SPIDERFOOT_DIR, OSINT_BLACKBIRD_DIRFolder of the SpiderFoot or Blackbird checkout
OSINT_SPIDERFOOT_PYTHON, OSINT_BLACKBIRD_PYTHONPython to run the checkout with; by default its .venv, then python on PATH
OSINT_TOOLBOX_HOMEWhere --install puts checkouts and downloads, and where the server looks for them
OSINT_MAX_OUTPUT_CHARSLongest result returned to the model, 100000 by default; 0 for no limit
HTTP_PROXY, HTTPS_PROXY, ALL_PROXY, NO_PROXYUsed by the built-in lookups and --install (HTTP and SOCKS5 proxies), and passed on to the tools, which may or may not use them

Besides PATH, the server looks in the --install folder and in the folders uv tool and pipx install into (~/.local/bin by default), which desktop apps often leave out of PATH.

Docker details

  • Blackbird is not in the image: it has no license that allows redistributing it. Install it yourself to use it.

  • ExifTool: the container sees only mounted files. Add -v /path/to/files:/data:ro to the arguments and ask about /data/photo.jpg.

  • GHunt: log in once into a named volume, then mount it:

    docker run -it --rm --entrypoint ghunt -v osint-toolbox-ghunt:/home/osint/.malfrats ghcr.io/renkagod/osint-toolbox-mcp login

    GHunt's listening mode (option 1) doesn't work in a container; pick option 2 (paste from the GHunt Companion extension) or 3 (an oauth_token, see GHunt's README).

  • API keys: theHarvester reads /home/osint/.theHarvester/api-keys.yaml (mount your file there), PhoneInfoga reads its keys from environment variables (-e NAME=value).

  • Proxy: -e HTTPS_PROXY=http://host.docker.internal:8080, for example.

  • Tags: latest and version tags such as 1.0.0 for releases, edge for the current main. Built for linux/amd64 and linux/arm64.

A full configuration:

json
{  "mcpServers": {    "osint-toolbox": {      "command": "docker",      "args": [        "run", "-i", "--rm",        "-v", "/home/me/osint-files:/data:ro",        "-v", "osint-toolbox-ghunt:/home/osint/.malfrats",        "ghcr.io/renkagod/osint-toolbox-mcp"      ]    }  }}

Example requests

  • "Which sites have an account registered to [email protected]?"
  • "Search for the username jdoe_1987 with Sherlock and Maigret and compare what they find."
  • "What subdomains and email addresses are public for example.com?"
  • "Which lookalike domains of example.com are registered, and do any of them have mail servers?"
  • "Who owns example.com and when does it expire? Show me how its homepage looked in 2015."
  • "Read the metadata of /home/me/photo.jpg and tell me where and with what it was taken."
  • "Run a passive SpiderFoot scan of example.com and summarize the findings."

Troubleshooting

  • A tool is missing. Run uvx osint-toolbox-mcp --install, or --check to see why a tool isn't found (docker run --rm ghcr.io/renkagod/osint-toolbox-mcp --check for the image). After installing, restart your client so it lists the new tools. Desktop apps often start servers with a shorter PATH than your terminal; set the tool's OSINT_* variable to its full path.
  • Long scans time out. Many clients stop waiting for a tool after a minute or so. Raise the limit where your client allows it: MCP_TOOL_TIMEOUT in milliseconds for Claude Code, tool_timeout_sec for Codex CLI, timeout in milliseconds on the server entry for Gemini CLI, timeout in seconds for Goose. Otherwise ask for faster runs: a passive SpiderFoot scan, Maigret without all_sites.
  • GHunt fails. It needs a valid login: run ghunt login. When the saved session has been revoked, ghunt login itself fails; run ghunt login --clean to delete it, then ghunt login.
  • Empty results, errors or captchas. Sites rate-limit and change their pages; retry later, lower the load, or go through a proxy. If a tool fails the same way outside the server, report it to that tool's project.
  • Windows and .bat or .cmd wrappers. Arguments to such wrappers pass through cmd.exe, so the server refuses inputs with characters like & or |; point the OSINT_* variable at the real executable instead.

Responsible use

These tools collect information about real people and organizations. Use them only where you have a lawful basis and authorization: your own accounts, security assessments within scope, research that respects privacy law (GDPR, CCPA and local equivalents) and the sites' terms of service. Don't use them to stalk, harass, dox or otherwise harm anyone. You are responsible for what you run and for what you do with the results.

Contributing

Issues and pull requests are welcome; see CONTRIBUTING.md. Report vulnerabilities privately as described in SECURITY.md. Changes are listed in the changelog.

Credits

The tools belong to their authors and keep their own licenses: Sherlock, Maigret, Holehe, GHunt, theHarvester, SpiderFoot, Blackbird, PhoneInfoga, ExifTool. The server starts them as separate programs; the Docker image contains them unmodified.

This project started from frishtik/osint-tools-mcp-server (MIT).

Support

If this project is useful to you, you can support it with crypto: donation addresses.

License

MIT — Copyright (c) 2026 renkagod.

来源:README.md,提交 eb4eeb3

工具

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

版本历史

1
  1. v1.1.0最新Sep 23, 2026

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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

其他 Osint 集成