Skip to main content
Glama
albertobalsalm0

ESP32-CYD Wi-Fi Analyzer MCP

🛡️ ESP32-CYD Wi-Fi Analyzer 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 提供视觉反馈。


🌟 特性

  • 端到端人工智能集成: 通过 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 中打开 库管理器 (Library Manager),安装以下库:

    • TFT_eSPI (Bodmer)

    • ArduinoJson (Benoit Blanchon - 支持 v6 或 v7)

  3. 复制 firmware/User_Setup.h 文件,并将其替换计算机上 Documents/Arduino/libraries/TFT_eSPI/User_Setup.h 文件。

  4. 使用 Arduino IDE 打开 firmware/cyd_wifi_sniffer/cyd_wifi_sniffer.ino 文件。

  5. 选择开发板 ESP32 Dev Module,端口选择设备连接的 COM 端口(例如 COM3),然后点击 上传 (Upload) 按钮。

  6. 上传完成后,屏幕上将显示蓝色 "SISTEM HAZIR" 消息。


第 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