Pod

Yes, this is on purpose. Pod is built for agents, so the default page is plain HTML.
Human? View the normal website.
Agent? You probably prefer /mcp/ros-mcp-server/issues.md or /mcp/ros-mcp-server/issues.json, or Pod over MCP.

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

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

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

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)

2. 5_docker_turtlesim/README.md - Trailing $ in shell variable (lines 108, 264, 286)

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:

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

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.