Get the FREE Ultimate OpenClaw Setup Guide →

OSINT

Building a comprehensive OSINT MCP server with proper structure, error handling, and ethical guardrails. This focuses on publicly available information gathering.​​​​​​​​​​​​​​​​

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio canstralian-osint-mcp-server python -m osint_mcp \
  --env IPINFO_API_KEY="API key for IPInfo (optional)" \
  --env SHODAN_API_KEY="API key for Shodan (optional)" \
  --env OSINT_RATE_LIMIT="Rate limit in requests per minute (e.g., 10)" \
  --env OSINT_USER_AGENT="User agent string for web requests (e.g., 'OSINT-MCP-Server/0.1.0')" \
  --env ABUSEIPDB_API_KEY="API key for AbuseIPDB (optional)"

How to use

OSINT MCP Server exposes a modular Python-based MCP server focused on publicly available OSINT data. It provides a suite of tools for DNS and network queries, IP intelligence, and web-related metadata extraction while enforcing ethical guardrails such as rate limiting, robots.txt compliance, and explicit user agent identification. The server is designed to operate asynchronously with robust validation and error handling, enabling MCP clients to invoke tools like DNS lookups, reverse DNS, MX records retrieval, IP geolocation, IP reputation (with API keys), robots.txt checks, HTTP header inspection, webpage metadata extraction, and SSL certificate checks. To use it, deploy the server and connect an MCP-compatible client, configuring the client with the server’s MCP spec and the appropriate tool calls as shown in the examples. The server understands standard MCP calls for tool execution and returns structured results suitable for downstream agents and workflows.

How to install

Prerequisites:

  • Python 3.10 or higher
  • git
  • pip

Install from source:

# Clone the repository
git clone https://github.com/canstralian/OSINT-MCP-Server.git
cd OSINT-MCP-Server

# Install dependencies
pip install -r requirements.txt

# Optional: install in development mode
pip install -e .

Configure environment variables (example):

cp .env.example .env

Edit .env to customize settings (rate limit, user agent, API keys):

OSINT_RATE_LIMIT=10
OSINT_USER_AGENT=OSINT-MCP-Server/0.1.0 (Educational/Research Purpose)
ABUSEIPDB_API_KEY=your_key_here
IPINFO_API_KEY=your_key_here
SHODAN_API_KEY=your_key_here

Run the server:

# Run directly via module
python -m osint_mcp

# Or using installed package
osint-mcp-server

Additional notes

Environment variables:

  • OSINT_RATE_LIMIT controls per-client request rate (token bucket under the hood).
  • OSINT_USER_AGENT should identify the server clearly to targets and comply with robots.txt policies.
  • API keys (ABUSEIPDB_API_KEY, IPINFO_API_KEY, SHODAN_API_KEY) enable enhanced features like IP reputation, enriched geolocation, and broader OSINT capabilities; the server will operate with limited or no API keys if not provided.

Common issues:

  • Missing API keys can result in reduced functionality for IP reputation or extended lookups.
  • Rate limit misconfiguration may lead to blocked requests; tune OSINT_RATE_LIMIT to match your usage pattern.
  • Ensure robots.txt compliance is enabled in config to avoid unintended crawling; respect site policies.

Configuration tips:

  • Keep .env secure and do not commit keys to source control.
  • Validate inputs at client side to reduce errors returned by the MCP server.
  • Regularly update dependencies to incorporate security fixes and enhancements.

Related MCP Servers

Sponsor this space

Reach thousands of developers