Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
flipper-mcp — Server MCP basato su AI per Flipper Zero. Controlla SubGHz, NFC, RFID, IR, BLE, GPIO e altro ancora via WiFi utilizzando Claude o qualsiasi client MCP. | Kitploit
Strumenti/GitHubGitHub/roostercoopllc/flipper-mcp
Sicurezza Sistemi EmbeddedSicurezza BluetoothStrumenti RFID/NFCScripting e AutomazioneSicurezza WirelessPenetration TestingCommand and ControlUtilità e FrameworkSicurezza Hardware e IoTRed TeamingStrumento di Accesso Remoto
222146 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Sicurezza dell'IA
GitHubroostercoopllc/flipper-mcp

flipper-mcp

Server MCP basato su AI per Flipper Zero. Controlla SubGHz, NFC, RFID, IR, BLE, GPIO e altro ancora via WiFi utilizzando Claude o qualsiasi client MCP.

Vedi Repository

flipper-mcp

Un server MCP (Model Context Protocol) in Rust che viene eseguito direttamente sulla WiFi Dev Board v1 (ESP32-S2) del Flipper Zero, consentendo agli agenti AI di controllare un Flipper Zero attraverso la rete.

Cos'è questo?

Questo progetto mette un server MCP sul Flipper stesso. Qualsiasi client AI compatibile con MCP (Claude Desktop, Claude Code, ecc.) può connettersi e utilizzare le capacità del Flipper come strumenti — SubGHz, NFC, RFID, IR, GPIO, BadUSB, iButton, archiviazione file e altro ancora.

A differenza di altri progetti che richiedono un computer host collegato via USB, flipper-mcp viene eseguito sul modulo WiFi ESP32-S2 collegato al Flipper. Il Flipper diventa uno strumento autonomo e accessibile via rete.

Architettura

root@kitploit:~
LOCAL (same network):
  MCP Client ──HTTP──► flipper-mcp.local:8080 (ESP32-S2) ──UART──► Flipper Zero

REMOTE (cross-network):
  MCP Client ──HTTP──► Relay Server ◄──WebSocket── ESP32-S2 ──UART──► Flipper Zero

L'ESP32-S2 esegue un server HTTP che implementa il protocollo MCP. Traduce le chiamate agli strumenti MCP in comandi CLI del Flipper Zero via UART a 115200 baud. Un server relay complementare consente l'accesso remoto da qualsiasi rete.

Funzionalità

  • ~30 strumenti integrati che coprono tutte le applicazioni predefinite del Flipper Zero
  • Scoperta dinamica dei moduli — rilevamento automatico delle app FAP dalla scheda SD + strumenti guidati da configurazione TOML
  • Configurazione Flipper-first — configura il WiFi dal FAP del Flipper (nessun telefono, browser o script PC necessario)
  • Doppio trasporto MCP — Streamable HTTP (moderno) + Legacy SSE (retrocompatibile)
  • Scoperta locale — annuncio mDNS come flipper-mcp.local
  • Accesso remoto — tunnel WebSocket inverso attraverso un server relay (nessun port forwarding necessario)
  • Nessuna autenticazione — progettato per scenari di pentesting e ricerca sulla sicurezza
  • Server relay complementare — piccolo binario Rust per l'accesso cross-network, supporta più Flipper

Hardware richiesto

  • Flipper Zero (qualsiasi versione di firmware con supporto CLI)
  • WiFi Dev Board v1 (modulo ESP32-S2-WROVER)

A quale dispositivo mi collego?

Prerequisiti

  • Rust — installa tramite rustup:
    root@kitploit:~
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    
  • Toolchain Xtensa — l'ESP32-S2 richiede una toolchain Rust personalizzata:
    root@kitploit:~
    cargo install espup
    espup install
    source ~/export-esp.sh  # Run this in every new terminal
    
  • Strumento di flashing e linker proxy:
    root@kitploit:~
    cargo install espflash
    cargo install ldproxy
    
  • Pacchetti di sistema (Debian/Ubuntu/Kali):
    root@kitploit:~
    sudo apt install -y git curl gcc build-essential pkg-config libudev-dev libssl-dev python3 python3-venv cmake ninja-build
    

Avvio rapido

Istruzioni complete di configurazione in docs/SETUP.md

1. Compila e flasha il firmware

root@kitploit:~
source ~/export-esp.sh
cd firmware
cargo build --release --target xtensa-esp32s2-espidf
espflash flash --monitor target/xtensa-esp32s2-espidf/release/flipper-mcp

3. Configura il WiFi

Crea config.txt sulla scheda SD del Flipper in SD:/apps_data/flipper_mcp/config.txt:

root@kitploit:~
wifi_ssid=YourNetworkName
wifi_password=YourPassword
device_name=flipper-mcp

Oppure configura direttamente dal Flipper usando il FAP complementare (vedi Passo 5): Apps → Tools → Flipper MCP → Configure WiFi

Al primo avvio senza un file di configurazione, l'ESP32 attende e scrive status=needs_config nel file di stato. Il FAP del Flipper lo visualizzerà nella schermata Status.

4. Verifica che il server funzioni

Prima di configurare un client AI, conferma che il server sia raggiungibile con curl:

root@kitploit:~
# Quick health check
curl http://flipper-mcp.local:8080/health

# Full verification — initialize + list all available tools
./scripts/test-connection.sh

# If mDNS isn't resolving on your OS, pass the IP directly:
./scripts/test-connection.sh 192.168.x.xxx

Testa gli strumenti MCP direttamente con curl

Ottieni l'IP del Flipper dal menu Flipper MCP → Status, poi testa:

Trasmissione beacon BLE (trasmette un annuncio BLE falsificato):

root@kitploit:~
curl -X POST http://192.168.0.58:8080/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ble_beacon","arguments":{"data":"020106"}}}'

Tastiera HID BLE (emula una tastiera wireless e digita):

root@kitploit:~
# Start HID emulation
curl -X POST http://192.168.0.58:8080/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ble_hid_start","arguments":{}}}'

# Type a message
curl -X POST http://192.168.0.58:8080/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"ble_hid_type","arguments":{"text":"Hello from Flipper!"}}}'

# Stop HID emulation
curl -X POST http://192.168.0.58:8080/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"ble_hid_stop","arguments":{}}}'

Trasmissione IR (invia codici di telecomando IR):

root@kitploit:~
# NEC protocol IR code (generic TV power button)
curl -X POST http://192.168.0.58:8080/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ir_tx","arguments":{"protocol":"NEC","address":"00","command":"01","repeat":0}}}'

Ricezione SubGHz (ascolta segnali wireless su 433,92 MHz):

root@kitploit:~
curl -X POST http://192.168.0.58:8080/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"subghz_rx","arguments":{"frequency":433920000,"duration":5000}}}'

Sostituisci 192.168.0.58 con l'indirizzo IP effettivo del tuo Flipper.

Poi aggiungi alla tua configurazione di Claude Desktop (claude_desktop_config.json):

root@kitploit:~
{
  "mcpServers": {
    "flipper": {
      "url": "http://flipper-mcp.local:8080/mcp"
    }
  }
}

5. Gestisci la scheda WiFi dal Flipper

Installa l'app complementare Flipper MCP da flipper-app/ sul Flipper Zero. Compila con ufbt e copia il .fap in SD:/apps/Tools/:

root@kitploit:~
cd flipper-app && ufbt   # produces flipper_mcp.fap
# Copy flipper_mcp.fap to your Flipper SD card under apps/Tools/

L'app appare in Apps → Tools → Flipper MCP e fornisce:

L'app comunica tramite file sulla scheda SD (nessun cablaggio aggiuntivo oltre all'header GPIO). Configure WiFi è la procedura guidata del primo avvio — nessun telefono, browser o script PC necessario.

6. (Opzionale) Accesso remoto tramite relay

Self-hosted (esegui il binario ovunque):

root@kitploit:~
./scripts/build-relay.sh
./target/release/flipper-mcp-relay --listen 0.0.0.0:9090
# Then add relay_url to config.txt on the Flipper SD card:
# relay_url=ws://your-server:9090/tunnel

Distribuzione cloud (AWS o GCP, con TLS + DNS):

root@kitploit:~
# Bootstrap state storage, then deploy
./infra/bootstrap/aws.sh   # or ./infra/bootstrap/gcp.sh
cd infra/aws && cp terraform.tfvars.example terraform.tfvars
tofu init && tofu apply
# Outputs the relay URL and a ready-to-paste wifi-config.sh command

Vedi RELAY.md per le istruzioni complete.

Strumenti disponibili

Strumenti personalizzati possono essere aggiunti tramite file di configurazione TOML o installando app FAP sulla scheda SD. Vedi OPERATIONS.md per comandi curl copia-incolla per ogni strumento.

Alternativa gratuita: Open WebUI + Ollama

Non hai bisogno di un abbonamento Claude per usare flipper-mcp. Open WebUI è un'interfaccia gratuita e self-hosted in stile ChatGPT che supporta nativamente MCP Streamable HTTP (v0.6.31+). Abbinala a Ollama per un controllo del Flipper guidato dall'AI completamente locale e offline.

1. Installa Ollama e scarica un modello con supporto agli strumenti

root@kitploit:~
# Install Ollama
curl -fsSL https://ollama.com/install.sh | sh

# Pull a model with tool-calling support
ollama pull llama3.1        # 8B — good balance of speed and capability
# or: ollama pull qwen2.5   # strong tool-calling, good at structured output
# or: ollama pull mistral    # lightweight, fast tool use

2. Avvia Open WebUI

root@kitploit:~
# Docker (recommended) — connects to Ollama on localhost automatically
docker run -d -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
  -e WEBUI_AUTH=False \
  -v open-webui:/app/backend/data \
  --name open-webui \
  ghcr.io/open-webui/open-webui:main

# Or without Docker:
pip install open-webui
open-webui serve

Apri http://localhost:3000 nel tuo browser.

3. Connetti il server MCP del Flipper

  1. Vai su Admin Settings (icona ingranaggio) → External Tools
  2. Clicca su + Add Server
  3. Imposta Type su MCP (Streamable HTTP)
  4. Inserisci l'URL del server:
    • Locale: http://flipper-mcp.local:8080/mcp (o http://192.168.x.x:8080/mcp)
    • Tramite relay: https://relay.example.com/mcp
    • Da Docker: usa http://host.docker.internal:8080/mcp se il Flipper è sulla rete dell'host Docker
  5. Imposta Authentication su None (flipper-mcp non ha autenticazione)
  6. Save

Suggerimento: In Workspace → Models → (il tuo modello) → Advanced Parameters, imposta Function Calling su Default per i modelli più piccoli. Passa a Native solo per modelli con un forte supporto integrato agli strumenti (Llama 3.1 8B+, Qwen 2.5, Mistral).

4. Prompt di esempio

Una volta connesso, prova questi nella chat di Open WebUI:

Le attività agentiche multi-step funzionano meglio con modelli più grandi (Llama 3.1 70B, Qwen 2.5 72B, o modelli cloud tramite API compatibili con OpenAI). I modelli più piccoli gestiscono in modo affidabile le chiamate a singolo strumento.

Struttura del progetto

root@kitploit:~
flipper-mcp/
├── firmware/          # ESP32-S2 firmware (Rust, esp-idf-svc)
├── relay/             # Companion relay server (Rust, tokio/axum)
├── flipper-app/       # Flipper Zero FAP — in-device management UI (C, ufbt)
├── infra/             # OpenTofu IaC — cloud relay deployment (AWS + GCP)
├── config/            # Example module configurations
├── scripts/           # Build, flash, and setup helper scripts
└── docs/              # Architecture, setup, API, troubleshooting

Documentazione

  • SETUP.md — Configurazione completa da zero
  • ARCHITECTURE.md — Approfondimento sul design del sistema
  • API.md — Riferimento completo degli strumenti MCP
  • OPERATIONS.md — Guida operativa con comandi curl per ogni strumento
  • MODULE_DEVELOPMENT.md — Crea moduli personalizzati
  • RELAY.md — Configurazione dell'accesso remoto
  • HARDWARE.md — Cablaggio e dettagli hardware
  • TROUBLESHOOTING.md — Problemi comuni e soluzioni
  • DESIGN.md — Design tecnico e architettura del sistema

Per gli agenti AI

Vedi AGENTS.md per il contesto completo del progetto, le specifiche tecniche, l'architettura del sistema e tutto ciò che serve per continuare lo sviluppo di questo progetto.

Licenza

MIT

Scarica lo strumento
FaseConnettersi aNote
Flashing del firmwareUSB-C della WiFi Dev BoardLa scheda ha la propria porta USB, separata dal Flipper
Monitoraggio serialeUSB-C della WiFi Dev BoardStessa connessione USB del flashing
File di configurazione sulla scheda SDScheda SD del Flipper ZeroInserisci la SD nel Flipper, oppure rimuovila e montala sul PC
Comandi di controllo del serverScheda SD del Flipper ZeroCrea il file server.cmd in apps_data/flipper_mcp/
Comunicazione UARTAutomaticaWiFi Dev Board e Flipper si collegano tramite header GPIO
Richieste HTTP MCPIP della WiFi Dev Board:8080Connettiti tramite la tua rete WiFi
SchermataCosa fa
StatusRichiede un aggiornamento dello stato dall'ESP32, mostra IP, SSID, stato del server, versione
Start / Stop / RestartControlla il ciclo di vita del server HTTP MCP
Reboot BoardRiavvia la WiFi Dev Board ESP32
Configure WiFiTastiera su schermo per inserire SSID + password; scrive config.txt sulla scheda SD
View LogsLog diagnostico scorrevole scritto dall'ESP32 ogni 30 s
Tools ListElenco scorrevole di tutti gli strumenti MCP attualmente registrati sull'ESP32
Refresh ModulesAttiva la riscansione per la scoperta dei FAP + ricaricamento di modules.toml sull'ESP32
CategoriaStrumentiDescrizione
SubGHzsubghz_tx, subghz_rx, subghz_decode_raw, subghz_chat, subghz_tx_from_fileOperazioni su radiofrequenza
NFCnfc_detect, nfc_read, nfc_emulate, nfc_fieldInterazione con tag NFC
RFIDrfid_read, rfid_emulate, rfid_writeRFID a bassa frequenza
Infrarossoir_tx, ir_rxTelecomando IR
GPIOgpio_read, gpio_write, gpio_set_modeControllo I/O dei pin
BadUSBbadusb_run, badusb_listAttacchi USB HID
iButtonibutton_read, ibutton_emulatePortachiavi 1-Wire
Archiviazionestorage_list, storage_read, storage_write, storage_remove, storage_statGestione file su scheda SD
Sistemasystem_device_info, system_power_info, system_power_reboot, system_ps, system_free, system_uptimeGestione del dispositivo
BLEble_info, ble_beacon, ble_beacon_stop, ble_hid_start, ble_hid_type, ble_hid_press, ble_hid_mouse, ble_hid_stopBluetooth Low Energy (trasmissione beacon + emulazione HID)
Appapp_launch_{name} (rilevato automaticamente dalla scheda SD)Gestione applicazioni
PromptCosa fa
"Scansiona i tag NFC vicino al Flipper"Chiama nfc_detect per leggere i tag vicini
"Elenca tutti i file sulla scheda SD del Flipper"Chiama storage_list su /ext
"Trasmetti questo segnale SubGHz su 433,92 MHz: ..."Chiama subghz_tx con la frequenza indicata
"Leggi qualsiasi carta RFID presentata al Flipper"Chiama rfid_read e restituisce i dati del tag
"Quali app sono installate sul Flipper?"Chiama app_list per enumerare i FAP installati
"Invia questo segnale IR per spegnere la TV"Chiama ir_tx con il protocollo e i dati specificati
"Mostrami le informazioni di sistema del Flipper e la memoria libera"Chiama system_info + system_free
"Leggi il tag NFC, poi salva i suoi dati in /ext/nfc/captured.nfc"Multi-step: nfc_read → storage_write
"Monitora 315 MHz per 10 secondi e decodifica tutto ciò che senti"Chiama subghz_rx con frequenza e durata