Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

Inav MCP

de starlordz12versión 1.0.0i★ –iSe ejecuta en tu computadora
Nombre en el registroio.github.starlordz12/inav-mcp

Instalar

Resumen

Descripción del creador (original en inglés)

MCP server for iNAV flight-controller configuration and diagnostics

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en tu computadora
  • Transporte: stdio
  • Categoría: Viajes, mapas y clima

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

Necesitas

  • PyPIuv de Python instalado (para el comando uvx)

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json

{
  "mcpServers": {
    "inav": {
      "command": "uvx",
      "args": [
        "inav-mcp"
      ]
    }
  }
}

Ejecuta esto en tu terminal

claude mcp add inav -- uvx inav-mcp

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "inav": {
      "command": "uvx",
      "args": [
        "inav-mcp"
      ]
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "inav": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "inav-mcp"
      ]
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 9 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub starlordz12, dueña del repo

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Comparado con otros en Viajes, mapas y climai

  • Más estrellas que el 0% de los otros 1747 servidores de esta categoría
  • Publicado en el registro más recientemente que el 69% de los otros 1747 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 1747 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro Inav MCP?

Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (1.0.0) llegó al registro hace 14 días.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: ViaFrei, BrightLocal by Cotlet, Photo2Skin

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

ViaFrei

The German Real-Time Mobility Context Platform for AI: traffic, trains, charging, parking, weather.

de mavrovdeInicialActualizado hoy

Se ejecuta en la nube✓ viafrei.de

BrightLocal by Cotlet

Local rankings, map grids, reviews and citations in BrightLocal, worked by your agent.

de cotlet.devInicialActualizado hoy

Se ejecuta en la nube✓ cotlet.dev

Photo2Skin

AI tools for Minecraft: skins from a photo or prompt, AI builds, real-world maps, textures and more.

de photo2skinInicialActualizado hoy

Se ejecuta en la nube✓ photo2skin.com

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

iNAV MCP Server

An MCP server that lets Claude configure, diagnose, and troubleshoot an iNAV flight controller over USB — built primarily for flying wings (elevon FPV wings like the TBS Chupito and Mojito), and also for conventional fixed-wing planes.

It talks to the FC through a single serial connection, using the iNAV CLI for configuration writes and a small built-in MSP codec for live/binary reads. Every write is dry-run by default, auto-backs-up first, refuses while the board is armed, and reads back to verify.

Recorded against a live iNAV 6.1.0 flight controller over USB.

⚠️ Safety: Always remove props from the aircraft before any motor test.

This tool never switches the FC into MSP-RX mode and never arms the aircraft.


Requirements

  • Python 3.10+
  • An iNAV flight controller (developed against iNAV 8.x/9.x) connected over USB
  • The serial port the FC enumerates as (e.g. COM3 on Windows, /dev/ttyACM0 on Linux)

Install

From PyPI (once the first release is published):

pip install inav-mcp

From source (for development, or to run the latest unreleased code):

# from the repo root

python -m venv .venv .venv/Scripts/python -m pip install -e . # Windows

source .venv/bin/activate && pip install -e . # Linux/macOS

For development (tests):

.venv/Scripts/python -m pip install -e ".[dev]"
Try it without a flight controller

You don't need any hardware to confirm the project works — the test suite runs fully offline (no FC required):

.venv/Scripts/python -m pytest        # Windows

.venv/bin/pytest # Linux/macOS

All 186 tests should pass. To actually use the server, though, you need a flight controller flashed with iNAV firmware (developed against iNAV 8.x/9.x) connected over USB — without one, the connection tools have nothing to talk to.

Register with Claude

Add the server to your Claude (Code or Desktop) MCP config (~/.claude/settings.json or the Claude Desktop config). Replace the paths below with wherever you cloned this repo — the command points at the Python inside your .venv, and cwd is the repo root.

Windows:

{

"mcpServers": { "inav": { "command": "C:\\path\\to\\inav-mcp\\.venv\\Scripts\\python.exe", "args": ["-m", "inav_mcp.server"], "cwd": "C:\\path\\to\\inav-mcp" } } }

Linux / macOS:

{

"mcpServers": { "inav": { "command": "/path/to/inav-mcp/.venv/bin/python", "args": ["-m", "inav_mcp.server"], "cwd": "/path/to/inav-mcp" } } }

The server speaks MCP over stdio. You can also run it directly with the installed entry point inav-mcp.


Typical workflows

The server ships prompts that walk Claude through the common jobs — just pick one:

  • `new_fixed_wing_setup` — gather hardware details → define_aircraft → review → apply.
  • `troubleshoot_no_arm` — decode arming-prevention flags → guided fixes.
  • `configure_modes` — identify switches from live RC → suggest a layout → assign modes.

Or drive it conversationally, e.g.:

"Connect to my FC on COM3 and tell me why it won't arm."

"Set up a 4S flying wing on DSHOT600, then show me the commands before applying."


Tools (35)

Connection & identity
ToolWhat it does
list_serial_ports()List available serial ports.
find_fc(baud=115200, probe_all=False)Auto-detect which port has an FC by probing for MSP identity — no guessing the port.
connect(port, baud=115200)Open the FC connection, return board identity.
disconnect()Close the connection.
board_info()FC variant, firmware version, target, API version, sensors.
Hardware setup
ToolWhat it does
define_aircraft(name, wing_type, esc_protocol, cells, …)Offline planner — stores a profile and generates the CLI config plan.
get_aircraft_profile()The current declared profile + plan.
apply_aircraft_setup(confirm=False)Apply the plan (gated: not armed, auto-backup, read-back verify). On iNAV, applying is inherently save+reboot.
check_config()diff all + lint against the declared profile + ARM check.
Flight modes & switches
ToolWhat it does
suggest_mode_layout(skill_level, num_switches, has_gps=False)Recommend a fixed-wing switch/mode layout (offline).
set_flight_mode(mode_name, aux_channel, range_low, range_high, confirm=False)Assign one mode to an aux range.
assign_switch(switch_channel, switch_positions, mode_per_position, confirm=False)Map a whole 2/3/6-pos switch in one call.
clear_flight_mode(mode_name, confirm=False)Remove a mode's switch assignments.
Diagnostics
ToolWhat it does
diagnose()Full sweep: arming, sensors, RC, battery, GPS → prioritized fixes.
why_wont_it_arm()Decode arming-prevention flags into plain reasons + fixes.
read_rc_channels()Live RC channel values — flip a switch, see which channel moves.
read_sensors()Live attitude, per-sensor health, battery.
get_status()MSP status + CLI status/tasks.
list_flight_modes()All modes and their current switch assignments.
check_failsafe()Read failsafe_* settings, explain the RC-loss procedure, flag risky setups (e.g. RTH without GPS).
Bench tests & calibration
ToolWhat it does
test_motor(motor, throttle_us=1100, duration_s=2.0, props_removed=False, confirm=False)Spin ONE motor briefly. Hard-gated: props_removed=True + confirm=True, refuses while armed, always auto-stops. (No test_servo — iNAV has no live servo override; verify surfaces with the TX sticks + read_rc_channels().)
calibrate_accelerometer(confirm=False)Zero-level the accelerometer (board flat + still). Fixes most "not level" arming blocks.
calibrate_magnetometer(confirm=False)Calibrate the compass (rotate the craft ~30s).
Navigation & tuning
ToolWhat it does
read_gps()Live GPS fix/sats/position + nav-readiness assessment (read-only).
configure_gps(provider="UBLOX", sbas=None, confirm=False)Enable the GPS feature and set provider/SBAS.
set_nav(rth_altitude_m=None, rth_climb_first=None, rth_allow_landing=None, loiter_radius_m=None, confirm=False)Set fixed-wing RTH altitude / climb-first / landing / loiter radius.
read_tuning()Read fixed-wing PID gains, rates, and filter cutoffs.
set_pid(axis, p=None, i=None, d=None, ff=None, confirm=False)Set fixed-wing P/I/D/FF gains for one axis.
Config management
ToolWhat it does
backup_config(label=None)Save diff all to a timestamped file under ./backups/.
list_backups()List saved backups (path, time, size, label), newest first.
restore_config(path, confirm=False)Replay a saved backup via CLI.
set_failsafe(procedure=None, throttle_us=None, confirm=False)Set the RC-loss procedure / throttle (atomic write; FC validates the procedure token).
cli(command, confirm_for_writes=False, props_removed=False)Raw CLI escape hatch (ONE command, one reboot). Writes need confirm_for_writes; a live motor test needs props_removed=True and is never saved.
cli_batch(commands, confirm_for_writes=False)Run MANY CLI commands in one session → one reboot. Read-only batch exits without saving; a write batch backs up + saves once (rolls back if any command is rejected). Motor/save/exit commands refused.
save_and_reboot(confirm=False)save to EEPROM and reboot (marks the connection stale).

Resources

  • inav://modes-reference — iNAV mode glossary with fixed-wing relevance.
  • inav://current-profile — the declared aircraft profile + generated plan.
  • inav://last-backup — the most recent diff all backup.

Safety model

  1. Props-off gate — test_motor() and any live motor command via cli(...) require props_removed=True (the generic write-confirm cannot bypass it), refuse while the board is armed, and are never saved. test_motor() also clamps throttle/duration and always commands the motor back to stop.
  2. Armed guard — all writes (and motor tests / calibrations) refuse if the FC reports armed.
  3. Auto-backup before every write; the backup path is returned.
  4. Dry-run by default — writes return the exact commands; confirm=True applies.
  5. Read-back verify — after applying, settings are re-read and mismatches flagged.
  6. `save` = reboot — save_and_reboot warns and marks the connection stale.
  7. No receiver-mode changes — the FC is never switched to MSP-RX.

Reboot model — why batching matters

On iNAV, leaving the CLI always reboots the FC — both save (persist to EEPROM) and exit (discard changes) trigger a reboot, after which the USB VCP re-enumerates and we reconnect (~6–8 s, surfaced as reboot_seconds). So every CLI round-trip costs one reboot, including read-only ones (get, diff, dump, version). There is no way to read over the CLI without that reboot — the only lever is to do fewer CLI sessions.

What this server does to keep reboot churn down:

  • Reads prefer MSP, which never reboots. get_status, read_rc_channels, read_sensors, read_gps, list_flight_modes, why_wont_it_arm, diagnose, and the armed-guard all read structured data over MSP — zero reboots. Only data that's CLI-only (diff all, get failsafe, PID/rate/filter gets) pays a reboot.
  • Writes are atomic and batch internally. Each write tool (apply_aircraft_setup, set_flight_mode, assign_switch, set_pid, set_failsafe, restore_config, …) opens one CLI session: backup → apply all commands → save → reboot once. Multiple settings = one reboot.
  • `cli_batch()` for ad-hoc runs. Instead of calling cli() in a loop (one reboot per command — the cadence that can knock a board into DFU), pass a list to cli_batch(): one session, one reboot. Read-only batches exit without saving; write batches back up and save once (rolling back if any command is rejected).
  • Resilient reconnect. After a reboot the reconnect waits a short settle, then polls with backoff; if the original COM port doesn't return it scans for a re-enumerated one, and if the board came back in DFU/bootloader mode it says so and tells you to power-cycle (USB unplug/replug) rather than hanging.

How it works

  • Single serial handle shared between MSP and CLI modes (connection.py), tracked by a mode state machine. Never two handles on one port.
  • CLI-first writes — the CLI is stable across firmware versions; MSP command IDs can drift. A thin MSP v1/v2 codec (msp.py) handles only the live binary reads (status, RC, attitude, analog, GPS, sensor health, mode ranges, box maps).
  • Box IDs are resolved at runtime via MSP_BOXNAMES + MSP_BOXIDS — never hardcoded.
  • Arming flags are decoded from knowledge/arming_flags.json, calibrated to iNAV 8.x/9.x bit positions. The table declares its calibrated major versions, and

Solo se muestra el principio; lee el resto en el repo

Pregunta a PopNx