
nav2_mcp_server
by ajtudela·★ 73·Score 45
An MCP server for controlling and monitoring ROS 2 Nav2 robots through navigation commands and system management.
Overview
The Nav2 MCP Server provides comprehensive tools for robot navigation and control within the ROS 2 ecosystem. It enables precise movements, real-time monitoring, and costmap management. The server supports both stdio and HTTP transport modes, making it flexible for different integration scenarios. With tools for navigation to specific poses, waypoint following, path planning, and lifecycle management, it offers complete control over Nav2-enabled robots.
Try asking AI
After installing, here are 5 things you can ask your AI assistant:
When to choose this
Choose this server if you need AI control over Nav2-enabled robots with precise navigation commands and real-time monitoring capabilities.
When NOT to choose this
Avoid if you're not using ROS 2 or Nav2, as this server provides no functionality outside of the Nav2 ecosystem.
Tools this server exposes
12 tools extracted from the READMEnavigate_to_posex: float, y: float, yaw: floatNavigate the robot to a specific pose in the map frame
follow_waypointswaypoints: str (JSON array)Navigate the robot through a sequence of waypoints in order
spin_robotangle: floatRotate the robot in place by a specified angle
backup_robotdistance: float, speed: floatMove the robot backward by a specified distance
dock_robotx: float, y: float, yaw: float, dock_id: str, dock_type: str, nav_to_dock: boolDock the robot to a charging station or dock
undock_robotdock_type: strUndock the robot from a charging station or dock
clear_costmapscostmap_type: strClear robot navigation costmaps to remove stale obstacle data
get_robot_poseGet the current position and orientation of the robot
cancel_navigationCancel the currently active navigation task
nav2_lifecycleaction: strControl Nav2 lifecycle (startup or shutdown)
get_pathstart_x: float, start_y: float, start_yaw: float, goal_x: float, goal_y: float, goal_yaw: float, planner_id: strCompute a navigation path between two poses
get_path_from_robotgoal_x: float, goal_y: float, goal_yaw: float, planner_id: strCompute a navigation path from the robot's current pose to a goal pose
Comparable tools
Installation
Installation
Dependencies
- ROS 2 (Jazzy)
- fastmcp
- Python
- uv (optional package manager)
Install with uv
git clone https://github.com/ajtudela/nav2_mcp_server.git
cd nav2_mcp_server
export ROS_DOMAIN_ID=0
uv syncConfiguration for Claude Desktop
{
"nav2 mcp server": {
"type": "stdio",
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/nav2_mcp_server",
"nav2-mcp-server"
],
"env": {
"ROS_DOMAIN_ID": "0",
"ROS_LOCALHOST_ONLY": "1"
}
}
}FAQ
- What is Nav2?
- Nav2 is the second generation of Robot Operating System (ROS) navigation software, providing a comprehensive set of tools for robot navigation in various environments.
- How do I integrate this with my robot?
- The MCP server needs to be connected to a running ROS 2 system with Nav2. Ensure your robot's ROS 2 environment is properly set up and running before starting the MCP server.
Compare nav2_mcp_server with
Last updated · Auto-generated from public README + GitHub signals.