ESP32-CYD Wi-Fi Analyzer MCP
ESP32-CYD Wi-Fi Analyzer MCP
ESP32 Cheap Yellow Display (CYD) ve Model Context Protocol (MCP) kullanarak çevredeki Wi-Fi ağlarını tarayan, güvenlik açıklarını analiz eden ve donanım üzerindeki 2.8 inç TFT ekran ile RGB LED üzerinden görsel geri bildirim sunan yapay zeka destekli siber güvenlik analiz cihazı.
Özellikler
Uçtan Uca Yapay Zeka Entegrasyonu: Model Context Protocol (MCP) üzerinden Claude Desktop veya uyumlu herhangi bir LLM istemcisiyle çift yönlü haberleşme.
Akıllı Tehdit Analizi: Şifresiz (OPEN) ağlar, zayıf şifrelenmiş (WEP) erişim noktaları ve sahte/kopya ağlar (Evil Twin / Rogue AP) tespiti.
Görsel Durum ve Uyarı Paneli: 320x240 TFT ekranda dinamik durum kartları (Sarı: Tarama Yapılıyor, Yeşil: Güvenli, Kırmızı: Güvenlik Tehdidi).
Aktif Donanım Kontrolü: Tehdit seviyesine göre renk değiştiren dahili RGB LED (Active-Low sürücü).
Kendi Kendini Onaran Bağlantı (Self-Healing): USB kablosu çıkarılıp takıldığında kilitlenmeyen ve otomatik yeniden bağlanan Python seri port yöneticisi.
Sistem Mimarisi
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)| CYDProje Dizin Yapısı
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ümantasyonuDonanım ve Pinout Yapılandırması (ESP32-2432S028R)
Fonksiyon | GPIO Pini | Açıklama |
Ekran SPI | GPIO 13 (MOSI), 12 (MISO), 14 (SCK) | SPI Ekran Veri Hattı |
Ekran Kontrol | GPIO 15 (CS), 2 (DC), 4 (RST) | Chip Select, Data/Command, Reset |
Ekran Arka Işık (Backlight) | GPIO 21 (bazı klonlarda 27) | Ekran aydınlatması |
RGB LED (Kırmızı) | GPIO 4 | Active-Low ( |
RGB LED (Yeşil) | GPIO 16 | Active-Low ( |
RGB LED (Mavi) | GPIO 17 | Active-Low ( |
Dokunmatik (Touch CS) | GPIO 33 (2USB v3) / GPIO 36 (Standart) | XPT2046 SPI hattı |
Kurulum Adımları
1. Adım: ESP32 Firmware Kurulumu
Bilgisayarınıza Arduino IDE kurun.
Arduino IDE içerisinden Kütüphane Yöneticisi (Library Manager)'ni açıp şu kütüphaneleri yükleyin:
TFT_eSPI(Bodmer)ArduinoJson(Benoit Blanchon - v6 veya v7 desteklenir)
firmware/User_Setup.hdosyasını kopyalayın ve bilgisayarınızdakiBelgeler/Arduino/libraries/TFT_eSPI/User_Setup.hdosyası ile değiştirin.firmware/cyd_wifi_sniffer/cyd_wifi_sniffer.inodosyasını Arduino IDE ile açın.Kart olarak ESP32 Dev Module, port olarak cihazınızın bağlı olduğu COM portunu (örneğin COM3) seçip Yükle (Upload) butonuna basın.
Yükleme tamamlandığında ekranda mavi renkte "SISTEM HAZIR" mesajı belirecektir.
2. Adım: Python MCP Sunucusu Kurulumu
Python 3.10 veya daha güncel bir sürümün kurulu olduğundan emin olun.
Gerekli kütüphaneleri yükleyin:
pip install -r requirements.txt
3. Adım: Claude Desktop Yapılandırması
Claude Desktop uygulamasını kurun.
AppData/Roaming/Claude/claude_desktop_config.jsondosyasını açın (yoksa oluşturun) ve aşağıdaki şekilde düzenleyin:{ "mcpServers": { "esp32-cyd-sniffer": { "command": "python", "args": [ "C:\\path\\to\\your\\repository\\server\\mcp_serial_server.py" ] } } }Claude Desktop uygulamasını tamamen kapatıp yeniden başlatın.
Kullanım ve Örnek Promptlar
Claude Desktop'ta yeni bir sohbet açın ve doğrudan konuşarak cihazı yönetin:
Port Bulma:
"Bilgisayarımdaki aktif portları listeler misin?"
Wi-Fi Taraması:
"COM3 portundaki cihazımla çevremdeki Wi-Fi ağlarını tara."
Siber Güvenlik Analizi ve Alarm Tetikleme:
"Bulduğun ağları incele. Şifresiz veya şüpheli ağlar tespit edersen ne olduğunu açıkla ve cihazın ekranına kırmızı renkte bir güvenlik alarmı gönder."
Ekranı Sıfırlama:
"Ekranı normale döndür ve LED'i yeşil yak."
Desteklenen LLM Modelleri
Bu proje standart Model Context Protocol (MCP) kullandığı için aşağıdaki tüm sistemlerle uyumludur:
Claude Desktop (Önerilen): Claude 3.5 Sonnet / Claude 5 Sonnet (Native MCP istemcisi)
Cursor IDE: Cursor Ayarlar -> MCP menüsü üzerinden entegre edilebilir.
VS Code (Cline / Roo Code): GPT-4o, Gemini 1.5 Pro, Llama-3 veya Claude modelleriyle birlikte kullanılabilir.
Lisans
Bu proje MIT Lisansı ile lisanslanmıştır. Detaylar için LICENSE dosyasına bakabilirsiniz.