mcpField
S
Shodan MCP Server

Shodan MCP Server

ローカル
github.com/X3r0Kセキュリティ383 週間前に更新

Shodan MCP Server について

Shodan MCP Serverは、Shodanの検索とインテリジェンス情報をアプリケーションやMCPクライアントに公開します。IP情報、DNS検索、脆弱性、CVE情報、デバイス検索のツールを備えています。

主な機能

  1. 01IPホスト情報の取得
  2. 02DNSによるホスト名の解決
  3. 03IPに関連する脆弱性の確認
  4. 04CVE詳細の検索
  5. 05Shodanデバイスの検索

活用シーン

  1. 01IPアドレスの情報確認
  2. 02ドメインからIPアドレスへの解決
  3. 03ホストに関連する脆弱性の確認
  4. 04条件に合うデバイスの検索

MCP 対応

Shodan APIのクエリをMCPクライアント向けのツールとして公開します。ホスト情報、DNS検索、脆弱性とCVEの照会、検索に対応します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"shodan-mcp-server-x3r0k": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SHODAN_API_KEY",
"shodan-mcp-server"
],
"env": {
"SHODAN_API_KEY": "<SHODAN_API_KEY>"
}
}
}
}
起動コマンドdocker run -i --rm -e SHODAN_API_KEY shodan-mcp-server
設定が必要な環境変数
SHODAN_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocishodan-mcp-server

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

shodan-mcp-server

これは、Shodan API へのアクセスを提供する Model Context Protocol(MCP)サーバーです。デバイスや脆弱性などに関する情報を、Shodan にプログラムから問い合わせることができます。

目次

はじめに

shodan-mcp-server は、Model Context Protocol(MCP)を使用して Shodan のインテリジェンスをアプリケーションに簡単に統合する方法を提供します。Shodan にさまざまな種類の情報を問い合わせるための複数のツールを公開します。

機能

ホスト情報:IP アドレスに関する詳細情報を取得します 検索:Shodan の検索構文を使用してデータベースに問い合わせます DNS ルックアップ:ドメイン名を解決します CVE 情報:特定の CVE 脆弱性の詳細を取得します

インストール

  1. リポジトリをクローンします:

    git clone https://github.com/X3r0K/Shodan-MCP-Server.git
    cd shodan-mcp-server
    
  2. 依存関係をインストールします:

    npm install
    
  3. プロジェクトをビルドします:

    npm run build
    

設定

  1. Shodan から Shodan API キーを取得します。

  2. MCP 設定ファイル(例:~/.config/mcp/settings.json)で MCP サーバーを設定します:

    {
      "mcpServers": {
        "shodan": {
          "command": "node",
          "args": ["/path/to/shodan-mcp-server/build/index.js"],
          "env": {
            "SHODAN_API_KEY": "<your_shodan_api_key>"
          },
          "disabled": false,
          "autoApprove": []
        }
      }
    }
    

    <your_shodan_api_key> を実際の Shodan API キーに、/path/to/shodan-mcp-server を shodan-mcp-server ディレクトリの実際のパスに置き換えてください。

Node.js での使用

@modelcontextprotocol/sdk パッケージを使用して、Node.js で MCP サーバーを利用できます。

  1. MCP SDK をインストールします:

    npm install @modelcontextprotocol/sdk
    
  2. use_mcp_tool 関数を使ってツールを呼び出します:

    import { use_mcp_tool } from '@modelcontextprotocol/sdk';
    
    async function getIpInfo(ip) {
      const result = await use_mcp_tool('shodan', 'get_ip_info', { ip });
      console.log(result);
    }
    
    getIpInfo('8.8.8.8');
    

API ドキュメント

get_ip_info

特定の IP アドレスに関する情報を取得します。

入力:

{
  "ip": "string" // The IP address to query
}

出力:

IP アドレスに関する情報を含む JSON オブジェクトです。

dns_lookup

指定したドメインの DNS ルックアップを実行します。

入力:

{
  "hostname": "string" // The hostname to resolve
}

出力:

解決された IP アドレスを含む JSON オブジェクトです。

get_vulnerabilities

特定の IP アドレスに関連する脆弱性を追跡します。

入力:

{
  "ip": "string" // The IP address to query for vulnerabilities
}

出力:

IP アドレスに関連する脆弱性の一覧を含む JSON オブジェクトです。

cve_info

特定の CVE ID に関する情報を取得します。

入力:

{
  "cve": "string" // The CVE ID to query
}

出力:

CVE ID に関する情報を含む JSON オブジェクトです。

search

クエリに一致するデバイスを Shodan で検索します。

入力:

{
  "query": "string" // The search query
}

出力:

クエリに一致するデバイスの一覧を含む JSON オブジェクトです。

プロジェクト構成

shodan-mcp-server/
├── .gitignore
├── package.json
├── README.md
├── tsconfig.json
└── src/
    ├── index.ts
    └── index.mts

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。