AbuseIpDB MCP Server
A Model Context Protocol (MCP) server implementation that provides seamless integration with the AbuseIPDB API for IP reputation checking and abuse report management.
AbuseIPDB MCP Server
A Model Context Protocol (MCP) server implementation that provides seamless integration with the AbuseIPDB API for IP reputation checking and abuse report management.
Overview
This MCP server enables AI assistants and automated systems to query AbuseIPDB's threat intelligence database, allowing you to check IP addresses for malicious activity, retrieve abuse confidence scores, and access detailed historical report data through a standardized protocol interface.
Features
- IP Reputation Checks - Query any IPv4 or IPv6 address for abuse reports
- Confidence Scoring - Get abuse confidence scores (0-100) based on report frequency and severity
- Detailed Reporting - Access comprehensive abuse report metadata and categories
- Historical Data - Query abuse reports within configurable time windows (up to 365 days)
- Flexible Output - Toggle between concise summaries and verbose detailed responses
- Standards-Based - Built on the Model Context Protocol for seamless integration
Prerequisites
- Python: 3.13 or higher
- AbuseIPDB API Key: Register for a free API key
Installation
1. Clone the Repository
git clone https://github.com/Salmanwz/mcp-abuseipdb.git
cd mcp-abuseipdb
2. Install UV Package Manager
curl -LsSf https://astral.sh/uv/install.sh | sh
3. Install Dependencies
uv add mcp[cli] httpx
Configuration
Option 1: Environment Variable (Standalone Usage)
export ABUSEIPDB_API_KEY="your_api_key_here"
Option 2: Claude Desktop Integration
Add the following configuration to your Claude Desktop config file (claude_desktop_config.json):
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"abuseipdb": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/mcp-abuseipdb",
"run",
"abusedb.py"
],
"env": {
"ABUSEIPDB_API_KEY": "your_api_key_here"
}
}
}
}
Important: Replace /absolute/path/to/mcp-abuseipdb with the actual path and your_api_key_here with your API key.
Usage
Starting the Server (Standalone)
uv run abusedb.py
Available Tools
check - IP Address Reputation Lookup
Queries AbuseIPDB for abuse reports associated with a given IP address.
Parameters:
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
ipAddress | string | ✅ Yes | - | IPv4 or IPv6 address to check |
maxAgeInDays | integer | ❌ No | 30 | Maximum age of reports (1-365 days) |
verbose | boolean | ❌ No | false | Include detailed report breakdowns |
Example Requests:
# Basic check - last 30 days
{
"ipAddress": "1.2.3.4"
}
# Check with custom time window
{
"ipAddress": "1.2.3.4",
"maxAgeInDays": 90
}
# Verbose output with full details
{
"ipAddress": "1.2.3.4",
"maxAgeInDays": 90,
"verbose": true
}
Response Structure:
{
"data": {
"ipAddress": "1.2.3.4",
"abuseConfidenceScore": 75,
"totalReports": 42,
"lastReportedAt": "2025-10-13T14:23:01+00:00",
"isWhitelisted": false,
"countryCode": "US",
"usageType": "Data Center/Web Hosting/Transit",
"isp": "Example Hosting Inc",
"domain": "example-host.com",
"reports": [...] // Only included when verbose=true
}
}
Use Cases
- Security Operations: Integrate IP reputation checks into SOC workflows
- Incident Response: Quickly assess threat levels during investigations
- Threat Intelligence: Enrich security alerts with abuse data
- Network Monitoring: Automate suspicious IP detection and blocking
- Log Analysis: Cross-reference connection logs with known malicious IPs
API Rate Limits
Free tier API keys are limited to 1,000 checks per day. Upgrade to a premium plan for higher limits.
Troubleshooting
API Key Issues
# Verify your API key is set
echo $ABUSEIPDB_API_KEY
# Test connectivity
curl -G https://api.abuseipdb.com/api/v2/check \
--data-urlencode "ipAddress=8.8.8.8" \
-H "Key: $ABUSEIPDB_API_KEY"
Claude Desktop Connection
- Verify the config file path and JSON syntax
- Restart Claude Desktop after configuration changes
- Check the MCP server logs for connection errors
Development
Project Structure
mcp-abuseipdb/
├── abusedb.py # Main MCP server implementation
├── pyproject.toml # UV/Python dependencies
├── README.md # This file
└── LICENSE # License information
Running Tests
# Add test dependencies
uv add pytest pytest-asyncio httpx
# Run tests
uv run pytest
Contributing
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Security
This server handles sensitive threat intelligence data. Best practices:
- Never commit API keys to version control
- Store API keys in environment variables or secure vaults
- Use HTTPS for all API communications (enforced by default)
- Implement rate limiting in production deployments
- Monitor API usage for anomalies
Resources
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Built on the Model Context Protocol
- Powered by AbuseIPDB
- Uses UV for dependency management
Note: This is an unofficial implementation and is not affiliated with or endorsed by AbuseIPDB.
Servidores relacionados
Zen7-Payment-Agent
Zen7 Payment Agent is the first implementation project of DePA (Decentralized Payment Agent), pioneers next-generation intelligent payment infrastructure.
Base L2 Agent Kit
MCP server for Base L2 DeFi operations with 9 monetized endpoints: gas estimates, yield farming, token analysis, contract audit, wallet health, DEX quotes, price feeds, mnemonic generation. Built with FastMCP Python SDK.
mcp-server-ollama-bridge
Bridge to local Ollama LLM server. Run Llama, Mistral, Qwen and other local models through MCP.
Phone Carrier Detector
Detects Chinese mobile phone carriers, including China Mobile, China Unicom, China Telecom, and virtual carriers.
Malaysia Prayer Time MCP Server
Provides accurate Islamic prayer times for locations throughout Malaysia using the waktusolat.app API.
Neonia
The ultimate platform for Autonomous AI Agents. Features include Autonomous Tool Discovery (dynamically finds and executes missing capabilities), Stateful Cloud Memory (remembers cross-session context), Context Packing (saves LLM tokens), and 20+ specialized dev tools.
humanMCP Marketplace
Federated search across personal humanMCP servers. Find listings, offers, trades by humans. SQLite + FTS5, 3 MCP tools: search_marketplace, list_servers, get_server.
Phone Carrier Detector
Detects Chinese mobile phone carriers, including China Mobile, China Unicom, China Telecom, and virtual operators.
Baozi Bet Prediction Markets
Baozi bet MCP server to allow agents create their own prediction markets
Satellite MCP Server
Performs satellite orbital mechanics calculations using natural language, with a built-in world cities database for location lookup.