Reported issues for ros-mcp-server
Pod holds 23 of 46 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.
Back to ros-mcp-server.
Most discussed
publish_for_durations works not as expected by name
publish_for_durations really not for publish for durations but publish with intervals. See inside implementation: https://github.com/robotmcp/ros-mcp-server/blob/199d21908a936d17fc8f02a318cf7758ab619376/ros_mcp/tools/topics.py#L651
The problem is that with this implementation, it's impossible to send commands continuously over any period of time. For example, to perform a 90-degree rotation through a diff_drive_controller that receives data in radians per second. So, I need to send the command
Read the thread · 2026-02-05 · closed · external user · 5 comments
Any way to work image recognition with Ollama Qwen-3-vl
I tryed various variants of MCP tool output for image for Ollama can recognize it but no one work. Ollama describes gotten image as default (just base on system prompt not base on image).
Any help how it posible to return image for Ollama from MCP tool.
I use: Langflow + Ollama + ros-mcp-server + camera in Gazebo on robot.
Some of my tryings:
def _encode_image_to_imagecontent(image) -> Image:
"""
Encodes a PIL Image to a format compatible with ImageContent.
Args:
ima
[Read the thread](https://github.com/robotmcp/ros-mcp-server/issues/208) · 2025-12-03 · closed · external user · 6 comments
### unitree Go2 can't work any action at all.
Hi, author
Thank you for great work. I've been trying this repo. I could make sure that I can see ros2 topic list on Claude-desktop while my laptop connects to Go2 Jetson with wired-LAN.
I've tried such the prompt orders as "sit down" or "go forward". Then Claude made some messages and sent them to Go2. But Go2 couldn't work at all.
I would like you to give me any help to solve this issue.
Thanks,
[Read the thread](https://github.com/robotmcp/ros-mcp-server/issues/206) · 2025-12-01 · closed · external user · 6 comments
### Add CLI Client Examples and Support for Custom LLM Providers
Currently, the examples and code snippets provided in the repository mainly focus on **Claude**, **OpenAI**, and **Cursor** integrations.
To make the project more flexible and accessible, I propose adding examples and documentation for **CLI-based clients** that can integrate with **custom LLM providers** of the user’s choice.
This would enable developers to:
* Use the MCP server with any LLM (not just OpenAI or Claude).
* Easily integrate MCP capabilities into their own applications or workfl
[Read the thread](https://github.com/robotmcp/ros-mcp-server/issues/154) · 2025-10-07 · closed · outside contributor · 5 comments
### Refactor needed for more standard python package structure
The current package structure limits some functionality in how the server can be called when installed via pip. Specifically having our entrypoint in the root directory of the package.
Putting down a proposed structure that can be discussed and implemented if there is agreement.
ros-mcp-server/ ├── pyproject.toml # Package metadata & build config ├── MANIFEST.in # Additional file includes ├── README.md ├── LICENSE ├── server.json # MCP server
Read the thread · 2025-10-07 · closed · outside contributor · 5 comments
Adding devcontainer.json and Dockerfile to ease development in VSCode
Hello,
I recently tried out the ROS MCP server from an Ubuntu 20.04 machine with ROS2 through a container and realized that having a docker file specific for the same to enable development in Ubuntu 22.04 container with ROS2. I'd like to volunteer to add a devcontainer.json and Dockerfile along with a README/example to show how to start development easily in VSCode.
If that sounds good, could you assign this task to me? If you have any other suggestions related to this, I'd like to addre
Read the thread · 2025-09-19 · closed · outside contributor · 7 comments
ros-mcp-server not visible in Claude Desktop tools list
After following the build instructions from https://github.com/aaddrick/claude-desktop-debian, i successfully installed claude desktop and also check it by launching it.
Then i modified/created ~/.config/Claude/claude_desktop_config.json and inserted the data as per instructions in https://github.com/robotmcp/ros-mcp-server/blob/main/docs/installation.md { "mcpServers": { "ros-mcp-server": { "command": "uv", "args": [ "--directory", "/home/awais/ros-mcp-serve
Read the thread · 2025-09-11 · closed · external user · 6 comments
Support for ROS Actions
ROS actions are a essential part of the workflow for several ROS enabled robots. The MCP server needs to enable access to these in order to fully support them
Read the thread · 2025-09-05 · closed · outside contributor · 6 comments
Most recent
Security scan results for ros-mcp-server — MCPSafe AIVSS 83/100 (Grade B)
Hi team 👋
I ran a free deep security scan of robotmcp/ros-mcp-server using MCPSafe — a purpose-built scanner for MCP servers using a 5-LLM consensus panel to detect prompt injection risks, over-scoped tool schemas, supply chain issues, and more.
Results: 83/100 · Grade B
| Severity | Count |
|---|---|
| 🔴 Critical | 0 |
| 🟠 High | 0 |
| 🟡 Medium | 30 |
| 🟢 Low | 9 |
Summary: 30 medium-severity findings around ROS tool schemas and robot command perm
Read the thread · 2026-05-12 · closed · external user · 1 comment
Security reporting contact
Hi, I could not find a SECURITY.md or private security contact for this repository. Could you please open a GitHub Security Advisory so I can submit a potential vulnerability report privately?
Read the thread · 2026-05-08 · closed · external user · 0 comments
docs: macOS Claude Desktop config fails because zsh -lc does not source .zshrc
Description
The macOS installation guide in docs/installation.md configures the Claude Desktop MCP server as:
{
"mcpServers": {
"ros-mcp-server": {
"command": "zsh",
"args": ["-lc", "uvx ros-mcp --transport=stdio"]
}
}
}
This configuration fails on macOS because zsh -lc starts a login, non-interactive shell that sources ~/.zprofile but not ~/.zshrc. The uv installer adds ~/.local/bin to PATH in ~/.zshrc only, so uvx is not found
Read the thread · 2026-03-30 · closed · outside contributor · 1 comment
fix: devcontainer fails to start on macOS due to --gpus=all and X11 configuration
Description
The devcontainer configuration (.devcontainer/devcontainer.json) fails to start on macOS for three reasons:
Read the thread · 2026-03-30 · open · outside contributor · 0 comments
Image saving fails in uvx execution due to relative path dependency (./camera)
Description
When running the MCP server using packaged execution:
uvx ros-mcp --transport=stdio
image subscription fails with the following error:
Permission denied: './camera'
However, the same functionality works correctly when running the server locally:
cd ~/ros-mcp-server && uv run server.py --transport=stdio
This results in inconsistent behavior depending on how the server is executed.
Environment
- OS: Windows 11
- WSL: Ubuntu 24.04 (WSL
Read the thread · 2026-03-30 · open · outside contributor · 1 comment
docs: 8_images README missing macOS/Docker setup instructions
Problem
The tutorial for examples/8_images assumes a native Linux environment with apt install for all ROS2 packages. macOS (and Windows without WSL) users have no way to follow this tutorial.
What's Missing
- No Docker-based alternative: The entire tutorial depends on
sudo apt install ros-*commands — unavailable on macOS - No macOS guidance in Troubleshooting: The "Display Issues" section mentions WSL, remote connections, and Docker, but gives no macOS-specific advice (e
Read the thread · 2026-03-30 · closed · outside contributor · 0 comments
docs: 6_chatgpt README missing macOS setup instructions
Problem
The tutorial for examples/6_chatgpt only covers Windows (PowerShell) and Linux (WSL/Ubuntu) setups. macOS users are left without guidance, despite the FAQ stating "Linux and macOS users can run directly."
What's Missing
- No "Option C: macOS" for installing
uv,ngrok, or running the MCP server - No guidance on running ROS2 on macOS (which requires Docker since ROS2 is Linux-native)
- The FAQ acknowledges macOS support but the step-by-step tutorial doesn't include any macOS
Read the thread · 2026-03-30 · closed · outside contributor · 0 comments
Documentation typos and bugs across example READMEs
Description
While running through examples 5 (Docker Turtlesim), 6 (ChatGPT), and 7 (Cursor), I found several documentation typos and bugs that could confuse users or cause errors.
Issues Found
1. 5_docker_turtlesim/README.md - Typo in script path (line 58)
- Current: ./scrips/launch.sh
- Expected: ./scripts/launch.sh
- Missing letter 't' in 'scripts'
2. 5_docker_turtlesim/README.md - Trailing $ in shell variable (lines 108, 264, 286)
- Current: source /opt/ros/${RO
Read the thread · 2026-03-29 · closed · outside contributor · 0 comments
docs: Fix typo in Docker Turtlesim README — "./scrips/launch.sh" should be "./scripts/launch.sh"
Description
In examples/5_docker_turtlesim/README.md, the Quick Start section (line 58) contains a typo in the launch script path:
Current (incorrect): ./scrips/launch.sh
Expected (correct): ./scripts/launch.sh
The actual directory in the repository is scripts/, not scrips/. This causes a "file not found" error for users who copy-paste the command.
Additional finding
In examples/2_gemini/README.md (line 5), there is also a typo:
Current: `...follow, this tot
Read the thread · 2026-03-29 · closed · outside contributor · 0 comments
Security: Unrestricted ROS service calls via MCP tool — prompt injection → robot control
Hi @robotmcp,
While researching MCP server security, I scanned ros-mcp-server and found a few things worth flagging.
Findings
| # | Issue | Severity | Location |
|---|---|---|---|
| 1 | Unrestricted ROS service calls — any service callable via prompt injection | HIGH | ros_mcp/tools/services.py:260 |
| 2 | No input validation on service request parameters | MEDIUM | ros_mcp/tools/services.py:290 |
| 3 | Network scanning via user-controlled IP in ping tool | LOW | `ro |
Read the thread · 2026-03-27 · open · external user · 0 comments
[Security] AgentWard Audit: Physical robot actuation without approval gates — safety-critical gap
Hey — I reviewed ros-mcp-server and wanted to flag something important around physical safety.
Your README already notes "Permission controls — upcoming" (line 71), so I know this is on your radar. Wanted to share specifics that might help prioritize.
TL;DR
An agent can publish velocity commands to /cmd_vel, trigger arbitrary ROS services, and send action goals — all without approval gates or argument validation. This is a physical safety hazard: a prompt injection in sensor data or a ha
Read the thread · 2026-03-11 · closed · external user · 0 comments
Add option for local ROS 2 connection without ROSBridge
Hi, I have a different use-case than that this MCP is meant for. I'm running an AI agent on my ROS 2 robot, and have the MCP installed directly on the robot. It is a bit annoying that I need to use rosbridge as a middleman when I can talk to ROS 2 directly.
My proposal:
Option 1:
- add a check for rosbridge
- if rosbridge connection is not found, look for local ROS 2 using rclpy
- establish direct ROS 2 communication
PS. I don't want to support ROS1 since it is EOL. And since I don't use it,
Read the thread · 2026-02-27 · open · external user · 3 comments
Building skills.md for the ROS-MCP server for personal agents like OpenClaw
Currently the ROS-MCP-server loads up the context every-time the server is started by the client, including the base context, tools description and robot specifications. This could lead to context bloating, and increased token usage.
As personal agents like ClaudeCode and OpenClaw rely more on skills, we should build skills/ros-control for the ros-mcp server. The skills will contain all the information about the server. Any specific or custom workflow can easily be added by the user by def
Read the thread · 2026-02-25 · open · outside contributor · 0 comments
how to config n8n or Dify to use this ros-mcp-server?
How to config other agent orchestrator like n8n or Dify to use the ros-mcp-server?
Read the thread · 2026-02-03 · closed · external user · 2 comments
Version mismatch in uv.lock (3.0.0 vs 3.0.1)
Description
After PR #236 merge, there will be a version mismatch between package files.
Current State
pyproject.toml: version3.0.1server.json: version3.0.1uv.lock: version3.0.0
Fix
Run uv lock to regenerate the lock file with the correct version.
Read the thread · 2026-02-01 · closed · outside contributor · 1 comment
The remaining reports are on the project's issue tracker.