Skip to main content
Glama
albertobalsalm0

ESP32-CYD Wi-Fi Analyzer MCP

🛡️ ESP32-CYD Wi-FiアナライザーMCP

License: MIT Python 3.10+ MCP Standard Hardware: ESP32 CYD

ESP32 Cheap Yellow Display (CYD) と Model Context Protocol (MCP) を使用して、周囲のWi-Fiネットワークをスキャンし、脆弱性を分析し、ハードウェア上の2.8インチTFTディスプレイとRGB LEDを介して視覚的なフィードバックを提供する、AI搭載のサイバーセキュリティ分析デバイスです。


🌟 特徴

  • エンドツーエンドAI統合: Model Context Protocol(MCP)を介して、Claude Desktopまたは互換性のある任意のLLMクライアントとの双方向通信。

  • スマート脅威分析: 暗号化されていない(OPEN)ネットワーク、脆弱な暗号化(WEP)アクセスポイント、偽造/複製ネットワーク(Evil Twin / Rogue AP)の検出。

  • 視覚的ステータス&警告パネル: 320x240 TFTディスプレイ上の動的ステータスカード(黄: スキャン中、緑: 安全、赤: セキュリティ脅威)。

  • アクティブハードウェア制御: 脅威レベルに応じて色が変わる内蔵RGB LED(アクティブロードライバー)。

  • 自己修復接続: USBケーブルを抜き差ししてもフリーズせず、自動的に再接続するPythonシリアルポートマネージャー。


Related MCP server: MCPPentestBOT

🏗️ システムアーキテクチャ

flowchart LR
    subgraph AI["Yapay Zeka (Brain)"]
        CLAUDE["Claude Desktop / Cursor\n(Claude 3.5/5 Sonnet)"]
    end

    subgraph MCP["Protokol Köprüsü (Middleware)"]
        SERVER["FastMCP Python Server\n(mcp_serial_server.py)"]
    end

    subgraph HARDWARE["Uç Donanım (Edge Device)"]
        CYD["ESP32 Cheap Yellow Display\n(ESP32-2432S028R)"]
        TFT["2.8' TFT Ekran"]
        LED["Dahili RGB LED"]
        CYD --> TFT
        CYD --> LED
    end

    CLAUDE <-->|JSON-RPC Stdio| SERVER
    SERVER <-->|USB Serial (COM3 / 115200 Baud)| CYD

📁 プロジェクトディレクトリ構造

ESP32-CYD-WiFi-Analyzer-MCP/
├── firmware/
│   ├── cyd_wifi_sniffer/
│   │   └── cyd_wifi_sniffer.ino   # ESP32 C++ firmware kodu
│   └── User_Setup.h               # TFT_eSPI kütüphanesi için hazır pin yapılandırması
├── server/
│   └── mcp_serial_server.py       # FastMCP tabanlı Python seri port sunucusu
├── config/
│   └── claude_desktop_config.json.example # Claude Desktop örnek ayar dosyası
├── requirements.txt               # Python bağımlılıkları
├── .gitignore                     # Git yoksayma kuralları
└── README.md                      # Proje dokümantasyonu

🔌 ハードウェアとピンアサイン構成 (ESP32-2432S028R)

機能

GPIOピン

説明

ディスプレイSPI

GPIO 13 (MOSI), 12 (MISO), 14 (SCK)

SPIディスプレイデータライン

ディスプレイ制御

GPIO 15 (CS), 2 (DC), 4 (RST)

チップセレクト、データ/コマンド、リセット

ディスプレイバックライト

GPIO 21 (一部のクローンでは27)

ディスプレイ照明

RGB LED (赤)

GPIO 4

アクティブロー (LOW = オン)

RGB LED (緑)

GPIO 16

アクティブロー (LOW = オン)

RGB LED (青)

GPIO 17

アクティブロー (LOW = オン)

タッチ (Touch CS)

GPIO 33 (2USB v3) / GPIO 36 (標準)

XPT2046 SPIライン


🚀 セットアップ手順

ステップ1: ESP32ファームウェアのインストール

  1. お使いのコンピュータに Arduino IDE をインストールします。

  2. Arduino IDE内のライブラリマネージャーを開き、以下のライブラリをインストールします:

    • TFT_eSPI (Bodmer)

    • ArduinoJson (Benoit Blanchon - v6 または v7 対応)

  3. firmware/User_Setup.hファイルをコピーし、お使いのコンピュータの ドキュメント/Arduino/libraries/TFT_eSPI/User_Setup.h ファイルと置き換えます。

  4. firmware/cyd_wifi_sniffer/cyd_wifi_sniffer.inoファイルをArduino IDEで開きます。

  5. ボードとして ESP32 Dev Module、ポートとしてデバイスが接続されているCOMポート(例:COM3)を選択し、アップロード ボタンを押します。

  6. アップロードが完了すると、ディスプレイに青色の "SYSTEM READY" メッセージが表示されます。


ステップ2: Python MCPサーバーのセットアップ

  1. Python 3.10以降がインストールされていることを確認します。

  2. 必要なライブラリをインストールします:

    pip install -r requirements.txt

ステップ3: Claude Desktopの設定

  1. Claude Desktop アプリケーションをインストールします。

  2. AppData/Roaming/Claude/claude_desktop_config.jsonファイルを開き(ない場合は作成し)、以下のように編集します:

    {
      "mcpServers": {
        "esp32-cyd-sniffer": {
          "command": "python",
          "args": [
            "C:\\path\\to\\your\\repository\\server\\mcp_serial_server.py"
          ]
        }
      }
    }
  3. Claude Desktopアプリケーションを完全に閉じて、再起動します。


💬 使用方法とプロンプト例

Claude Desktopで新しい会話を開き、直接話しかけてデバイスを操作します:

  • ポート検索:

    "私のコンピュータのアクティブなポートをリストアップしてもらえますか?"

  • Wi-Fiスキャン:

    "COM3ポートのデバイスで、周囲のWi-Fiネットワークをスキャンしてください。"

  • サイバーセキュリティ分析とアラームトリガー:

    "見つけたネットワークを分析してください。暗号化されていないネットワークや疑わしいネットワークを検出した場合は、その内容を説明し、デバイスの画面に赤色のセキュリティアラームを送信してください。"

  • 画面リセット:

    "画面を通常の状態に戻し、LEDを緑色に点灯してください。"


🛠️ 対応LLMモデル

このプロジェクトは標準の Model Context Protocol (MCP) を使用しているため、以下のすべてのシステムと互換性があります:

  • Claude Desktop (推奨): Claude 3.5 Sonnet / Claude 5 Sonnet (ネイティブMCPクライアント)

  • Cursor IDE: Cursor設定 -> MCPメニューから統合可能。

  • VS Code (Cline / Roo Code): GPT-4o、Gemini 1.5 Pro、Llama-3、またはClaudeモデルと併用可能。


📄 ライセンス

このプロジェクトは MITライセンス のもとでライセンスされています。詳細については LICENSE ファイルを参照してください。

Related MCP Connectors

Related MCP Servers