Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
flipper-mcp — Servidor MCP impulsado por IA para Flipper Zero. Controla SubGHz, NFC, RFID, IR, BLE, GPIO y más por WiFi usando Claude o cualquier cliente MCP. | Kitploit
Herramientas/GitHubGitHub/roostercoopllc/flipper-mcp
Seguridad de Sistemas EmbebidosSeguridad BluetoothHerramientas RFID/NFCScripting y AutomatizaciónSeguridad InalámbricaPruebas de PenetraciónComando y ControlUtilidades y FrameworksSeguridad de Hardware e IoTRed TeamingHerramienta de Acceso Remoto
22214hace 6 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Seguridad de IA
GitHubroostercoopllc/flipper-mcp

flipper-mcp

Servidor MCP impulsado por IA para Flipper Zero. Controla SubGHz, NFC, RFID, IR, BLE, GPIO y más por WiFi usando Claude o cualquier cliente MCP.

Ver Repositorio

flipper-mcp

Un servidor MCP (Model Context Protocol) en Rust que se ejecuta directamente en la WiFi Dev Board v1 (ESP32-S2) del Flipper Zero, lo que permite a los agentes de IA controlar un Flipper Zero a través de la red.

¿Qué es esto?

Este proyecto coloca un servidor MCP en el propio Flipper. Cualquier cliente de IA compatible con MCP (Claude Desktop, Claude Code, etc.) puede conectarse y usar las capacidades del Flipper como herramientas — SubGHz, NFC, RFID, IR, GPIO, BadUSB, iButton, almacenamiento de archivos y más.

A diferencia de otros proyectos que requieren un ordenador host conectado por USB, flipper-mcp se ejecuta en el módulo WiFi ESP32-S2 conectado al Flipper. El Flipper se convierte en una herramienta autónoma y accesible por red.

Arquitectura

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

El ESP32-S2 ejecuta un servidor HTTP que implementa el protocolo MCP. Traduce las llamadas a herramientas MCP en comandos CLI del Flipper Zero a través de UART a 115200 baudios. Un servidor relay complementario permite el acceso remoto desde cualquier red.

Características

  • ~30 herramientas integradas que cubren todas las aplicaciones predeterminadas del Flipper Zero
  • Descubrimiento dinámico de módulos — autodetección de aplicaciones FAP desde la tarjeta SD + herramientas basadas en configuración TOML
  • Configuración centrada en el Flipper — configura el WiFi desde el FAP del Flipper (sin necesidad de teléfono, navegador ni scripts de PC)
  • Doble transporte MCP — Streamable HTTP (moderno) + Legacy SSE (compatible con versiones anteriores)
  • Descubrimiento local — anuncio mDNS como flipper-mcp.local
  • Acceso remoto — túnel WebSocket inverso a través de un servidor relay (sin necesidad de reenvío de puertos)
  • Sin autenticación — diseñado para escenarios de pentesting e investigación de seguridad
  • Servidor relay complementario — pequeño binario en Rust para acceso entre redes, compatible con múltiples Flippers

Hardware necesario

  • Flipper Zero (cualquier versión de firmware con soporte CLI)
  • WiFi Dev Board v1 (módulo ESP32-S2-WROVER)

¿A qué dispositivo me conecto?

Requisitos previos

  • Rust — instálalo mediante rustup:
    root@kitploit:~
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    
  • Toolchain de Xtensa — el ESP32-S2 requiere una toolchain de Rust personalizada:
    root@kitploit:~
    cargo install espup
    espup install
    source ~/export-esp.sh  # Run this in every new terminal
    
  • Herramienta de flasheo y proxy del enlazador:
    root@kitploit:~
    cargo install espflash
    cargo install ldproxy
    
  • Paquetes del 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
    

Inicio rápido

Instrucciones completas de configuración en docs/SETUP.md

1. Compilar y flashear el 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. Configurar el WiFi

Crea config.txt en la tarjeta SD del Flipper en SD:/apps_data/flipper_mcp/config.txt:

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

O configura directamente desde el Flipper usando el FAP complementario (ver Paso 5): Apps → Tools → Flipper MCP → Configure WiFi

En el primer arranque sin archivo de configuración, el ESP32 espera y escribe status=needs_config en el archivo de estado. El FAP del Flipper mostrará esto en la pantalla Status.

4. Verificar que el servidor funciona

Antes de configurar un cliente de IA, confirma que el servidor es accesible 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

Probar las herramientas MCP directamente con curl

Obtén la IP del Flipper desde el menú Flipper MCP → Status, y luego prueba:

Emisión de beacon BLE (transmitir un anuncio BLE falsificado):

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"}}}'

Teclado HID BLE (emular un teclado inalámbrico y escribir):

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":{}}}'

Transmisión IR (enviar códigos de mando a distancia 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}}}'

Recepción SubGHz (escuchar señales inalámbricas en 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}}}'

Sustituye 192.168.0.58 por la dirección IP real de tu Flipper.

Luego añade esto a tu configuración de Claude Desktop (claude_desktop_config.json):

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

5. Gestionar la placa WiFi desde el Flipper

Instala la aplicación complementaria Flipper MCP desde flipper-app/ en el Flipper Zero. Compílala con ufbt y copia el .fap a 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/

La aplicación aparece en Apps → Tools → Flipper MCP y proporciona:

La aplicación se comunica mediante archivos en la tarjeta SD (sin cableado adicional más allá del conector GPIO). Configure WiFi es el asistente de primer arranque — no requiere teléfono, navegador ni scripts de PC.

6. (Opcional) Acceso remoto mediante relay

Autoalojado (ejecuta el binario donde quieras):

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

Despliegue en la nube (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

Consulta RELAY.md para las instrucciones completas.

Herramientas disponibles

Se pueden añadir herramientas personalizadas mediante archivos de configuración TOML o instalando aplicaciones FAP en la tarjeta SD. Consulta OPERATIONS.md para comandos curl listos para copiar y pegar de cada herramienta.

Alternativa gratuita: Open WebUI + Ollama

No necesitas una suscripción a Claude para usar flipper-mcp. Open WebUI es una interfaz gratuita y autoalojada al estilo ChatGPT que soporta de forma nativa MCP Streamable HTTP (v0.6.31+). Combínala con Ollama para un control del Flipper totalmente local y offline impulsado por IA.

1. Instalar Ollama y descargar un modelo con capacidad de herramientas

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. Iniciar 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

Abre http://localhost:3000 en tu navegador.

3. Conectar el servidor MCP del Flipper

  1. Ve a Admin Settings (icono de engranaje) → External Tools
  2. Haz clic en + Add Server
  3. Establece Type en MCP (Streamable HTTP)
  4. Introduce la URL del servidor:
    • Local: http://flipper-mcp.local:8080/mcp (o http://192.168.x.x:8080/mcp)
    • Vía relay: https://relay.example.com/mcp
    • Desde Docker: usa http://host.docker.internal:8080/mcp si el Flipper está en la red del host de Docker
  5. Establece Authentication en None (flipper-mcp no tiene autenticación)
  6. Save

Consejo: En Workspace → Models → (tu modelo) → Advanced Parameters, establece Function Calling en Default para modelos más pequeños. Cambia a Native solo para modelos con un fuerte soporte de herramientas integrado (Llama 3.1 8B+, Qwen 2.5, Mistral).

4. Prompts de ejemplo

Una vez conectado, prueba estos en el chat de Open WebUI:

Las tareas agénticas de varios pasos funcionan mejor con modelos más grandes (Llama 3.1 70B, Qwen 2.5 72B, o modelos en la nube mediante APIs compatibles con OpenAI). Los modelos más pequeños manejan llamadas de una sola herramienta de forma fiable.

Estructura del proyecto

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

Documentación

  • SETUP.md — Configuración completa desde cero
  • ARCHITECTURE.md — Análisis en profundidad del diseño del sistema
  • API.md — Referencia completa de las herramientas MCP
  • OPERATIONS.md — Guía de operaciones con comandos curl para cada herramienta
  • MODULE_DEVELOPMENT.md — Crear módulos personalizados
  • RELAY.md — Configuración del acceso remoto
  • HARDWARE.md — Detalles de cableado y hardware
  • TROUBLESHOOTING.md — Problemas comunes y soluciones
  • DESIGN.md — Diseño técnico y arquitectura del sistema

Para agentes de IA

Consulta AGENTS.md para obtener el contexto completo del proyecto, especificaciones técnicas, arquitectura del sistema y todo lo necesario para continuar el desarrollo de este proyecto.

Licencia

MIT

Descargar herramienta
EtapaConectar aNotas
Flashear firmwareUSB-C de la WiFi Dev BoardLa placa tiene su propio puerto USB, independiente del Flipper
Monitorización serieUSB-C de la WiFi Dev BoardLa misma conexión USB que para flashear
Archivos de configuración en la SDTarjeta SD del Flipper ZeroInserta la SD en el Flipper, o extráela y móntala en el PC
Comandos de control del servidorTarjeta SD del Flipper ZeroCrea el archivo server.cmd en apps_data/flipper_mcp/
Comunicación UARTAutomáticaLa WiFi Dev Board y el Flipper se conectan mediante el conector GPIO
Peticiones HTTP MCPIP de la WiFi Dev Board:8080Conéctate a través de tu red WiFi
PantallaQué hace
StatusSolicita una actualización de estado al ESP32, muestra IP, SSID, estado del servidor, versión
Start / Stop / RestartControla el ciclo de vida del servidor HTTP MCP
Reboot BoardReinicia la WiFi Dev Board ESP32
Configure WiFiTeclado en pantalla para introducir SSID + contraseña; escribe config.txt en la tarjeta SD
View LogsRegistro de diagnóstico desplazable escrito por el ESP32 cada 30 s
Tools ListLista desplazable de todas las herramientas MCP registradas actualmente en el ESP32
Refresh ModulesActiva el reescaneo de descubrimiento de FAPs + recarga de modules.toml en el ESP32
CategoríaHerramientasDescripción
SubGHzsubghz_tx, subghz_rx, subghz_decode_raw, subghz_chat, subghz_tx_from_fileOperaciones de radiofrecuencia
NFCnfc_detect, nfc_read, nfc_emulate, nfc_fieldInteracción con etiquetas NFC
RFIDrfid_read, rfid_emulate, rfid_writeRFID de baja frecuencia
Infrarrojosir_tx, ir_rxMando a distancia IR
GPIOgpio_read, gpio_write, gpio_set_modeControl de E/S de pines
BadUSBbadusb_run, badusb_listAtaques USB HID
iButtonibutton_read, ibutton_emulateLlaveros 1-Wire
Almacenamientostorage_list, storage_read, storage_write, storage_remove, storage_statGestión de archivos en la tarjeta SD
Sistemasystem_device_info, system_power_info, system_power_reboot, system_ps, system_free, system_uptimeGestión 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 (emisión de beacon + emulación HID)
Appsapp_launch_{name} (autodescubierto desde la tarjeta SD)Gestión de aplicaciones
PromptQué hace
"Scan for NFC tags near the Flipper"Llama a nfc_detect para leer etiquetas cercanas
"List all files on the Flipper's SD card"Llama a storage_list en /ext
"Transmit this SubGHz signal on 433.92 MHz: ..."Llama a subghz_tx con la frecuencia indicada
"Read any RFID card that's presented to the Flipper"Llama a rfid_read y devuelve los datos de la etiqueta
"What apps are installed on the Flipper?"Llama a app_list para enumerar los FAPs instalados
"Send this IR signal to turn off the TV"Llama a ir_tx con el protocolo y los datos especificados
"Show me the Flipper's system info and free memory"Llama a system_info + system_free
"Read the NFC tag, then save its data to /ext/nfc/captured.nfc"Varios pasos: nfc_read → storage_write
"Monitor 315 MHz for 10 seconds and decode anything you hear"Llama a subghz_rx con frecuencia y duración