# Universal Robot MCP Server
A Model Context Protocol (MCP) server that provides AI assistants and LLM applications with secure, controlled access to Universal Robots functionality. This server enables real-time robot control, status monitoring, and motion planning through a standardized MCP interface.
## Features
- **Robot Connection Management** - Connect/disconnect from UR robots safely
- **Real-time Status Monitoring** - Get joint positions, poses, and robot health
- **Joint Motion Control** - Precise angular movement with safety limits
- **Linear Motion Control** - Cartesian path planning and execution
- **Simulation Mode** - Test and develop without physical hardware
- **Safety First** - Built-in collision detection and movement validation
## Installation
### Quick Start with uvx (Recommended)
```bash
uvx universal-robot-mcp
```
### Install via pip
```bash
pip install universal-robot-mcp
```
### Development Installation
```bash
git clone <repository-url>
cd universal-robot-mcp
pip install -e .
```
## Usage
### AI Assistant Integration
**Claude Desktop**
```json
{
"mcpServers": {
"universal-robot": {
"command": "uvx",
"args": ["universal-robot-mcp"]
}
}
}
```
**Cursor / Other MCP Clients**
```json
{
"mcpServers": {
"universal-robot": {
"command": "universal-robot-mcp"
}
}
}
```
**VS Code with MCP**
```json
{
"mcp.servers": {
"universal-robot": "uvx universal-robot-mcp"
}
}
```
### Direct Usage
```bash
# Run the server directly
python -m universal_robot_mcp.server
# Or use the installed script
universal-robot-mcp
```
## Available Tools
| Tool | Description | Parameters |
|------|-------------|------------|
| `connect_robot` | Establish connection to UR robot | `robot_ip` (default: 192.168.1.100) |
| `disconnect_robot` | Safely disconnect from robot | None |
| `get_robot_status` | Get current joint positions and pose | None |
| `move_robot_joints` | Move to specific joint angles | `joint1-6`, `acceleration`, `velocity` |
| `move_robot_linear` | Linear movement in Cartesian space | `x,y,z,rx,ry,rz`, `acceleration`, `velocity` |
## Example Conversations
Once configured with your AI assistant:
- *"Connect to the robot and show me its current status"*
- *"Move the robot to home position safely"*
- *"Execute a pick and place motion from coordinates X to Y"*
- *"What are the current joint angles?"*
- *"Move the robot 10cm up in the Z direction"*
## Robot Configuration
### Network Setup
- Default robot IP: `192.168.1.100`
- Ensure robot is connected to your network
- Verify robot is in Remote Control mode
### Safety Features
- Automatic TCP and payload configuration
- Movement speed and acceleration limits
- Connection timeout handling
- Emergency stop capabilities
## Supported Platforms
- **AI Assistants**: Claude Desktop, Cursor, Roo Code, Cline
- **IDEs**: VS Code, JetBrains IDEs (with MCP plugins)
- **Platforms**: macOS, Linux, Windows
- **Python**: 3.8, 3.9, 3.10, 3.11
## License
Apache-2.0
## Contributing
Contributions welcome! See our [contributing guide](CONTRIBUTING.md) for details.
Raw data
{
"_id": null,
"home_page": null,
"name": "universal-robot-mcp",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "mcp, model-context-protocol, robot, urx, universal-robots",
"author": "roversx",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/97/93/691e380af019fdad0fa1138047978d69cf069b362e991568c64bd0beda8e/universal_robot_mcp-0.1.2.tar.gz",
"platform": null,
"description": "# Universal Robot MCP Server\n\nA Model Context Protocol (MCP) server that provides AI assistants and LLM applications with secure, controlled access to Universal Robots functionality. This server enables real-time robot control, status monitoring, and motion planning through a standardized MCP interface.\n\n## Features\n\n- **Robot Connection Management** - Connect/disconnect from UR robots safely\n- **Real-time Status Monitoring** - Get joint positions, poses, and robot health\n- **Joint Motion Control** - Precise angular movement with safety limits\n- **Linear Motion Control** - Cartesian path planning and execution\n- **Simulation Mode** - Test and develop without physical hardware\n- **Safety First** - Built-in collision detection and movement validation\n\n## Installation\n\n### Quick Start with uvx (Recommended)\n```bash\nuvx universal-robot-mcp\n```\n\n### Install via pip\n```bash\npip install universal-robot-mcp\n```\n\n### Development Installation\n```bash\ngit clone <repository-url>\ncd universal-robot-mcp\npip install -e .\n```\n\n## Usage\n\n### AI Assistant Integration\n\n**Claude Desktop**\n```json\n{\n \"mcpServers\": {\n \"universal-robot\": {\n \"command\": \"uvx\",\n \"args\": [\"universal-robot-mcp\"]\n }\n }\n}\n```\n\n**Cursor / Other MCP Clients**\n```json\n{\n \"mcpServers\": {\n \"universal-robot\": {\n \"command\": \"universal-robot-mcp\"\n }\n }\n}\n```\n\n**VS Code with MCP**\n```json\n{\n \"mcp.servers\": {\n \"universal-robot\": \"uvx universal-robot-mcp\"\n }\n}\n```\n\n### Direct Usage\n```bash\n# Run the server directly\npython -m universal_robot_mcp.server\n\n# Or use the installed script\nuniversal-robot-mcp\n```\n\n## Available Tools\n\n| Tool | Description | Parameters |\n|------|-------------|------------|\n| `connect_robot` | Establish connection to UR robot | `robot_ip` (default: 192.168.1.100) |\n| `disconnect_robot` | Safely disconnect from robot | None |\n| `get_robot_status` | Get current joint positions and pose | None |\n| `move_robot_joints` | Move to specific joint angles | `joint1-6`, `acceleration`, `velocity` |\n| `move_robot_linear` | Linear movement in Cartesian space | `x,y,z,rx,ry,rz`, `acceleration`, `velocity` |\n\n## Example Conversations\n\nOnce configured with your AI assistant:\n\n- *\"Connect to the robot and show me its current status\"*\n- *\"Move the robot to home position safely\"* \n- *\"Execute a pick and place motion from coordinates X to Y\"*\n- *\"What are the current joint angles?\"*\n- *\"Move the robot 10cm up in the Z direction\"*\n\n## Robot Configuration\n\n### Network Setup\n- Default robot IP: `192.168.1.100`\n- Ensure robot is connected to your network\n- Verify robot is in Remote Control mode\n\n### Safety Features\n- Automatic TCP and payload configuration\n- Movement speed and acceleration limits\n- Connection timeout handling\n- Emergency stop capabilities\n\n## Supported Platforms\n\n- **AI Assistants**: Claude Desktop, Cursor, Roo Code, Cline\n- **IDEs**: VS Code, JetBrains IDEs (with MCP plugins)\n- **Platforms**: macOS, Linux, Windows\n- **Python**: 3.8, 3.9, 3.10, 3.11\n\n## License\n\nApache-2.0\n\n## Contributing\n\nContributions welcome! See our [contributing guide](CONTRIBUTING.md) for details.\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "MCP server for Universal Robots control",
"version": "0.1.2",
"project_urls": null,
"split_keywords": [
"mcp",
" model-context-protocol",
" robot",
" urx",
" universal-robots"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "1a7084004c8e02c62af9909820d90be9d1fc5171ca1b33c2a49fbb83971810c1",
"md5": "c6e3491de3cbcc8f781e3ce0c386f73e",
"sha256": "313098a358207f29945e294c9d44539937c9e50b5ff5485f281954b286e79d88"
},
"downloads": -1,
"filename": "universal_robot_mcp-0.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c6e3491de3cbcc8f781e3ce0c386f73e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 5613,
"upload_time": "2025-09-09T00:31:38",
"upload_time_iso_8601": "2025-09-09T00:31:38.751506Z",
"url": "https://files.pythonhosted.org/packages/1a/70/84004c8e02c62af9909820d90be9d1fc5171ca1b33c2a49fbb83971810c1/universal_robot_mcp-0.1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9793691e380af019fdad0fa1138047978d69cf069b362e991568c64bd0beda8e",
"md5": "3e2d246afce2a17a5c26abcb6a79ee14",
"sha256": "d8e50eec5decd1a05f49cce956efe6c64bbd5ee3b67bda0f8d404f0c898b9829"
},
"downloads": -1,
"filename": "universal_robot_mcp-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "3e2d246afce2a17a5c26abcb6a79ee14",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 5146,
"upload_time": "2025-09-09T00:31:40",
"upload_time_iso_8601": "2025-09-09T00:31:40.065754Z",
"url": "https://files.pythonhosted.org/packages/97/93/691e380af019fdad0fa1138047978d69cf069b362e991568c64bd0beda8e/universal_robot_mcp-0.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-09 00:31:40",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "universal-robot-mcp"
}