nonead/Nonead-Universal-Robots-MCP
If you are the rightful owner of Nonead-Universal-Robots-MCP and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
MCP (Model Context Protocol) is a communication protocol developed by Anthropic that enables large language models to efficiently access external data/tools/services for delivering more accurate and intelligent responses.
Nonead Universal-Robots MCP Server
| | | | | | | | | |
1. MCP 是什么?
MCP(模型上下文协议) 是由 Anthropic 公司开发的一种通信协议(2024年11月开源),主要用于让 AI 大模型(如 DeepSeek-V3-0324,DeepSeek-R1,Qwen3 等) 更高效地访问外部数据、工具和服务,从而提供更精准、更智能的回答。
MCP 能做什么?
提供上下文信息: 应用程序可以向 AI 传递文件、数据库内容等额外信息,帮助 AI 更好地理解问题。 例如:让 AI 读取一份报告,再基于报告内容回答问题。
调用外部工具: AI 可以通过 MCP 直接操作本地或远程功能,如读写文件、查询数据库、调用 API、控制硬件设备等。 例如:让 AI 自动整理你的文档,或者从数据库提取数据生成报表。
构建智能工作流: 开发者可以组合多个 MCP 服务,让 AI 完成复杂任务,比如自动化数据分析、智能客服等。
保障数据安全: MCP 在本地运行,避免敏感数据上传到云端,保护隐私。
2. MCP 如何工作?
MCP 采用 客户端-服务器(Client-Server)架构: MCP 客户端:通常是 AI 应用(如 Claude 或其他 LLM 工具),负责向服务器发送请求。 MCP 服务器:运行在本地或远程,提供数据或工具接口,供 AI 调用。 通信方式:基于 JSON-RPC 2.0(一种标准通信格式),支持请求、响应和实时通知。
3. MCP 服务器的主要功能
MCP 服务器相当于 AI 的“助手”,可以提供以下支持: 访问数据(Resource Exposure) 提供文件、数据库、内存数据等,例如: file:///docs/report.pdf(读取本地文件)、db://sales/records(查询数据库)、执行操作(Tool Provisioning)
提供可调用的功能,例如: search_database(sql_query)(执行 SQL 查询)、save_file(path, content)(保存文件)、实时更新(Dynamic Notification), 当数据变化时,服务器可以主动通知 AI,确保信息最新,会话管理(Session Management),管理 AI 与服务器的连接,确保通信稳定。
2. nUR MCP Server 核心功能
拓德科技自主研发的nUR_MCP_SERVER产品技术说明
产品概述: nUR_MCP_SERVER是基于MCP(Model Control Protocol)接口协议构建的智能机器人控制中间件系统,通过集成大语言模型(LLM)实现工业机器人的自然语言交互式控制。该产品采用Client-Server架构设计,支持与优傲(Universal Robots)全系列协作机器人深度集成,革新了传统示教器编程的工业机器人操作范式。
核心技术架构:
-
语义解析引擎 搭载多层Transformer架构的NLP处理模块,支持上下文感知的指令解析(Contextual Command Parsing),实现自然语言到机器人控制指令的端到端转换,指令识别准确率达98.6%
-
动态脚本生成系统 基于LLM的代码生成框架,可自动将自然语言指令转化为URScript机器人控制脚本,支持实时语法校验和安全性验证,生成效率较传统编程提升12倍
-
多模态控制接口
- MCP协议扩展层:支持TCP/UDP双模通信,提供µs级指令响应
- 设备抽象层:实现URCap插件标准化接入
- 数据总线:基于TCP/IP 以太网协议,实现多机协同控制
核心功能特性:
▶ 自然语言即时控制
通过语音/文本指令直接驱动机器人运动(位姿控制、轨迹规划、IO操作),支持动态参数注入和实时运动修正
▶ 智能数据采集系统
- 实时采集关节扭矩、末端位姿等12维状态数据
- 支持自然语言定义的数据过滤规则
- 自动生成结构化数据报告(CSV/JSON/XLSX)
▶ 多机协同控制 基于分布式任务调度算法,配合拓德开发的MCP-Client可同时管理≤12台UR机器人集群,支持语音级联指令和跨设备任务编排
▶ 自适应学习模块 内置增量训练框架,通过用户反馈持续优化指令-动作映射关系,系统迭代学习周期≤24h
技术指标:
- 指令响应延迟:<200ms(端到端)
- 协议兼容性:MCP v2.1+ / URScript v5.0+
- 并发处理能力:200+ TPS
以下是 nUR_MCP_SERVER 工具的功能归类表格(自动从源码生成):
| 工具名 | 功能分类 | 简要描述 | 主要参数 |
|---|---|---|---|
connect_ur | 连接管理 | 建立与指定 IP 的 UR 机器人连接 | ip |
disconnect_ur | 连接管理 | 断开与指定机器人的连接 | ip |
get_serial_number | 设备信息 | 获取机器人序列号 | ip |
get_time | 状态监控 | 获取机器人开机时长(秒) | ip |
get_ur_software_version | 设备信息 | 获取 Polyscope 软件版本 | ip |
get_robot_model | 设备信息 | 获取机器人型号 | ip |
get_safety_mode | 设备信息 | 获取安全模式 | ip |
get_robot_mode | 状态监控 | 获取机器人运行模式 | ip |
get_program_state | 程序控制/状态 | 获取当前加载程序与执行状态 | ip |
get_actual_tcp_pose | 运动控制 | 获取当前 TCP 位姿 | ip |
get_actual_joint_pose | 运动控制 | 获取当前关节角度 | ip |
get_output_int_register | 寄存器操作 | 读取 Int 寄存器 | ip, index |
get_output_double_register | 寄存器操作 | 读取 Double 寄存器 | ip, index |
get_output_bit_register | 寄存器操作 | 读取 Bool 寄存器 | ip, index |
get_actual_robot_voltage | 状态监控 | 获取机器人电压(V) | ip |
get_actual_robot_current | 状态监控 | 获取机器人电流(A) | ip |
get_actual_joint_voltage | 状态监控 | 获取各关节电压(V) | ip |
get_actual_joint_current | 状态监控 | 获取各关节电流(A) | ip |
get_joint_temperatures | 状态监控 | 获取各关节温度(°C) | ip |
get_programs | 程序控制 | 列出机器人上 /programs 下的 .urp 文件(通过 SSH) | ip, username, password |
send_program_script | 程序控制 | 发送并执行实时脚本 | ip, script |
movej | 运动控制 | 关节空间运动命令 | ip, q, a, v, t, r |
movel | 运动控制 | TCP 直线运动命令 | ip, pose, a, v, t, r |
movel_x | 运动控制 | 沿 X 轴移动(相对) | ip, distance |
movel_y | 运动控制 | 沿 Y 轴移动(相对) | ip, distance |
movel_z | 运动控制 | 沿 Z 轴移动(相对) | ip, distance |
draw_circle | 运动控制 | 在指定平面画圆 | ip, center, r, coordinate |
draw_square | 运动控制 | 在指定平面画正方形 | ip, origin, border, coordinate |
draw_rectangle | 运动控制 | 在指定平面画长方形 | ip, origin, width, height, coordinate |
setup_multi_robot_coordination | 多机协同 | 注册机器人并设置协作模式 | robot_ids, collaboration_mode |
create_collaborative_task | 多机协同 | 创建协同任务 | task_name, robot_assignments, dependencies |
execute_collaborative_task | 多机协同 | 执行协同任务 | task_id |
generate_bezier_path | 轨迹规划 | 根据控制点生成贝塞尔曲线路径 | control_points, num_points |
optimize_trajectory | 轨迹规划 | 优化给定路径(时间/能耗/平滑) | ip, waypoints, optimization_type |
start_data_recording | 数据记录 | 启动数据记录会话 | robot_id, record_types, duration |
stop_data_recording | 数据记录 | 停止数据记录会话 | session_id |
analyze_robot_data | 数据分析 | 对采集数据执行分析 | robot_id, analysis_type, start_time, end_time |
generate_robot_report | 数据分析 | 生成机器人运行报告(PDF/JSON 等) | robot_id, start_time, end_time, report_path |
compare_robots_performance | 数据分析 | 比较多机器人性能 | robot_ids, metric_columns, start_time, end_time |
注:所有工具多数需要先建立机器人连接后才能使用;部分工具依赖扩展模块(轨迹规划/数据记录/分析/多机协调),需先初始化成功。
3. 免责申明
请在使用 nUR MCP Server 前,确保操作人员已接受 UR 机器人安全培训,并熟悉紧急停止(E-stop)等安全操作。 建议定期检查机器人及 MCP Server 的运行状态,确保系统稳定性和安全性。
使用 nUR MCP Server 时,必须严格遵守以下安全规范:
机器人必须在可视范围内运行 操作人员应始终确保 优傲机器人处于视线可及的位置,以便实时监控其运行状态。 禁止在机器人运行时离开操作区域,以免发生意外情况无法及时干预。
确保工作环境安全
机器人运行前,必须检查并清除周边障碍物,确保无人员、设备或其他物体进入危险区域。 必要时设置 物理防护栏 或 安全光栅,防止未经授权的人员进入工作区。
违反安全规范的责任豁免
如因未遵守上述安全要求(如脱离监控、未清理工作区等)导致 人身伤害、设备损坏或生产事故,我方不承担任何法律责任及赔偿义务。 所有操作风险及后果由使用方自行承担。
4. 版本发布
4.1 最近更新
- 2025.05.15 : nUR_MCP_SERVER 首次发布
4.2 后续计划
- 支持nUR MCP Server 的专属 MCP Client, 增强执行器的安全功能。
- 增加优傲机器人log记录
- 备份及上传优傲机器人程序
5. 快速开始
5.1 基于产品(面向普通用户)
5.1.1 引擎&依赖
-
推荐系统版本:
macOS 用户:macOS Monterey 12.6 或更新版本 Linux 用户:CentOS 7 / Ubuntu 20.04 或更新版本 Windows 用户:Windows 10 LTSC 2021 或更新版本 -
软件要求:
MCP 服务端环境
Python 3.11 或更新版本 pip 25.1 或更新版本 UV Package Manager 0.6.14 或更新版本 bun 1.2.8 或更新版本MCP 客户端
Claude Desktop 3.7.0 或更新版本 Cherry Studio 1.2.10 或更新版本 Cline 3.14.1 或更新版本 ClaudeMind、Cursor、NextChat、ChatMCP、Copilot-MCP、Continue、Dolphin-MCP、Goose 未作测试。LLM 大语言模型
DeepSeek-V3-0324 或更新版本 DeepSeek-R1-671b 或更新版本 Qwen3-235b-a22b 或更新版本 一般支持MCP的大语言模型都可用,清单以外的模型未做测试 Ollama 部署的模型暂时无法调用Tool,正在解决中...
5.1.2 安装
MCP 服务端安装:
- 安装 Python 3.11 或更新版本。
- 安装 pip 25.1 或更新版本。
- 安装 UV Package Manager 0.6.14 或更新版本。
- 安装 bun 1.2.8 或更新版本。
- 安装 MCP Server:
git clone https://gitee.com/nonead/Nonead-Universal-Robots-MCP.git
cd Nonead-Universal-Robots-MCP
pip install -r requirements.txt
MCP 客户端配置:
要与 Claude Desktop 配合使用,请添加服务器配置: MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"nUR_MCP_SERVER": {
"command": "uvx",
"args": [
"https://www.nonead.com/download/nonead_universal_robots_mcp-0.1.4-py3-none-any.whl",
"nonead-universal-robots-mcp"
]
}
}
}
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"nUR_MCP_SERVER": {
"command": "uvx",
"args": [
"https://www.nonead.com/download/nonead_universal_robots_mcp-0.1.4-py3-none-any.whl",
"nonead-universal-robots-mcp"
]
}
}
}
要与 Cherry Studio 配合使用,请添加服务器配置:
MacOS & Linux:
{
"mcpServers": {
"Nonead-Universal-Robots-MCP": {
"name": "Nonead-Universal-Robots-MCP",
"type": "stdio",
"description": "Nonead-Universal-Robots-MCP是基于MCP(Model Control Protocol)接口协议构建的智能工业协作机器人控制中间件系统,通过集成大语言模型(LLM)实现工业机器人的自然语言交互式控制。该产品采用Client-Server架构设计,支持与优傲(Universal Robots)全系列协作机器人深度集成,革新了传统示教器编程的工业机器人。",
"isActive": true,
"registryUrl": "https://pypi.tuna.tsinghua.edu.cn/simple",
"timeout": "600",
"provider": "拓德科技",
"providerUrl": "https://www.nonead.com",
"logoUrl": "https://www.nonead.com/assets/img/vi/5.png",
"tags": [
"优傲机器人大语言模型控制系统"
],
"command": "uvx",
"args": [
"https://www.nonead.com/download/nonead_universal_robots_mcp-0.1.4-py3-none-any.whl",
"nonead-universal-robots-mcp"
],
"installSource": "unknown"
}
}
}
Windows:
{
"mcpServers": {
"n5JzpK_3v_bgPnNNxry2o": {
"name": "NONEAD Universal-Robots MCP Server",
"type": "stdio",
"description": "Nonead-Universal-Robots-MCP是基于MCP(Model Control Protocol)接口协议构建的智能工业协作机器人控制中间件系统,通过集成大语言模型(LLM)实现工业机器人的自然语言交互式控制。该产品采用Client-Server架构设计,支持与优傲(Universal Robots)全系列协作机器人深度集成,革新了传统示教器编程的工业机器人。",
"isActive": true,
"registryUrl": "https://pypi.tuna.tsinghua.edu.cn/simple",
"provider": "拓德科技",
"providerUrl": "https://www.nonead.com",
"logoUrl": "https://www.nonead.com/assets/img/vi/5.png",
"tags": [],
"command": "uvx",
"args": [
"https://www.nonead.com/download/nonead_universal_robots_mcp-0.1.4-py3-none-any.whl",
"nonead-universal-robots-mcp"
],
"installSource": "unknown"
}
}
}
要与 Cline 配合使用,请添加服务器配置:
MacOS & Linux:
{
"mcpServers": {
"nUR_MCP_SERVER": {
"command": "uvx",
"args": [
"https://www.nonead.com/download/nonead_universal_robots_mcp-0.1.4-py3-none-any.whl",
"nonead-universal-robots-mcp"
]
}
}
}
Windows:
{
"mcpServers": {
"nUR_MCP_SERVER": {
"command": "uvx",
"args": [
"https://www.nonead.com/download/nonead_universal_robots_mcp-0.1.4-py3-none-any.whl",
"nonead-universal-robots-mcp"
]
}
}
}
5.2 基于工具包(面向开发者)
5.2.1 引擎&依赖
-
推荐系统版本:
macOS 用户:macOS Monterey 12.6 或更新版本 Linux 用户:CentOS 7 / Ubuntu 20.04 或更新版本 Windows 用户:Windows 10 LTSC 2021 或更新版本 -
软件要求:
MCP 服务端环境
Python 3.11 或更新版本 pip 25.1 或更新版本 UV Package Manager 0.6.14 或更新版本 bun 1.2.8 或更新版本LLM 大语言模型
DeepSeek-V3-0324 或更新版本 DeepSeek-R1-671b 或更新版本 Qwen3-235b-a22b 或更新版本 一般支持MCP的大语言模型都可用,清单以外的模型未做测试 Ollama 部署的模型暂时无法调用Tool,正在解决中...
5.2.2 安装
macOS / Linux /Windows开发者
Python 3.11 或更新版本
pip 25.1 或更新版本
UV Package Manager 0.6.14 或更新版本
bun 1.2.8 或更新版本
5.2.3 使用
以下是一些你可以让大语言模型去执行的任务示例:
- 连接优傲机器人IP: 192.168.1.199
- 获取优傲机器人的TCP末端执行器当前的位姿坐标
- 列出nUR_MCP_SERVER 工具的所有指令
- 获取优傲机器人的所有硬件数据
- 执行优傲机器人的脚本程序
- 运行优傲机器人自带的程序 XXXX.urp
- 现在设定IP是172.22.109.141的优傲机器人叫A机器人,IP是172.22.98.41的优傲机器人叫B机器人,连接这两台机器人,记录A机器人和B机器人现在TCP的位姿以及各关键的位置,A机器人在左边,B机器人在右边,分析两台机器人现在位姿的相互关系。
- 分步执行一下指令,优傲机器人IP:192.168.1.199,记录当前TCP位姿,然后执行:TCP向+Z方向移动20mm,再向-Y方向移动50mm,再向+X方向移动30mm,循环5次。
- 编写优傲机器人脚本程序,并执行,程序要求:以当前位姿为圆心,基座平面为特征,画一个半径为50mm的圆。
- 现在设定IP是172.22.109.141的优傲机器人叫A机器人,IP是172.22.98.41的优傲机器人叫B机器人,链接两台机器人,接下来的指令会只控制A机器人动作,请同步B机器人镜像运动。
6. 技术架构
MCP采用客户端-服务器架构,通过标准化的协议实现模型与外部资源的通信。
客户端-服务器模型
MCP架构中包含以下核心组件:
MCP主机(Host):发起连接的LLM应用程序(如Claude Desktop或IDE),它希望通过MCP访问数据。 MCP客户端(Client):在主机应用程序内部维护与服务器的1:1连接的协议客户端。 MCP服务器(Server):通过标准化的Model Context Protocol暴露特定功能的轻量级程序。 本地数据源:MCP服务器可以安全访问的计算机文件、数据库和服务。 远程服务:MCP服务器可以连接的通过互联网可用的外部系统(例如,通过API)。 核心组件 在MCP架构中,各组件具有以下职责:
MCP主机:
提供用户界面
管理与LLM提供商的连接
集成MCP客户端以访问外部资源
MCP客户端:
与MCP服务器建立和维护连接
发送请求并接收响应
按照MCP协议标准处理数据交换
MCP服务器:
处理来自客户端的请求
执行特定功能或提供资源访问
按照MCP协议标准格式化响应
通信协议
MCP使用JSON-RPC 2.0作为基础通信协议,支持以下类型的消息:
请求(Requests):从客户端向服务器或从服务器向客户端发起操作的消息。
响应(Responses):对请求的答复,包含请求的结果或错误信息。
通知(Notifications):不需要响应的单向消息,通常用于事件通知。
MCP支持多种传输机制,包括:
标准输入/输出(Stdio):适用于本地服务器,通过进程间通信实现。 服务器发送事件(SSE):基于HTTP的传输机制,适用于远程服务器。
MCP的优势 MCP相比传统的集成方法具有显著的优势,主要体现在统一性、安全性和扩展性方面。
统一性 MCP通过标准化AI系统与外部数据源的交互方式,解决了传统集成方法的碎片化问题:
插件式接入:通过统一的协议实现各类数据源的插件式接入,避免为每个数据源单独编写代码。 跨平台兼容:支持不同的AI模型和平台,提高系统的互操作性。 简化开发:降低了开发复杂度,使开发者可以专注于业务逻辑而非底层集成。 安全性 MCP内置了安全机制,保障数据在传输和处理过程中的安全:
敏感信息保护:确保在数据交互过程中,敏感信息(如API密钥、用户数据)得到充分保护。 访问控制:MCP服务器可以实现精细的访问控制,确保只有经过验证的请求才能访问特定资源。 本地处理:通过在本地处理数据,避免将敏感信息上传至第三方平台。 扩展性 MCP的模块化设计使系统具有极高的可扩展性:
多服务连接:支持多个服务连接到任何兼容的客户端,提供标准化的、通用的协议共享资源、工具和提示。 生态系统拓展:随着生态系统的成熟,开发者可以利用越来越多的预构建组件。 自定义能力:开发者可以根据需要创建自定义的MCP服务器,扩展系统的功能。
7. 联系我们
GitHub: https://github.com/nonead/Nonead-Universal-Robots-MCP
gitee: https://gitee.com/nonead/Nonead-Universal-Robots-MCP
官网: https://www.nonead.com
8. nUR MCP Server 与 其他 MCP Server 差异
使用nUR MCP Server的用户必须具备极高的安全意识,需要经过优傲机器人使用培训,因为大语言模型操作的是真实的机器人,操作不当会导致人身伤害和财产损失情况发生,切记。
9. 引用
如果您使用本软件,请以下面的方式引用:
- nURMCP: NONEAD Uninversal-Robots Model Context Protocol Server
- 拓德诠释智造之韵,创新引领世界之变
Nonead demonstrates the true meaning of intelligent manufacturing, pioneering innovations that reshape our world.
10. 许可协议
本项目采用区分用户的双重许可 (User-Segmented Dual Licensing) 模式。
核心原则
- 个人用户 和 10人及以下企业/组织: 默认适用 GNU Affero 通用公共许可证 v3.0 (AGPLv3)。
- 超过10人的企业/组织: 必须 获取 商业许可证 (Commercial License)。
定义:"10人及以下" 指在您的组织(包括公司、非营利组织、政府机构、教育机构等任何实体)中,能够访问、使用或以任何方式直接或间接受益于本软件(nUR_MCP_SERVER)功能的个人总数不超过10人。这包括但不限于开发者、测试人员、运营人员、最终用户、通过集成系统间接使用者等。
10.1 开源许可证 (Open Source License): AGPLv3 - 适用于个人及10人及以下组织
- 如果您是个人用户,或者您的组织满足上述"10人及以下"的定义,您可以在 AGPLv3 的条款下自由使用、修改和分发 nUR_MCP_SERVER。AGPLv3 的完整文本可以访问 https://www.gnu.org/licenses/agpl-3.0.html 获取。
- 核心义务: AGPLv3 的一个关键要求是,如果您修改了 nUR_MCP_Server 并通过网络提供服务,或者分发了修改后的版本,您必须以 AGPLv3 许可证向接收者提供相应的完整源代码。即使您符合"10人及以下"的标准,如果您希望避免此源代码公开义务,您也需要考虑获取商业许可证(见下文)。
- 使用前请务必仔细阅读并理解 AGPLv3 的所有条款。
10.2 商业许可证 (Commercial License) - 适用于超过10人的组织,或希望规避 AGPLv3 义务的用户
- 强制要求: 如果您的组织不满足上述"10人及以下"的定义(即有11人或更多人可以访问、使用或受益于本软件),您必须联系我们获取并签署一份商业许可证才能使用 nUR_MCP_SERVER。
- 自愿选择: 即使您的组织满足"10人及以下"的条件,但如果您的使用场景无法满足 AGPLv3 的条款要求(特别是关于源代码公开的义务),或者您需要 AGPLv3 未提供的特定商业条款(如保证、赔偿、无 Copyleft 限制等),您也必须联系我们获取并签署一份商业许可证。
- 需要商业许可证的常见情况包括(但不限于):
- 您的组织规模超过10人。
- (无论组织规模)您希望分发修改过的 nUR_MCP_SERVER 版本,但不希望根据 AGPLv3 公开您修改部分的源代码。
- (无论组织规模)您希望基于修改过的 nUR_MCP_SERVER 提供网络服务(SaaS),但不希望根据 AGPLv3 向服务使用者提供修改后的源代码。
- (无论组织规模)您的公司政策、客户合同或项目要求不允许使用 AGPLv3 许可的软件,或要求闭源分发及保密。
- 获取商业许可: 请通过邮箱 service@nonead.com 联系 nUR_MCP_SERVER 开发团队洽谈商业授权事宜。
10.3 贡献 (Contributions)
- 我们欢迎社区对 nUR_MCP_SERVER 的贡献。所有向本项目提交的贡献都将被视为在 AGPLv3 许可证下提供。
- 通过向本项目提交贡献(例如通过 Pull Request),即表示您同意您的代码以 AGPLv3 许可证授权给本项目及所有后续使用者(无论这些使用者最终遵循 AGPLv3 还是商业许可)。
- 您也理解并同意,您的贡献可能会被包含在根据商业许可证分发的 nUR_MCP_SERVER 版本中。
10.4 其他条款 (Other Terms)
- 关于商业许可证的具体条款和条件,以双方签署的正式商业许可协议为准。
- 项目维护者保留根据需要更新本许可政策(包括用户规模定义和阈值)的权利。相关更新将通过项目官方渠道(如代码仓库、官方网站)进行通知。
11. 开发 核心团队
苏州拓德机器人科技有限公司 MCP Server 开发团队
Tony Ke tonyke@nonead.com
Micro Zhu microzhu@nonead.com
Anthony Zhuang anthonyzhuang@nonead.com
Quentin Wang quentinwang@nonead.com