Token导航 LogoToken导航TokenDH.com
nrs LLM logo
运维云端stdio官方级别未说明来源级核验

nrs LLM

MCP Server

nrs_llm是一个用于ROS 2环境的MCP服务器,通过rosbridge WebSocket连接ROS,提供主题/服务内省、发布/订阅工作流、服务调用、机器人连接检查、日志过滤和分析、路径再生等功能。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
机器人控制Python日志分析

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

eunseopsong

提供方

eunseopsong

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv env_llm

详细介绍

nrs_llm

nrs_llm 是用于ROS 2环境的MCP服务器。它通过以下方式连接到ROS rosbridge WebSocket 并公开了以下工具:

  • ROS 2主题/服务反思
  • 主题发布/订阅工作流
  • 服务调用
  • 机器人连接检查
  • 抛光原木的过滤与分析
  • 抛光路径再生
  • 基于TXT的抛光路径执行和记录

此存储库是围绕以下环境假设设计的:

  • Ubuntu 22.04
  • ROS 2谦逊
  • Python 3.10+
  • 单独的ROS 2工作区位于 ~/ros2_ws
  • rosbridge_server 运行于 127.0.0.1:9090

编写此README是为了让用户可以设置和运行 nrs_llm 从头开始。

______________________________________________________________________

1.推荐的目录布局

保持以下布局时,当前代码库最容易运行:

~/nrs_llm
~/ros2_ws
├── src
│   └── ... your ROS 2 packages
├── build
├── install
├── log
└── data
    └── ep
        ├── xyz.txt
        ├── vxyz.txt
        ├── fxyz.txt
        ├── rpy.txt
        ├── real_flat_filtered.txt
        ├── auto_logger.py
        ├── filter_logs_txt.py
        ├── polish_pipeline.py
        └── ...

如果移动这些路径,抛光管道的某些部分可能会失败,除非您在代码中更新相应的路径。

______________________________________________________________________

2.系统要求

首先安装基础系统工具。

2.1 Ubuntu软件包

sudo apt update
sudo apt install -y \
    python3 \
    python3-pip \
    python3-venv \
    python3-colcon-common-extensions \
    git

2.2 ROS 2谦逊

本README假定 ROS 2 Humble已安装 在:

/opt/ros/humble

请检查:

test -f /opt/ros/humble/setup.bash && echo "ROS 2 Humble found" || echo "ROS 2 Humble missing"

如果这打印出来 ROS 2 Humble missing,请先安装ROS 2 Humble,然后再继续。

______________________________________________________________________

3.克隆存储库

将此存储库克隆到您的主目录中:

cd ~
git clone  nrs_llm
cd ~/nrs_llm

如果存储库已经克隆,只需移动到其中:

cd ~/nrs_llm

______________________________________________________________________

4.创建并激活Python虚拟环境

此项目应在专用虚拟环境中运行。

创造环境:

cd ~/nrs_llm
python3 -m venv env_llm

激活它:

source ~/nrs_llm/env_llm/bin/activate

激活后,您的终端提示应显示如下内容:

(env_llm) user@host:~/nrs_llm$

升级pip:

python -m pip install --upgrade pip

稍后停用:

deactivate

要在新终端中再次激活:

cd ~/nrs_llm
source env_llm/bin/activate

______________________________________________________________________

5.安装Python依赖项

在内部安装所需的Python包 env_llm.

5.1核心包

cd ~/nrs_llm
source env_llm/bin/activate

pip install \
    fastmcp \
    pillow \
    numpy \
    scipy \
    matplotlib \
    pandas \
    opencv-python \
    websocket-client

5.2为什么需要这些包

  • fastmcp:MCP服务器框架
  • pillow:图像处理
  • numpy, scipy, matplotlib, pandas:过滤/分析实用程序
  • opencv-python:必填,因为 utils/websocket_manager.py 导入 cv2
  • websocket-client:必填,因为 utils/websocket_manager.py 导入 websocket

5.3验证导入

安装后运行此检查:

cd ~/nrs_llm
source env_llm/bin/activate
python - /tmp/ros_mcp_stdout.log 2>/tmp/ros_mcp_stderr.log

echo "===== STDOUT ====="
sed -n '1,80p' /tmp/ros_mcp_stdout.log
echo "===== STDERR ====="
sed -n '1,80p' /tmp/ros_mcp_stderr.log

这对于捕获丢失等导入错误非常有用 cv2 或失踪 websocket 支持。

______________________________________________________________________

14.抛光管道使用的默认路径

当前代码库采用以下默认路径进行过滤/分析/再生/执行:

过滤输入

  • ~/ros2_ws/data/ep/xyz.txt
  • ~/ros2_ws/data/ep/vxyz.txt
  • ~/ros2_ws/data/ep/fxyz.txt
  • ~/ros2_ws/data/ep/rpy.txt

分析输入/输出

  • ~/ros2_ws/data/ep/vxyz_filtered.txt
  • ~/ros2_ws/data/ep/fxyz_filtered.txt
  • 输出目录: ~/ros2_ws/data/ep/polish_out_filtered

再生

  • 输入路径: ~/ros2_ws/data/ep/real_flat_filtered.txt
  • 删除映射: ~/ros2_ws/data/ep/polish_out_filtered/removal_map.npz
  • 输出路径: ~/ros2_ws/data/ep/real_flat_filtered_new2.txt

路径执行

  • 记录器: ~/ros2_ws/data/ep/auto_logger.py
  • 执行人: ros2 run ur_custom_ik txt_ik_executor_force_patched

如果缺少这些文件或目录中的任何一个,相应的管道阶段可能会失败。

______________________________________________________________________

15.常见错误和修复

15.1 ModuleNotFoundError: No module named 'cv2'

原因:

  • opencv-python 未安装在 env_llm

修复:

cd ~/nrs_llm
source env_llm/bin/activate
pip install opencv-python

______________________________________________________________________

15.2 ModuleNotFoundError: No module named 'websocket'

原因:

  • websocket-client 未安装在 env_llm

修复:

cd ~/nrs_llm
source env_llm/bin/activate
pip install websocket-client

注意:导入名称为 websocket,但您安装的软件包是 websocket-client.

______________________________________________________________________

15.3 /mcp list 显示 Disconnected

常见原因:

  • Gemini CLI未读取 settings.json 您编辑的文件
  • MCP服务器命令错误
  • ROS环境没有来源
  • 虚拟环境Python路径错误
  • server.py 启动时因缺少依赖项而崩溃
  • 罗斯布里奇没有运行

检查表:

test -x /home/eunseop/nrs_llm/env_llm/bin/python && echo OK
test -f /home/eunseop/nrs_llm/server.py && echo OK
test -f /opt/ros/humble/setup.bash && echo OK
test -f /home/eunseop/ros2_ws/install/setup.bash && echo OK

然后验证罗斯布里奇:

ss -ltnp | grep 9090

然后运行第13.2节中的5秒调试命令。

______________________________________________________________________

15.4 No executable found

原因:

  • 未构建所需的ROS包
  • 工作区未来源
  • 可执行文件名与代码所期望的不同

修复:

cd ~/ros2_ws
colcon build
source /opt/ros/humble/setup.bash
source ~/ros2_ws/install/setup.bash
ros2 pkg executables ur_custom_ik

______________________________________________________________________

15.5 No such file or directory

原因:

  • 缺少文件 ~/ros2_ws/data/ep
  • 缺少抛光脚本
  • 代码中的错误路径假设

修复:

ls ~/ros2_ws/data/ep

检查所有必需的TXT文件和脚本是否确实存在。

______________________________________________________________________

15.6 pip警告不相关的包,例如 nrs-imitation

如果您的虚拟环境意外包含无关的可编辑安装, pip 可能会显示与以下内容没有直接关系的依赖性警告 nrs_llm.

检查:

pip show nrs-imitation

如果你不想把包裹放进去 env_llm,将其删除:

pip uninstall -y nrs-imitation

______________________________________________________________________

16.完整的启动顺序(推荐)

每次使用以下顺序。

1号航站楼:罗斯布里奇

source /opt/ros/humble/setup.bash
source ~/ros2_ws/install/setup.bash
ros2 launch rosbridge_server rosbridge_websocket_launch.xml

终端2:Gemini CLI

cd ~/nrs_llm
source env_llm/bin/activate
gemini -y

Gemini CLI内部:

/mcp list

预期结果:

  • ros-mcp 出现
  • 状态为 Ready
  • 列出了MCP工具

______________________________________________________________________

17.快速命令摘要

一次性设置

cd ~
git clone  nrs_llm
cd ~/nrs_llm
python3 -m venv env_llm
source env_llm/bin/activate
python -m pip install --upgrade pip
pip install fastmcp pillow numpy scipy matplotlib pandas opencv-python websocket-client

ROS工作空间构建

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws
colcon build

罗斯布里奇跑道

source /opt/ros/humble/setup.bash
source ~/ros2_ws/install/setup.bash
ros2 launch rosbridge_server rosbridge_websocket_launch.xml

Gemini CLI运行

cd ~/nrs_llm
source env_llm/bin/activate
gemini -y

______________________________________________________________________

18.总结

nrs_llm 如果成功,您需要以下所有条件:

  1. ROS 2 Humble已安装
  2. 一个内置的ROS 2工作空间 ~/ros2_ws
  3. 罗斯布里奇在港口行驶 9090
  4. 克隆的存储库位于 ~/nrs_llm
  5. env_llm 创建并激活虚拟环境
  6. 已安装所有必需的Python依赖项
  7. Gemini CLI settings.json 配置为启动 server.py 通过 /bin/bash -lc

如果您完全遵循此README,您应该能够启动Gemini CLI,运行 /mcp list,并查看 ros-mcpReady 国家。

目录标签

目录标签

机器人控制Python日志分析ROS2本地部署WebSocket路径再生

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP