muav_gui_mcp
by arpoma16
Overview
Provides an AI agent interface for controlling and monitoring Multi-UAV GCS-connected UAVs and AGVs, enabling mission planning and ROS system interaction.
Installation
node ./lib/src/index.js stdioEnvironment Variables
- MUAV_API_URL
- MUAV_API_TOKEN
- SERVER_PORT
- REQUEST_TIMEOUT
- DEBUG
- SSL_VERIFY
Security Notes
The server uses Zod for input validation, which is generally good for defined schemas. However, critical tools like 'send_command', 'ros_service_call', and 'pub_ros_topic' accept 'z.any()' or 'z.object({}).passthrough()' for command attributes and ROS message payloads. This design delegates all validation of these potentially dangerous, robot-controlling inputs to the backend API (specified by MUAV_API_URL). If the backend API is not sufficiently robust in sanitizing or validating these arbitrary inputs, it could lead to command injection, unexpected robot behavior, or system compromise through malformed requests. Environment variables for API URL and token prevent hardcoded secrets but rely on secure environment management. Error messages from API calls are stringified and returned, which could expose internal server details. CORS is commented out in 'httpStreamableSever', but if enabled with permissive origins, it could introduce a web security risk.
Similar Servers
zen-mcp-server
A server for coordinating and managing AI agents, likely for simulations or complex task execution, leveraging Claude LLMs.
ros-mcp-server
Connects large language models (LLMs) with ROS/ROS2 robots, enabling natural language control and real-time observation without modifying robot code.
vibe-check-mcp-server
Provides a plug-and-play AI meta-mentor layer for LLM agents, offering metacognitive questioning to prevent over-engineering, reasoning lock-in, and misalignment.
ros2_mcp
The ROS2 MCP server allows AI tooling to connect with ROS 2 nodes, topics, services, and actions using the Model Context Protocol over stdio or SSE for real-time robotic control, data analysis, and AI-powered debugging.