StealthMole MCP Server
Enables access to StealthMole's threat intelligence API for searching and monitoring threats across Deep & Dark Web, Telegram channels, leaked credentials, and ransomware incidents. Provides comprehensive cybersecurity intelligence through natural language queries.
README
StealthMole MCP Server
MCP (Model Context Protocol) server for accessing StealthMole threat intelligence API. Search and monitor threats across Deep & Dark Web through Claude and other MCP clients.
Features
š Comprehensive API Coverage
- Darkweb Tracker (DT): Search Deep & Dark web content across 50+ indicators
- Telegram Tracker (TT): Search Telegram channels, users, and messages
- Credential Lookout (CL): Search leaked credentials from breaches
- Compromised Data Set (CDS): Search infected device leaks from stealer malware
- Combo Binder (CB): Search ID/Password combo leaks
- ULP Binder (UB): Search URL-Login-Password format leaks
- Ransomware Monitoring (RM): Monitor ransomware group breach incidents
- Government Monitoring (GM): Monitor threats against government sector
- Leaked Monitoring (LM): Monitor threats against enterprise sector
- Management API: Track API usage quotas
š Authentication
- JWT-based authentication with HS256 signing
- Automatic token generation and management
- Secure session-level credential storage
Prerequisites
- Python: 3.10 or higher
- StealthMole API Credentials: Get your access_key and secret_key from StealthMole
- Smithery API key (optional): For deployment at smithery.ai/account/api-keys
Installation
Development Setup
# Install dependencies
uv sync
# Run the server
uv run dev
# Test interactively
uv run playground
Using with Claude Desktop
Add to your Claude Desktop configuration file:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"stealthmole": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/stealthmole-mcp",
"run",
"start"
],
"env": {
"STEALTHMOLE_ACCESS_KEY": "your_access_key",
"STEALTHMOLE_SECRET_KEY": "your_secret_key"
}
}
}
}
Replace /absolute/path/to/stealthmole-mcp with the actual path to this directory.
Available Tools
Darkweb Tracker
dt_search_targets
Get list of searchable targets for an indicator
indicator: keyword, email, domain, ip, bitcoin, etc.
Returns: Available targets for the indicator
dt_search_target
Search for specific indicator and targets
indicator: Search type
targets: Comma-separated target list
text: Search query (supports AND, OR, NOT)
limit: Results limit (max: 100)
order_type: createDate or value
order: asc or desc
dt_search_all
Search across all targets for an indicator
indicator: Search type
text: Search query
limit: Results limit (max: 100)
dt_search_by_id
Get paginated results using search ID
search_id: ID from previous search
cursor: Pagination cursor
limit: Results limit (max: 100)
dt_get_node_details
Get detailed information for a node
node_id: Node ID from search results
parent_id: Optional parent node ID
data_from: Include data source list
include_url: Include URL list
include_contents: Include HTML source
Telegram Tracker
tt_search_targets
Get searchable targets for Telegram indicator
indicator: keyword, telegram.channel, telegram.user, etc.
tt_search_target
Search Telegram for specific targets
indicator: Search type
targets: Comma-separated target list
text: Search query
limit: Results limit (max: 100)
tt_get_node_details
Get detailed Telegram node information
node_id: Node ID from search results
Credential Lookout
cl_search
Search for leaked credentials
query: Search with indicators (domain:, email:, id:, password:, after:, before:)
limit: Results limit (max: 50)
cursor: Pagination cursor
start/end: UTC timestamp filters
Example queries:
domain:example.com- All leaks for domainemail:user@example.com- Specific email leaksdomain:example.com AND after:2024-01- Recent leaks
Compromised Data Set
cds_search
Search infected device leaks
query: Search with indicators (domain:, url:, email:, id:, password:, ip:, country:, after:, before:)
limit: Results limit (max: 50)
cds_get_node_details
Get detailed CDS information (requires Cyber Security Edition)
node_id: Node ID from search results
Returns: Stealer path, type, and full device info
Combo Binder
cb_search
Search ID/Password combo leaks
query: Search with indicators (domain:, email:, id:, password:, after:, before:)
limit: Results limit (max: 50)
ULP Binder
ub_search
Search URL-Login-Password format leaks
query: Search with indicators (domain:, url:, email:, id:, password:, after:, before:)
limit: Results limit (max: 50)
Monitoring APIs
rm_search - Ransomware Monitoring
Monitor ransomware group breach incidents
query: Optional (torurl:, domain:) or empty for recent
limit: Results limit (max: 50)
order_type: detectionTime, victim, or attackGroup
gm_search - Government Monitoring
Monitor threats against government sector
query: Optional (url:, id:) or empty for recent
limit: Results limit (max: 50)
order_type: detectionTime, title, or author
lm_search - Leaked Monitoring
Monitor threats against enterprise sector
query: Optional (url:, id:) or empty for recent
limit: Results limit (max: 50)
Management
get_user_quotas
Get API usage quotas for current month
Returns: Allowed and used queries per service
Search Query Syntax
Indicators
Darkweb Tracker supports 50+ indicators:
Network: domain, ip, tor, torurl, i2p, i2purl, url Identity: email, id, tel, kssn Financial: bitcoin, ethereum, monero, creditcard Files: document, exefile, image, hash, blueprint Social: facebook, twitter, instagram, telegram, discord Security: cve, ioc, malware
Operators
- AND: Both terms must be present
- OR: Either term must be present (max 3 per query)
- NOT: Exclude term from results
- Max total: 5 operators per query
Examples
keyword search:
"ransomware"
Indicator search:
email:user@example.com
domain:target.com
bitcoin:1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
Combined operators:
domain:example.com AND email:admin
ip:192.168.1.1 OR ip:10.0.0.1
domain:target.com AND NOT test
Time filters:
domain:example.com AND after:2024-01
email:admin AND before:2024-06-01
Resources
The server provides built-in documentation resources:
stealthmole://api-info- API overview and service informationstealthmole://indicators- Complete list of Darkweb Tracker indicators
Error Handling
Common API error codes:
401- Invalid or expired token400- Invalid parameters (limit, cursor, etc.)404- Resource not found422- Bulk export required (>1M results)426- Query limit exceeded
API Limits
- Darkweb Tracker: Max 100 results per request
- Other APIs: Max 50 results per request
- Operators: Max 3 OR, max 5 total per query
- Bulk Export: Contact support for >1M results
Development
Project Structure
stealthmole-mcp/
āāā src/stealthmole_mcp/
ā āāā __init__.py
ā āāā server.py # Main server implementation
āāā pyproject.toml # Project configuration
āāā README.md # This file
Running Tests
# Interactive testing
uv run playground
# Try example queries:
dt_search_targets(indicator="keyword")
cl_search(query="domain:example.com")
get_user_quotas()
Deployment
Deploy to Smithery
- Push code to GitHub
- Deploy at smithery.ai/new
- Configure with your StealthMole credentials
Self-Hosting
Run the server directly:
# Production mode
uv run start
# Development mode with auto-reload
uv run dev
Security Notes
ā ļø Important: Keep your API credentials secure
- Never commit credentials to version control
- Use environment variables or secure configuration
- Rotate keys regularly
- Monitor API usage for anomalies
Support
- StealthMole API Documentation: api.stealthmole.com
- MCP Protocol: modelcontextprotocol.io
- Smithery Platform: smithery.ai
License
This MCP server implementation is provided as-is. StealthMole API access requires valid subscription and credentials.
Version
Current version: 0.1.0 (November 2024) Based on StealthMole API v2.2
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
E2B
Using MCP to run code via e2b.