Descripción general
El servidor ROS MCP está diseñado para ayudar a los robots a realizar tareas complejas y adaptarse eficazmente a diversos entornos. Para ello, proporciona un conjunto de funciones que transforman los comandos de lenguaje natural, introducidos por el usuario a través de un LLM, en comandos ROS para el control del robot. Además, al utilizar rosbridge
, está configurado para funcionar con sistemas ROS
y ROS2
, y su comunicación basada en WebSockets permite una amplia aplicabilidad en diversas plataformas.
La investigación basada en este proyecto se puede encontrar en el vídeo enlazado a continuación.
Tipos admitidos
- mensajes_de_geometría/Twist
- sensor_msgs/Image
- sensor_msgs/EstadoConjunto
Características
- Compatibilidad universal basada en WebSocket : se comunica con los sistemas ROS y ROS2 mediante rosbridge, lo que permite una integración perfecta independientemente de la versión de ROS.
- Compatibilidad multiplataforma : funciona en Linux, Windows y MacOS, lo que lo hace adecuado para diversos entornos de desarrollo e implementación.
- Fácil integración con sistemas LLM e IA : los comandos de lenguaje natural se pueden traducir directamente en acciones de robot a través de funciones MCP.
- Conjunto de funciones extensibles : agregue fácilmente nuevas funciones de control de robot o sensores ampliando la interfaz de la herramienta MCP.
- No se requiere modificación del nodo ROS : interactúa con temas y servicios ROS/ROS2 existentes sin cambiar el código central de su robot.
- Compatibilidad con comandos nativos ROS/ROS2 : admite opcionalmente el uso de bibliotecas ROS/ROS2 locales, de modo que puede ejecutar comandos y herramientas nativos de ROS junto con el control basado en WebSocket.
Contribuyendo
¡Las contribuciones son bienvenidas!
Ya sea que esté corrigiendo un error tipográfico, agregando una nueva función o sugiriendo mejoras, su ayuda es apreciada.
Siga las pautas de contribución para obtener más detalles sobre cómo contribuir a este proyecto.
Instalación
Instalación mediante herrería
Para instalar ros-mcp-server
para Claude Desktop automáticamente a través de Smithery :
Instalación local
Instalación uv
- Para instalar
uv
, puedes utilizar el siguiente comando:
o
- Crear entorno virtual y activarlo (Opcional)
Configuración del servidor MCP
Establezca la configuración de MCP en mcp.json.
Si usa Claude Desktop, puede encontrar mcp.json usando el siguiente comando:
- MacOS/Linux
- Ventanas
Funciones MCP
Puede encontrar la lista de funciones en MCPFUNCTIONS.md .
Cómo utilizar
1. Configure la IP y el puerto para conectarse a Rosbridge.
- Abra
server.py
y cambieLOCAL_IP
,ROSBRIDGE_IP
yROSBRIDGE_PORT
. (El valor predeterminado deROSBRIDGE_PORT
es9090
).
2. Ejecute el servidor rosbridge.
ROS 1
ROS 2
3. Ejecute cualquier sistema de IA que haya importado ros-mcp-server
.
4. Escribe "Hacer que el robot avance".
5. Verifique rosbridge_server
y ros topic
.
rosbridge_server
ros topic
Prueba de simulación
Control basado en MCP utilizando el manipulador móvil MOCA dentro del entorno de simulación NVIDIA Isaac Sim.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Facilita el control del movimiento robótico al proporcionar funciones que permiten la manipulación precisa de velocidades lineales y angulares a través de comandos de lenguaje natural, compatibles con ROS y ROS2.
- Tipos admitidos
- Características
- Contribuyendo
- Instalación
- Funciones MCP
- Cómo utilizar
- Prueba de simulación
Related Resources
Related MCP Servers
- AsecurityFlicenseAqualityEnables users to control the cursor in Figma through verbal commands using an agentic AI agent, streamlining the design process with a new interaction method.Last updated -192,5141JavaScript
- -securityFlicense-qualityA Python-based server that enables AI assistants to control robots by integrating the Model Context Protocol (MCP) with ROS 2, allowing for natural language commands that translate into robot movement via the /cmd\_vel topic.Last updated -42Python
- AsecurityAlicenseAqualityA server built on the Model Context Protocol that enables controlling the Unitree Go2 robot using natural language commands, which are translated into ROS2 instructions for the robot to perform corresponding actions.Last updated -126PythonApache 2.0
- -securityFlicense-qualityA Python server that enables remote control of Bittle robots via Bluetooth using the Model Context Protocol (MCP), allowing users to programmatically send movement and pose commands.Last updated -Python