user-scanner README

The project's README from github.com/kaifcodec/user-scanner. As one markdown file: README.md.

User Scanner

User Scanner Logo

Discord

kaifcodec%2Fuser-scanner | Trendshift


A powerful 2-in-1 OSINT suite engineered for deep Email and Username Intelligence.

With 550+ total scan vectors—including 175+ email-integrated sites and 375+ username platforms—you can map digital footprints, analyze target behavior, uncover interests, full metadata of usernames and verify account registrations in seconds.


💖 Sponsored by

WebVetted Sponsor Banner
Go beyond account enumeration. WebVetted turns an email or username into a complete identity investigation with deep OSINT enrichment, breach intel, AI analysis, and an interactive identity graph.
Start an Investigation →


banner-github
Comprehensive OSINT platform for professional investigators and analysts. Reverse email, phone number, and username search across 250+ modules. Automate your intelligence gathering with our powerful tools.
Get Started →


banner-github
Find beginner-friendly open-source issues and make your first pull request today.
Get Started →


✨ Key Features


🚀 Installation

# Upgrade pip and install user-scanner
python3 -m pip install --upgrade pip
pip install user-scanner

# Optional: Install with MCP Server support for AI agents
pip install "user-scanner[mcp]"

📦 Virtual Environment Setup

# Create and activate virtual environment
python3 -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\Activate.ps1

# Install package
pip install user-scanner

❄️ Via Nix (Linux & macOS)

# Run instantly without installing permanently
nix run github:kaifcodec/user-scanner/main -- --help

# Drop into a temporary shell with user-scanner active
nix shell github:kaifcodec/user-scanner/main

💻 Usage Guide

1. Basic Username & Email Scanning

Scan a single username or email address across all available platform modules:

user-scanner -u johndoe             # Single username scan
user-scanner -e [email protected]   # Single email scan

2. Cross-Scan & Pivot Intelligence

An email scan proves an account exists but rarely reveals a handle. --cross-scan mines exposed handles, profile links, and secondary email addresses from target profiles, pivoting into multi-pass reconnaissance across all matching platforms:

Pivot Direction What it Mines
-e → username Handles or social links exposed on an email's registered profile
-u → username Secondary aliases advertised across target social profiles
-u → email Public email addresses published on target profile pages
-e → email Secondary addresses exposed by initial email profiles
user-scanner -u johndoe --cross-scan                                  # Pivot from username scan
user-scanner -e [email protected] --cross-scan                        # Pivot from email scan
user-scanner -e [email protected] --cross-scan --cross-links verified # Platform-verified links only
user-scanner -u johndoe --cross-scan --cross-depth 2        # Follow links two hops deep

💡 *For confidence scoring, link classification rules, and cost models, see docs/CROSS_SCAN.md.*

3. Hudson Rock Malware Breach Intelligence

Check if a target username or email address has been exposed in infostealer malware infection logs:

user-scanner -u johndoe --hudson             # Username malware log check
user-scanner -e [email protected] --hudson   # Email malware log check

🖼️ *To view output terminal screenshots and visual previews, see docs/EXAMPLES.md.*

4. Targeted Category & Module Scanning

Scan specific categories or individual modules, or list available modules in a responsive grid:

user-scanner -u johndoe -c dev                # Developer platforms only
user-scanner -e [email protected] -m github   # Single module check
user-scanner -u johndoe -m github,instagram   # Specific comma-separated modules

user-scanner -lu                              # List user categories & modules grid
user-scanner -le                              # List email categories & modules grid

5. Bulk File Scanning

Scan multiple targets from an input file (one target per line):

user-scanner -uf usernames.txt   # Bulk username scan
user-scanner -ef emails.txt      # Bulk email scan

6. Report Exports, Options & Proxies

# Export results to PDF, JSON, or CSV
user-scanner -u johndoe -f pdf -o report.pdf
user-scanner -u johndoe -f json -o results.json

# Verbose URL reporting and show all results (including not found)
user-scanner -u johndoe -v --all

# Rotate proxies with pre-scan validation check
user-scanner -u johndoe -P proxies.txt --validate-proxies

7. AI & LLM Agent Integration (MCP Server)

Connect user-scanner directly to AI coding assistants and LLM platforms via the Model Context Protocol (MCP). This enables AI agents (Claude Desktop, Cursor, Antigravity, Open-WebUI) to autonomously investigate handles and emails, pivot on exposed profiles, and analyze digital footprints.

Starting the Server

# Start the MCP server over standard I/O (stdio)
user-scanner-mcp

# Optional: Enable verbose logging to stderr
user-scanner-mcp -v

MCP Client Configuration

Add user-scanner to your client configuration (e.g. claude_desktop_config.json or mcp_config.json):

{
  "mcpServers": {
    "user-scanner": {
      "command": "user-scanner-mcp"
    }
  }
}

Exposed AI Tools

Tool Description Capabilities
scan_username Deep username OSINT & profile enrichment across platforms Targeted scans (category, module), recursive cross_scan, proxy injection, loudness toggles
scan_email Deep email verification & account discovery across platforms Target scoping, automated link pivoting (cross_scan), custom proxies, loudness toggles
list_available_modules Dynamic catalog & module discovery Allows AI agents to query all supported platforms and categories dynamically

📚 Documentation Hub

Explore detailed documentation guides in the docs/ directory:


🐍 Python Library Mode

Integrate the User Scanner engine directly into your Python scripts:

import asyncio
from user_scanner.core import engine
from user_scanner.email_scan.shopping import etsy

async def main():
    # Engine validates target against module and returns Result object
    result = await engine.check(etsy, "[email protected]")
    print(result.to_json())

asyncio.run(main())

💡 *For complete Python API documentation and batch category checking examples, see docs/USAGE.md.*


💖 Support the Project

Web platforms constantly update authentication flows. Maintaining over 550+ scan modules requires around-the-clock commitment to keep the suite reliable and free for the cybersecurity community.

If user-scanner has saved you hours of manual pivoting or aided your investigations, consider supporting the project:

👉 Sponsor on GitHub

Project Sponsors

Huge thanks to our amazing sponsors who support the ongoing development of user-scanner!

soxoj
@soxoj
hienyimba
@hienyimba
InDieTasten
@InDieTasten

📜 Contributing

We welcome community contributions! Please read our Contributing Guidelines before opening a PR or submitting new scan modules.


⚠️ Disclaimer

This tool is provided strictly for educational purposes, authorized security research, and defensive OSINT investigations. The developers assume no liability and are not responsible for any misuse, unintended consequences, or legal actions resulting from the deployment of this software.

user-scanner (kaifcodec/user-scanner)

Searching Database…

这是什么?User Scanner 是一款 OSINT(开源情报)命令行工具,输入一个邮箱地址或用户名,即可在 2720 多个平台上进行扫描(邮箱相关检测方式 210 多种,用户名相关检测方式 2510 多种),以梳理数字足迹、抓取账号资料元数据,并找出关联账号。
它是命令行工具,还是我要在代码里调用的东西?它主要是命令行工具,同时也提供 Python 库模式,可以用代码调用扫描引擎;还内置 MCP 服务器,让 Claude Desktop、Cursor 等 AI 智能体自行运行扫描。
我该如何安装和运行?可以通过 PyPI 安装(推荐),在虚拟环境中设置,或在 Linux/macOS 上通过 Nix 安装;然后针对单个用户名或邮箱,在所有可用模块上运行扫描。
扫描时底层依赖什么?它基于 Python 构建,使用 httpx 和 curlcffi 发起高并发请求,并自动模拟 TLS 指纹,以避免被检测。
扫描为什么会失败,或者为什么需要代理?目标网站经常更改认证流程,因此模块可能随时间失效;工具内置代理轮换功能,并带有健康校验(--validate-proxies),用于应对速率限制和区域封锁。
这个工具是为谁设计的?面向安全研究人员、红队人员、渗透测试人员,以及在获得授权的前提下开展数字足迹追踪和泄露数据关联分析工作的 OSINT 调查人员。
它也能在 Windows 上运行吗?它是一个可通过 PyPI 安装的 Python 包,只要能运行 Python 的地方都可以使用;Nix 安装方式明确仅适用于 Linux 和 macOS。
使用它有没有法律或伦理上的问题?该工具明确仅供教育目的和获得授权的安全研究使用;开发者不对滥用行为承担任何责任。
--cross-scan 具体做什么?它会从目标已发现的账号中挖掘用户名、主页链接和备用邮箱,然后自动以这些新发现的标识符再进行第二轮扫描,以进行更深入的侦察。
--hudson 参数是做什么用的?它会查询 Hudson Rock 的信息窃取型恶意软件泄露日志,检查目标用户名或邮箱是否出现在被感染设备的数据中,适用于高优先级的泄露关联分析。
Claude 这类 AI 智能体能直接使用它吗?可以。user-scanner 自带原生 MCP 服务器,提供 scan-username、scan-email 和 list-available-modules 工具,因此 Claude Desktop、Cursor 或 Antigravity 中的智能体可以自主进行 OSINT 调查和关联追踪。
可以导出哪些报告格式?扫描结果可导出为 PDF(包括账号头像)、JSON 和 CSV,便于接入后续流水线处理。
Creator
kaifcodec
Size
2.5 MB
Stars
5.4K
Age
11mo
Commits · 90 Days