Skip to main content
Glama
n3r0-b1n4ry

AbuseIPDB MCP Server

by n3r0-b1n4ry

AbuseIPDB MCP-Server

Ein Model Context Protocol (MCP)-Server zur Integration mit der AbuseIPDB-API. Fragen Sie IP-Missbrauchsberichte ab und reichen Sie neue Berichte ein – direkt von Ihrem KI-Assistenten aus.

PyPI Python MCP Docker License GitHub

📦 Installation: uvx mcp-abuseipdb · pip install mcp-abuseipdb · PyPI

MCP-Integrationen

Funktionen

  • 🔍 IP prüfen — Fragen Sie AbuseIPDB nach Missbrauchsberichten für jede IPv4/IPv6-Adresse mit detaillierten Informationen ab

  • 🚨 IP melden — Reichen Sie Missbrauchsberichte für bösartige IP-Adressen ein

  • 🚀 Keine Installation mit uvx — Sofort ausführbar über uvx mcp-abuseipdb, keine Einrichtung erforderlich

  • 🌐 Mehrere Transporte — Stdio (Standard) und Streamable HTTP (MCP-Spezifikation 2025-03-26)

  • 📦 PyPI-Paket — Installation über pip install mcp-abuseipdb

  • 🐳 Docker-bereit — Leichter Container auf Alpine-Basis

  • Async/Await — Hochperformante asynchrone Operationen

  • 🗂️ Vollständige Kategorien — Komplette Zuordnung der Kategorien 1-23 mit menschenlesbaren Namen

  • 🔄 Umgang mit Ratenbegrenzungen — Automatische Informationen zur Wiederholung bei 429-Antworten

  • Eingabevalidierung — Robuste IPv4/IPv6- und Parameter-Validierung

  • 🧹 Saubere Ausgabe — Lesbare Textausgabe, optimiert für MCP-Clients

Related MCP server: Threat Intelligence MCP Server

Schnellstart

Verwendung von uvx (Empfohlen)

Der schnellste Weg — kein Klonen, keine Installation, keine virtuelle Umgebung:

# Run directly (stdio transport)
ABUSEIPDB_API_KEY="your_api_key_here" uvx mcp-abuseipdb

# With HTTP transport
ABUSEIPDB_API_KEY="your_api_key_here" uvx mcp-abuseipdb --transport http --port 8000

Voraussetzung: uv muss installiert sein. Installation: pip install uv · curl -LsSf https://astral.sh/uv/install.sh | sh · Windows

Verwendung von pip

pip install mcp-abuseipdb

export ABUSEIPDB_API_KEY="your_api_key_here"
mcp-abuseipdb

Verwendung von Docker

docker build -t abuseipdb-mcp .
docker run -it --rm -e ABUSEIPDB_API_KEY="your_api_key_here" abuseipdb-mcp

Live-Demo

IP-Reputationsprüfung und erweiterte Analyse

MCP mit LLM Test 1

Beispiel: check_ip analysiert eine verdächtige IP-Adresse mit umfassenden Missbrauchsberichten, Kategorien, Geolokalisierung und Bedrohungsinformationen.

MCP mit LLM Test 2

Erweiterte Nutzung: detaillierte IP-Analyse mit ausführlicher Berichterstattung, ISP-Informationen, Missbrauchs-Konfidenzwerten und aktuellen Angriffsmustern.

MCP-Client-Konfiguration

Claude Desktop — uvx (Empfohlen)

Fügen Sie dies zur claude_desktop_config.json hinzu:

{
  "mcpServers": {
    "abuseipdb": {
      "command": "uvx",
      "args": ["mcp-abuseipdb"],
      "env": {
        "ABUSEIPDB_API_KEY": "your_api_key_here"
      }
    }
  }
}

Claude Desktop — uvx mit HTTP-Transport

{
  "mcpServers": {
    "abuseipdb": {
      "command": "uvx",
      "args": ["mcp-abuseipdb", "--transport", "http", "--port", "8000"],
      "env": {
        "ABUSEIPDB_API_KEY": "your_api_key_here"
      }
    }
  }
}

Remote-Server (Streamable HTTP)

{
  "mcpServers": {
    "abuseipdb": {
      "url": "http://your-server:8000/mcp"
    }
  }
}

Docker (Stdio)

{
  "mcpServers": {
    "abuseipdb": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "ABUSEIPDB_API_KEY=your_api_key_here",
        "abuseipdb-mcp"
      ]
    }
  }
}

Docker (Streamable HTTP)

# Start container
docker run -d --rm \
  -e ABUSEIPDB_API_KEY="your_api_key_here" \
  -e MCP_TRANSPORT=http \
  -p 8000:8000 \
  abuseipdb-mcp
{
  "mcpServers": {
    "abuseipdb": {
      "url": "http://localhost:8000/mcp"
    }
  }
}

📁 Weitere Konfigurationsbeispiele: examples/mcp-client-configs.json

Verfügbare Tools

1. check_ip

Prüfen Sie eine IP-Adresse auf Missbrauchsberichte.

Parameter

Typ

Erforderlich

Standard

Beschreibung

ipAddress

string

Zu prüfende IPv4- oder IPv6-Adresse

maxAgeInDays

integer

30

Nur Berichte der letzten x Tage zurückgeben (1-365)

verbose

boolean

true

Detaillierte Berichte in die Antwort einbeziehen

Beispieleingabe:

{
  "ipAddress": "134.122.87.122",
  "maxAgeInDays": 30,
  "verbose": true
}

Beispielausgabe:

AbuseIPDB Check Results

IP Address: 134.122.87.122
Abuse Confidence Score: 75%
Is Public: Yes
Is Whitelisted: No
Country: United States (US)
ISP: DigitalOcean, LLC
Usage Type: Data Center/Web Hosting/Transit
Domain: digitalocean.com
Total Reports: 15
Categories: Brute-Force, SSH, Port Scan, Hacking

2. report_ip

Melden Sie eine missbräuchliche IP-Adresse an AbuseIPDB.

Parameter

Typ

Erforderlich

Beschreibung

ip

string

Zu meldende IPv4- oder IPv6-Adresse

categories

string

Kommagetrennte Kategorie-IDs (z. B. "18,22")

comment

string

Beschreibender Text des Angriffs (keine PII)

timestamp

string

ISO 8601-Zeitstempel des Angriffs

Beispieleingabe:

{
  "ip": "192.168.1.100",
  "categories": "18,22",
  "comment": "Multiple SSH brute force attempts detected",
  "timestamp": "2024-01-15T10:30:00Z"
}

Missbrauchskategorien

ID

Kategorie

ID

Kategorie

ID

Kategorie

1

DNS-Kompromittierung

9

Open Proxy

17

Spoofing

2

DNS-Poisoning

10

Web-Spam

18

Brute-Force

3

Betrügerische Bestellungen

11

E-Mail-Spam

19

Bösartiger Web-Bot

4

DDoS-Angriff

12

Blog-Spam

20

Kompromittierter Host

5

FTP-Brute-Force

13

VPN-IP

21

Web-App-Angriff

6

Ping of Death

14

Port-Scan

22

SSH

7

Phishing

15

Hacking

23

IoT-Zielangriff

8

VoIP-Betrug

16

SQL-Injection

Transporttypen

Transport

Anwendungsfall

Protokoll

stdio (Standard)

Lokale MCP-Clients (Claude Desktop, etc.)

Standard I/O

http

Remote-Zugriff, Multi-Client, Cloud-Deployment

Streamable HTTP (MCP-Spezifikation 2025-03-26)

Server ausführen

# Stdio (default)
mcp-abuseipdb

# HTTP transport
mcp-abuseipdb --transport http

# HTTP with custom host/port
mcp-abuseipdb --transport http --host 127.0.0.1 --port 3000

# Via environment variables
MCP_TRANSPORT=http MCP_PORT=3000 mcp-abuseipdb

HTTP-Transport testen

mcp-abuseipdb --transport http --port 8000

curl -X POST http://localhost:8000/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","method":"initialize","id":1,"params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'

Docker-Deployment

Build & Ausführen

docker build -t abuseipdb-mcp .
docker run -it --rm -e ABUSEIPDB_API_KEY="your_api_key_here" abuseipdb-mcp

Docker Compose

Die enthaltene docker-compose.yml bietet zwei vorkonfigurierte Dienste:

# Stdio service
ABUSEIPDB_API_KEY="your_key" docker compose --profile stdio up abuseipdb-mcp

# HTTP service (exposed on port 8000)
ABUSEIPDB_API_KEY="your_key" docker compose --profile http up abuseipdb-mcp-http

Entwicklung

Lokale Einrichtung

git clone https://github.com/n3r0-b1n4ry/mcp-abuseipdb.git
cd mcp-abuseipdb

python -m venv venv
source venv/bin/activate   # Linux/macOS
venv\Scripts\activate      # Windows

pip install -e .

export ABUSEIPDB_API_KEY="your_api_key_here"
mcp-abuseipdb

Tests ausführen

python -m pytest test/test_server.py -v

Build & Veröffentlichen

python -m build
python -m twine upload dist/*

Fehlerbehandlung

Fehler

Verhalten

Ratenbegrenzung (429)

Gibt die Dauer bis zur Wiederholung und das verbleibende Kontingent zurück

Ungültiger API-Schlüssel

Klare Fehlermeldung zur Authentifizierung

Ungültiges IP-Format

Formatvalidierung mit hilfreicher Meldung

API-Fehler

Detaillierte Fehlerantwort mit Statuscodes

Netzwerkprobleme

Behandlung von Timeouts und Verbindungsfehlern

Ratenbegrenzungen

Plan

Check-Endpunkt

Report-Endpunkt

Kostenlos

1.000/Tag

100/Tag

Basic

3.000/Tag

300/Tag

Premium

10.000/Tag

1.000/Tag

Enterprise

100.000/Tag

10.000/Tag

Abhängigkeiten

Paket

Version

Zweck

mcp

≥1.12.0, <2.0.0

Model Context Protocol SDK

httpx

≥0.27.0

Asynchroner HTTP-Client

pydantic

≥2.8.0

Datenvalidierung

python-dotenv

≥1.0.0

Laden von Umgebungsvariablen

uvicorn

≥0.32.0

ASGI-Server (HTTP-Transport)

starlette

≥0.45.0

ASGI-Framework (HTTP-Transport)

Projektstruktur

mcp-abuseipdb/
├── src/
│   ├── abuseipdb_mcp/              # Python package (uvx/pip)
│   │   ├── __init__.py
│   │   ├── server.py               # Entry point (package)
│   │   └── modules.py              # AbuseIPDBServer class
│   ├── server.py                   # Entry point (standalone)
│   └── modules.py                  # AbuseIPDBServer class (standalone)
├── config/
│   ├── mcp.json                    # MCP server config (stdio)
│   └── mcp-docker.json             # MCP Docker config
├── examples/
│   └── mcp-client-configs.json     # MCP client config examples
├── images/                         # Screenshots and demo images
├── pyproject.toml                  # Package metadata & build config
├── Dockerfile                      # Alpine-based container
├── docker-compose.yml              # Stdio + HTTP services
├── requirements.txt                # Legacy pip dependencies
├── LICENSE                         # MIT License
└── README.md

Fehlerbehebung

Problem

Lösung

Fehler API key required

Umgebungsvariable ABUSEIPDB_API_KEY setzen

Verbindungs-Timeout

Netzwerkverbindung und Firewall-Einstellungen prüfen

Ratenbegrenzung überschritten

Warten bis zum Wiederholungszeitraum oder AbuseIPDB-Plan upgraden

Ungültiges IP-Format

Korrekt formatierte IPv4- oder IPv6-Adressen verwenden

uvx nicht gefunden

uv installieren: pip install uv oder siehe uv-Dokumentation

MCP-Client verbindet nicht

Syntax und Pfade in claude_desktop_config.json prüfen

Changelog

v1.3.0

  • uvx / PyPI-Unterstützunguvx mcp-abuseipdb funktioniert sofort

  • pyproject.toml — Modernes Python-Packaging mit hatchling

  • Einstiegspunktmcp-abuseipdb CLI-Befehl über [project.scripts]

  • Dockerfile aktualisiert — Verwendet pip install . und Einstiegspunkt

  • Streamable HTTP-Transport — Konform mit MCP-Spezifikation 2025-03-26

v1.2.0

  • ✅ Kompatibilität mit MCP SDK 1.12.2

  • ✅ Direkte Rückgabe von TextContent-Listen (ersetzt CallToolResult)

  • ✅ Vollständige Kategorienzuordnung (1-23)

  • ✅ Verbose-Modus standardmäßig aktiviert

  • ✅ Saubere Ausgabeformatierung (kein Markdown)

  • ✅ Optimierung des Alpine-Docker-Images

Mitwirken

  1. Forken Sie das Repository

  2. Erstellen Sie einen Feature-Branch

  3. Führen Sie Ihre Änderungen durch

  4. Senden Sie einen Pull Request

Lizenz

MIT-Lizenz — kostenlos für den persönlichen und kommerziellen Gebrauch.


Mit ❤️ für die MCP-Community gemacht

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables IP address intelligence lookup including geolocation, network information, privacy detection (VPN/proxy/Tor), company data, and abuse contacts using IPLocate.io API. Supports both IPv4 and IPv6 addresses with comprehensive analysis tools and security assessment capabilities.
    76
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Aggregates real-time threat intelligence from multiple sources including Feodo Tracker, URLhaus, CISA KEV, and ThreatFox, with IP/hash reputation checking via VirusTotal, AbuseIPDB, and Shodan for comprehensive security monitoring.
    11
    300
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides threat intelligence lookups against the AbuseIPDB database, enabling IP reputation checks, CIDR block analysis, and log enrichment. It features intelligent caching and rate limiting to efficiently manage API usage for security analysis and automated workflows.
    5
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to check IP reputation and abuse reports via AbuseIPDB, including abuse confidence scores, report details, and bulk IP triage.
    23
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • AbuseIPDB MCP — wraps AbuseIPDB v2 API (api.abuseipdb.com/api/v2)

  • Free IPv4 lookups against a distributed attacker-observation corpus.

  • Free no-key IP intelligence: geolocation, VPN detection, DNS, WHOIS, blacklists, breach checks

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/n3r0-b1n4ry/mcp-abuseipdb'

If you have feedback or need assistance with the MCP directory API, please join our Discord server