Get the FREE Ultimate OpenClaw Setup Guide →

robot_MCP

A simple MCP server for the SO-ARM100 control

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio ilialarchenko-robot_mcp python mcp_robot_server.py \
  --env MCP_PORT="Port for MCP server (default 3001)" \
  --env MCP_SERVER_IP="IP address where MCP server listens (default 127.0.0.1)"

How to use

The robot_MCP project provides a Python-based MCP server (mcp_robot_server.py) that enables AI agents to control a SO-ARM100/101 robot and also allows manual keyboard control. It supports standard MCP transports such as SSE (server-sent events), stdio, and the streamable-http variant, enabling integration with various MCP clients and UI tools. You can run the server in development mode to test the agent-driven control flow, or connect via an MCP client to issue natural language commands that are translated into robot actions. The repository also includes a simple agent workflow that demonstrates using Claude, Gemini, or OpenAI GPT models to issue instructions to the robot through the MCP server. In short, you can either operate the robot manually, test the MCP server, or let an AI agent handle high-level commands and map them to robot movements.

How to install

Prerequisites:

  • Python 3.8+ installed on your system
  • Virtual environment support
  • Robot software and lerobot library as per the project requirements

Step-by-step installation:

  1. Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate  # on Windows use: .venv\Scripts\activate
  1. Install dependencies
pip install -r requirements.txt
  1. (Optional) Install lerobot according to the official lerobot repository instructions

  2. Run the MCP server (in development mode or standard run)

python mcp_robot_server.py

Prerequisites note: If your environment uses a different Python environment manager, adapt the activation command accordingly. Ensure the robot drivers and lerobot library are accessible from the activated environment.

Additional notes

Environment and configuration tips:

  • Set MCP_SERVER_IP and MCP_PORT to the desired address and port so MCP clients can connect. The defaults in the example configuration show 127.0.0.1 and 3001.
  • The server supports multiple transports. Use mcp run mcp_robot_server.py --transport sse for a server-sent events interface, or connect via stdio for local testing.
  • When using the Agent section, bear in mind that running MCP-based control with LLMs can incur API costs due to token usage. Monitor your usage and costs according to your chosen models (Claude, Gemini, GPT).
  • If you need to calibrate the robot, use the check_positions.py script to inspect state without issuing movement commands, and adjust MOTOR_NORMALIZED_TO_DEGREE_MAPPING in config.py as needed after recalibration.
  • Ensure proper permissions and USB/serial connections for the robot (SO-ARM100) when running calibration or control scripts.

Related MCP Servers

Sponsor this space

Reach thousands of developers