Skip to main content
Glama

shodan-mcp

Passiver Aufklärungs-MCP-Server, betrieben von Shodan. Scope-Absicherung gegen Ihre HackerOne-Snapshots — identische Absicherung wie bei nuclei-mcp.

Nur passiv — Shodan-Abfragen senden niemals ein Paket an Ihr Ziel. Alle Daten stammen aus Shodans bereits existierendem, internetweitem Scan-Index.


Architektur

Claude/copilot (AI agent)
    │
    │  MCP (stdio)
    ▼
shodan-mcp container
    ├── reads scope ──► /data/snapshots/*.json  ◄─── h1-scope-watcher
    └── queries     ──► api.shodan.io  (passive, no target contact)

Related MCP server: Shodan MCP Server

Scope-Absicherung

Jedes Tool verwendet dieselbe Absicherung wie nuclei-mcp:

  1. Laden aller *.json aus /data/snapshots

  2. Exakter → Platzhalter → Fuzzy-Keyword-Abgleich

  3. Überprüfung von eligible_for_bounty UND eligible_for_submission

  4. Blockieren, falls eines davon falsch ist — kein Override möglich

H1-Scope-Watcher


Schnellstart

1. Build

cd shodan-mcp
docker build -t shodan-mcp .

2. Zur Claude/Copilot MCP-Konfiguration hinzufügen

{
  "mcpServers": {
    "h1-scope-watcher": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-v", "D:/projects/H1-Scope-Watcher/snapshots:/data/snapshots",
        "-e", "SNAPSHOTS_DIR=/data/snapshots",
        "mcp/h1-scope"
      ]
    },
    "shodan-mcp": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-v", "D:/projects/H1-Scope-Watcher/snapshots:/data/snapshots",
        "-e", "SNAPSHOTS_DIR=/data/snapshots",
        "-e", "SHODAN_API_KEY=YOUR_KEY_HERE",
        "shodan-mcp"
      ]
    }
  }
}

Ersetzen Sie YOUR_KEY_HERE durch Ihren Schlüssel von https://account.shodan.io


MCP-Tools

shodan_host

Ziel auflösen → IP(s) → vollständiger Shodan-Host-Bericht.

Parameter

Typ

Standard

Beschreibung

target

string

Domain, URL oder Fuzzy-Name

show_banners

bool

false

Inklusive roher Service-Banner (erste 3 Zeilen)

Was Sie pro IP erhalten:

  • Offene Ports + Transportprotokoll

  • Service / Produkt / Versions-Fingerabdruck

  • CPE-Identifikatoren

  • CVE-Liste mit CVSS-Scores und Zusammenfassungen

  • ASN, ISP, Organisation, Geolocation, Betriebssystem

  • Shodan-Tags (z. B. cloud, self-signed, vpn)

Beispiel-Prompts:

  • "Führe Shodan für dummy-target aus"

  • "Welche Ports legt api.tile.com auf Shodan offen?"

  • "Überprüfe Shodan für production.tile-api.com mit Bannern"


Durchsucht den hostname:-Index von Shodan — findet Datensätze über ALLE IPs hinweg, die jemals den Hostnamen bedient haben, einschließlich alter/Schatten-Infrastruktur.

Parameter

Typ

Standard

Beschreibung

target

str

Domain, URL oder Keyword

max_results

int

5

Max. Hosts (Limit: 20)

Beispiel-Prompts:

  • "Durchsuche Shodan nach dummy-target — zeige mir 10 Ergebnisse"

  • "Gibt es vergessene Infrastruktur für tile.com auf Shodan?"


shodan_dns

Ruft Shodans passive DNS-Datensätze ab — alle Subdomains, A/CNAME/MX/TXT, die Shodan jemals für eine Root-Domain beobachtet hat.

Parameter

Typ

Beschreibung

target

str

Domain oder Keyword

Beispiel-Prompts:

  • "Welche Subdomains kennt Shodan für dummy-target?"

  • "Zeige mir Shodan DNS-Datensätze für tile.com"


check_scope

Vorschau der Scope-Absicherung ohne API-Aufruf.


list_programs

Listet alle H1-Scope-Assets gruppiert nach Bounty-Berechtigung auf.


Hinweise zum Shodan-Plan

Plan

shodan_host

shodan_search

shodan_dns

Free

✅ (begrenzt)

Membership

API (bezahlt)

shodan_dns erfordert einen kostenpflichtigen Shodan-Plan. Der Server validiert Ihren Schlüssel und Plan beim Start und protokolliert das Ergebnis.


Beispiel für einen verketteten Workflow

You: "Full passive recon on dummy-target"

Claude/Copilot:
  1. check_scope("dummy-target")
    → ✅ api.dummy-target.com, api-cloudfront.dummy-target.com

  2. shodan_dns("dummy-target")
    → 14 subdomains discovered passively

  3. shodan_host("api.dummy-target.com")
    → Port 443 (nginx 1.18), Port 8443 (unknown)
    → CVE-2021-23017 CVSS 7.7 (nginx)

  4. shodan_search("dummy-target", max_results=10)
    → 3 IPs, one on non-standard port 9200 (Elasticsearch!)

  5. nuclei_scan("api.dummy-target.com")
    → Confirms Elasticsearch exposure

Keine Pakete an das Dummy-Ziel gesendet bis Schritt 5.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    MCP server for querying the Shodan API and Shodan CVEDB. This server provides tools for IP lookups, device searches, DNS lookups, vulnerability queries, CPE lookups, and more.
    7
    520 npm
    171
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A WebSocket server that provides MCP interface for searching and retrieving information about internet-connected devices, IP addresses, DNS data, and CVE vulnerabilities through the Shodan API.
    3
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    This is a Model Context Protocol (MCP) server that provides access to the Shodan API. It allows you to programmatically query Shodan for information about devices, vulnerabilities, and more.
    2
    -