VLA-Diff-MCP

VLA-Diff-MCP

Enables AI agents to inspect and control a robotic VLA system via MCP, offering read-only tools for ROS topics, processes, tmux, and logs, as well as write tools for publishing prompts, issuing tmux commands, restarting services, and running shell commands inside containers.

Category
Visit Server

README

VLA-Diff-MCP

VLA-Diff 项目运维工具 MCP server(一期只读 + 二期写操作)。

部署形态(工具裁剪开关)

同一份 server.py 通过环境变量 VLADIFF_MCP_PROFILE 裁剪暴露的工具集, 避免全局 / 工作区两个实例重复暴露同一工具:

形态 VLADIFF_MCP_PROFILE 暴露工具 部署位置
完整 full(默认) 全部 10 个 命令行直接调试
运维 ops 9 个(无 publish_prompt ~/Global-MCP-Server(Trae 全局 MCP global-diff-ops
指令 prompt publish_prompt 本目录(Trae 工作区 MCP vla-diff-prompt,见 .trae/mcp.json

publish_prompt 属敏感写操作(伪造大模型指令触发动作分发),仅在本工作区可用。 代码修改流程:本目录为源,改完后同步 server.py~/Global-MCP-Server/

功能

通过 MCP 协议向 Agent 提供稳定工具,替代每次临场拼 bash 命令:

一期:只读工具

工具 说明 运行位置
ros_topic_status 查询 ROS 话题频率 + 最新消息 容器 ros_noetic_uss_nav
ros_topic_echo 读取 ROS 话题最近 n 条消息 容器
process_status 查询关键服务进程状态 宿主机
tmux_status 列出 tmux 会话 宿主机
tmux_capture 抓取 tmux 会话 pane 输出 宿主机
read_log 读取 agent_run / scene_graph 日志 容器

二期:写操作工具

工具 说明 安全机制
publish_prompt 向 /agent_prompt 发布伪造指令(task_id: 0=VLA/1=TRACKING/2=其他) 无(模拟大模型消息)
tmux_send 向 tmux 会话发送命令(不存在时自动创建,不 kill-session) 无(按复用规则操作)
restart_service 重启 ego_planner 等(先杀后启,后台运行) confirm=True 显式确认
exec_cmd 容器内任意 shell 命令兜底 无白名单,谨慎使用

环境准备

# 创建虚拟环境(名称固定为 vla_diff_mcp_venv,已被 .gitignore 忽略)
uv venv vla_diff_mcp_venv

# 安装依赖(mcp SDK)
UV_PROJECT_ENVIRONMENT=vla_diff_mcp_venv uv sync

运行

vla_diff_mcp_venv/bin/python server.py

默认 stdio 传输,由 MCP 客户端(opencode / Claude Code)以子进程方式拉起。

前置条件

  • Docker 容器 ros_noetic_uss_nav 已创建(ROS 相关工具依赖)
  • 未启动时,ROS 类工具会返回明确错误,tmux / 进程类工具不受影响

扩展方向

  • 更多可重启服务:elastic-tracker、tracking_service 等(按需加入 KNOWN_RESTART
  • 服务配置化:将启动命令迁移到 YAML,避免写死在代码里

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured