User Scanner logo

User Scanner

CommunityPopular
kaifcodec

πŸ•΅οΈβ€β™‚οΈ (2-in-1) Email & Username OSINT suite featuring native MCP support for deep data extraction just from a single Email/Username. Analyzes 1080+ actively maintained scan vectors (200+ email / 880+ username) for security research, investigations, and digital footprinting.

Publisherkaifcodec
Repositoryuser-scanner
LanguagePython
Forks
501
Stars
5K
Available tools
0
Transport typestdio
Categories
LicenseMIT
Links
  • Connect tools to AI workflows

    User Scanner exposes MCP capabilities that can be used by compatible AI clients and agents.

  • 0 available tools

    Browse the callable actions below, including names and descriptions when provided by the server.

  • Ready-to-copy setup

    Use the installation snippets to configure this server in your preferred MCP client.

  • Open source signals

    5K stars and 501 forks from the linked repository.

User Scanner


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

With 1080+ total scan vectorsβ€”including 200+ email-integrated sites and 880+ username platformsβ€”you can map digital footprints, analyze target behavior, uncover interests, full metadata of usernames and verify account registrations in seconds.


πŸ’– Sponsored by




✨ Key Features

  • πŸ”Ž Deep Email & Username OSINT: Look up email registrations and perform advanced username profiling across 1080+ platforms.
  • πŸ‘€ Rich Metadata Scraping: Scrapes avatars, bio descriptions, follower counts, UID numbers, seller statuses, and account attributes.
  • πŸ”€ Cross-Scan & Pivot Engine: Mines handles, profile links, and exposed email addresses from initial scans, automatically pivoting across secondary target vectors.
  • πŸ€– Model Context Protocol (MCP) Server: Native AI agent integration for Claude Desktop, Cursor, Antigravity, and LLMs to run autonomous OSINT scans and recursive pivots.
  • πŸ›‘οΈ Hudson Rock Infostealer Breach Intel: Query infostealer malware breach logs using the --hudson flag for high-priority target correlation.
  • ⚑ High-Throughput Parallel Engine: Powered by httpx and curl_cffi for maximum concurrency with automated TLS fingerprint impersonation.
  • πŸ”€ Permutation & Alias Generator: Wildcard-based username variation generation to catch typosquatting or alternative aliases.
  • πŸ“‚ Multi-Format Reports: Automated exports to PDF (with profile photos), JSON, and CSV for pipeline integration.
  • 🌐 Advanced Proxy Pivoting: Built-in proxy rotation with protocol auto-detection (http, socks5) and pre-scan health validation (--validate-proxies).
  • 🎨 Responsive Terminal UI: Dynamic progress tracking, self-adaptive category grids (-lu/-le), and clear status reporting.

πŸš€ Installation

🐍 Via PyPI (Recommended)

bash
# 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

bash
# 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)

bash
# 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:

bash
user-scanner -u johndoe             # Single username scan
user-scanner -e johndoe@gmail.com   # Single email scan
user-scanner -u johndoe --email-domains global  # Try johndoe across provider domains

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 DirectionWhat it Mines
-e β†’ usernameHandles or social links exposed on an email's registered profile
-u β†’ usernameSecondary aliases advertised across target social profiles
-u β†’ emailPublic email addresses published on target profile pages
-e β†’ emailSecondary addresses exposed by initial email profiles
bash
user-scanner -u johndoe --cross-scan                                  # Pivot from username scan
user-scanner -e johndoe@gmail.com --cross-scan                        # Pivot from email scan
user-scanner -e johndoe@gmail.com --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:

bash
user-scanner -u johndoe --hudson             # Username malware log check
user-scanner -e johndoe@gmail.com --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:

bash
user-scanner -u johndoe -c dev                # Developer platforms only
user-scanner -e johndoe@gmail.com -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):

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

6. Report Exports, Options & Proxies

bash
# 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

bash
# 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):

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

Exposed AI Tools

ToolDescriptionCapabilities
scan_usernameDeep username OSINT & profile enrichment across platformsTargeted scans (category, module), recursive cross_scan, proxy injection, loudness toggles
scan_emailDeep email verification & account discovery across platformsTarget scoping, automated link pivoting (cross_scan), custom proxies, loudness toggles
list_available_modulesDynamic catalog & module discoveryAllows 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:

python
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, "test@gmail.com")
    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 1080+ 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!


πŸ“œ 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.

Installation

TypingMind
{
  "mcpServers": {
    "user-scanner": {
      "command": "user-scanner-mcp",
      "args": []
    }
  }
}

Use User Scanner MCP with multiple AI models

TypingMind connects MCP tools at the workspace level, so once User Scanner is connected, you can use it with different AI models in TypingMind instead of setting it up separately for each model. This MCP runs locally through the TypingMind MCP connector on your device.

Setup guide to use the local connector

Use this when the MCP server needs access to local files, apps, or private resources on your computer.

1

Open the MCP settings

In TypingMind, go to Settings, Advanced Settings, then Model Context Protocol and choose Setup Connector.

  1. Open TypingMind in your browser.
  2. Click the Settings icon.
  3. Go to Advanced Settings.
  4. Open the Model Context Protocol section.
  5. Click Setup Connector and choose This Device.
TypingMind MCP connector setup screen with This Device selected
2

Run the connector command

Choose This Device, copy the command from TypingMind, and run it in Terminal. Keep the process running while you use MCP.

  1. Copy the setup command shown by TypingMind.
  2. Open Terminal on macOS or Windows Terminal on Windows.
  3. Paste and run the command.
  4. Approve the package install if Terminal asks you to proceed.
  5. Keep the Terminal window running while using MCP tools.
3

Add User Scanner as a server

When the connector status is Ready, click Edit Servers and paste the MCP server configuration.

  1. Wait until the connector status shows Ready.
  2. Click Edit Servers.
  3. Paste the User Scanner MCP server configuration.
  4. Save the server list.
  5. Refresh if you want to confirm the connector is still ready.
TypingMind MCP settings showing active server and Edit Servers button
{
  "mcpServers": {
    "user-scanner": {
      "command": "npx",
      "args": [
        "-y",
        "<mcp-server-package>"
      ]
    }
  }
}
4

Use it across models

Save the server list, open Plugins, enable the User Scanner MCP tools, then select any supported AI model in TypingMind and use the tools in chat or assign them to an AI agent.

  1. Open the Plugins page in TypingMind.
  2. Enable the User Scanner MCP tools.
  3. Start a chat and choose the AI model you want to use.
  4. Use the MCP tools in chat or assign them to an AI agent.
  5. Switch to another AI model whenever needed without reconnecting MCP.
TypingMind chat using enabled MCP tools with a selected AI model
Can you use User Scanner to help me with this task?
User Scanner
Sure. I read it.
Here is what I found using User Scanner.

Frequently asked questions

What is the User Scanner MCP server used for?

User Scanner is an MCP server that lets compatible AI clients connect to external tools and context. In TypingMind, you can add this MCP server once and make its tools available in your AI workspace.

Can I use User Scanner MCP with multiple AI models in TypingMind?

Yes. TypingMind connects MCP tools at the workspace level, so you can use User Scanner with different AI models such as Claude, ChatGPT, Gemini, or other models you have configured in TypingMind without setting up the MCP server separately for each model.

Why use User Scanner MCP with TypingMind?

TypingMind is one of the best frontends for LLM chat because it brings multiple AI models, prompts, plugins, AI agents, API keys, and MCP tools into one workspace. With User Scanner connected, you can use its MCP tools across your preferred models while keeping your chat workflow organized in TypingMind.

How do I connect User Scanner MCP to TypingMind?

User Scanner runs through the TypingMind local MCP connector. This is best when the MCP server needs access to local files, desktop apps, command-line tools, or private resources on your computer.

What tools does User Scanner MCP provide in TypingMind?

User Scanner exposes MCP capabilities that can be enabled from the TypingMind Plugins page and used in chat or assigned to AI agents.

Do I need to share my API keys with TypingMind to use User Scanner MCP?

No. TypingMind is local-first and lets you keep your model providers, API keys, prompts, and MCP configuration under your control. If User Scanner requires authentication, add the required headers, OAuth settings, or local configuration for that MCP server when you create the connection.

Related MCP Servers

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter πŸ‘‡