Eidolon

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

Privacy-first OSINT scanner: breaches, credentials, Shodan, username sweep. Scored PDF report.

概览

AI 生成的概览

本地运行的隐私优先 OSINT 扫描器,让助手对邮箱或目标发起足迹扫描并读取带评分的泄露与暴露报告。

可以做什么
  • 启动后台扫描并轮询扫描状态直至完成
  • 列出历史扫描并获取其报告
  • 读取含风险评分与 MITRE ATT&CK 映射的 Markdown、PDF 或 JSON 报告
  • 在明确请求时显示默认被遮蔽的泄露凭据档案
适用场景
适合检查自己的数字足迹,或经明确授权评估的目标,例如数据泄露、泄露凭据、暴露主机与数据经纪商记录,并把结果整理成风险报告。
运行要求
以 stdio 本地运行,需要 Python 3.11+ 与 uv,可从代码仓库克隆或经 uvx 从 PyPI 启动。可选:本地 Ollama 模型生成叙述文字、运行中的 SpiderFoot 实例,以及在 env 中传入 HIBP_API_KEY、DEHASHED_API_KEY、OLLAMA_HOST 等密钥;缺失的密钥会被跳过并逐项注明。
安装前请注意
扫描会收集关于个人的泄露、凭据与公开记录数据,仅可用于自己或获授权的目标;README 明确警告不要未经同意对他人进行画像或监视。凭据档案含泄露库中的明文密码,在调用 reveal_credentials 前保持遮蔽。所配置的 API 密钥可能对应付费服务,且须遵守各数据源条款与适用法律。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[Eidolon]

Eidolon

Eidolon is a privacy-first approach to finding and understanding your digital footprint. The stack uses OSINT tools to gather information based on your search parameters, then a local LLM compiles it into a report. The LLM runs on your machine, so no data ever reaches an external service or leaves your box — you own your data.

What it does

  • Aggregates ~25 OSINT sources — breaches, leaked credentials, data brokers, account enumeration, public records, phone/email intel, exposed hosts — into a single risk report.
  • Maps findings to MITRE ATT&CK so you see what an attacker could actually do with what's exposed.
  • Flags AI-training exposure (which platforms may train on your data, and how to opt out).
  • Risk scoring and the leaked-credential dossier are deterministic — built from scan state, not the LLM — so the report survives an LLM hiccup. The model only writes narrative.
  • Outputs Markdown, PDF, and JSON.

MCP-native

Eidolon runs as an MCP server, so you can drive it from any MCP client (Claude Desktop, Claude Code) — scan a target, list past scans, and read reports conversationally. It runs locally over stdio; your data never leaves the box.

Tools: scan_target, scan_status, list_scans, get_report, reveal_credentials. A scan takes minutes, so scan_target returns a scan_id immediately and runs in the background — poll scan_status(scan_id) until it reports done, then get_report(scan_id). The leaked-credential dossier (plaintext passwords from breach dumps) is redacted by default and only returned when you explicitly call reveal_credentials.

Requirements

Everything below is optional — Eidolon runs with whatever you give it and tells you, per source, what it couldn't check (no token) versus what it checked and found nothing.

  • Python 3.11+ and uv (required)
  • Ollama for the local LLM narrative: ollama pull llama3.1:8b — if it's down, the report is still produced deterministically (just no written narrative).
  • A running SpiderFoot instance — skipped if unreachable.
  • API keys — see .env.example. Each unlocks one data source and skips cleanly if absent (the report says "not checked — set X"). A scan with no keys is sparse but still runs.

New here? Start with the Setup & Configuration guide — which keys to get, what each one costs, and what it unlocks.

Quickstart

bash
git clone https://github.com/sudohnim/eidolon && cd eidolonuv synccp .env.example .env        # fill in your keys
# scan yourself from the CLIuv run eidolon --email [email protected]
# or run the MCP server (stdio)uv run eidolon-mcp

Use from Claude Desktop

Option 1 — from a local clone (loads .env from cwd):

json
{  "mcpServers": {    "eidolon": {      "command": "uv",      "args": ["run", "eidolon-mcp"],      "cwd": "/absolute/path/to/eidolon"    }  }}

Option 2 — from PyPI via uvx (recommended, no clone needed). Pass your keys in the env block:

json
{  "mcpServers": {    "eidolon": {      "command": "uvx",      "args": ["--from", "eidolon-osint", "eidolon-mcp"],      "env": {        "HIBP_API_KEY": "...",        "DEHASHED_API_KEY": "...",        "OLLAMA_HOST": "http://localhost:11434"      }    }  }}

Option 3 — straight from GitHub (pre-release / latest commit):

json
{  "mcpServers": {    "eidolon": {      "command": "uvx",      "args": ["--from", "git+https://github.com/sudohnim/eidolon", "eidolon-mcp"],      "env": {        "HIBP_API_KEY": "...",        "DEHASHED_API_KEY": "...",        "OLLAMA_HOST": "http://localhost:11434"      }    }  }}

Add only the keys you have — the rest skip cleanly. Then ask Claude to "scan my email"; it calls scan_target, polls scan_status, and reads the report.

How it works

A LangGraph pipeline: intake → wave 1 scans → wave 2 scans → MITRE mapping → correlation → analysis → report. Both the CLI and the MCP server call the same run_scan() core; reads go through a small repository layer. See docs/ROADMAP.md for the architecture and where it's headed (stateful history, continuous monitoring).

Intended use

Eidolon is for scanning yourself, or targets you are explicitly authorized to assess (authorized security testing, your own footprint). It surfaces real secrets, including plaintext passwords from breach dumps. Do not use it to profile or surveil people without their consent. You are responsible for complying with the terms of the data sources you configure and with applicable law.

License

AGPL-3.0. If you run a modified version as a network service, you must offer users its source.

来源:README.md,提交 f86f3e0

工具

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

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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