cluesang/mcp-cobot-server
If you are the rightful owner of mcp-cobot-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This repository contains the MCP Cobot Server, a FastMCP server implementation for the M5 MyCobot280 robot.
MCP Cobot Server
This repository contains the MCP Cobot Server, a FastMCP server implementation for the M5 MyCobot280 robot.
Based on the model context protocol python-sdk: https://github.com/modelcontextprotocol/python-sdk?tab=readme-ov-file#quickstart
Features
- Implements the MCP standard for efficient context management.
- Built with FastMCP for high performance and scalability.
- Designed for integration with collaborative robot (myCobot) systems.
Requirements
- Python 3.8+
- FastMCP library
Installation
-
Clone the repository:
git clone https://github.com/your-username/mcp-cobot-server.git cd mcp-cobot-server
-
Install dependencies:
uv sync source .venv/bin/activate
Note This project uses uv
to install manage the python virtual environment and dependencies. Learn more here: https://docs.astral.sh/uv/guides/projects/
Usage
Start the server:
# launch a standalone MCP server with:
uvx mcpo --port 8000 -- uv run --with mcp[cli] --with pymycobot mcp run ./server.py
# Install the mcp profile with claude
mcp install server.py
For development:
# debug the mcp interface
mcp dev server.py
Available Functions
The following functions are exposed to mcp.tool
in server.py
:
get_angles
: Retrieves the current angles of all servos.move_angle
: Moves a specific joint (servo) to a target angle at a specified speed.move_angles
: Moves all joints to specified angles at a given speed.go_home
: Moves all joints to a predefined "home" position.set_home
: Sets the current joint angles as the new "home" position.change_color
: Changes the LED matrix color of the robot.relax
: Releases all servos, allowing the robot arms to relax.interpretive_dance_routine
: Executes a creative dance routine based on a description, involving joint movements and LED color changes.
MyCobot M5 280
The myCobot SDK I'm using is documented here: https://github.com/elephantrobotics/pymycobot/blob/main/docs/MyCobot_280_en.md The robot I'm using is here: Elephant Robotics myCobot 280 M5Stack 2023 - 6 DOF Collaborative Robot
Joint ranges
Joint Id | Range |
---|---|
1 | -168 ~ 168 |
2 | -135 ~ 135 |
3 | -150 ~ 150 |
4 | -145 ~ 145 |
5 | -165 ~ 165 |
6 | -180 ~ 180 |
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
License
This project is licensed under the MIT License. See the file for details.