toio-mcp logo

toio-mcp

by comoc

toio-mcp is a Model Context Protocol (MCP) server for toio Core Cube. It provides a set of tools to control toio Core Cubes via the MCP protocol.

View on GitHub

Last updated: N/A

What is toio-mcp?

toio-mcp is a server that allows you to control toio Core Cubes using the Model Context Protocol (MCP). It provides a set of tools to interact with the cubes, enabling functionalities like motor control, LED manipulation, sensor data retrieval, and sound playback.

How to use toio-mcp?

First, install the required dependencies (Python 3.11+, toio.py, uv, MCP Python SDK). Then, clone the toio-mcp repository and install the remaining dependencies using uv sync. Finally, configure your MCP settings file (e.g., Cline or Roo Code) to include the toio-mcp server, specifying the path to the server.py file.

Key features of toio-mcp

  • Scan and connect to toio Core Cubes

  • Control motors

  • Control LED indicators (including repeated patterns and turning off)

  • Get position information

  • Play sounds (sound effects and MIDI notes)

  • Get button state

  • Get battery level

  • Get sensor information (motion detection, posture angle, magnetic sensor)

Use cases of toio-mcp

  • Educational robotics projects

  • Interactive art installations

  • Automated control of toio Core Cubes

  • Integration with Cline or Roo Code

  • Remote control and monitoring of toio Core Cubes

FAQ from toio-mcp

What is MCP?

MCP stands for Model Context Protocol, a communication protocol used to interact with devices like the toio Core Cube.

What are the requirements for running toio-mcp?

You need Python 3.11 or higher, toio.py, uv, and MCP Python SDK 1.7.1 or higher.

How do I install the dependencies?

First install uv, then clone the repository and use uv sync to install the remaining dependencies.

How do I connect to a toio Core Cube?

Use the scan_cubes tool to find available cubes, then use the connect_cube tool to connect to a specific cube.

How do I control the motors?

Use the motor_control tool to set the speed and direction of the motors. Use the motor_stop tool to stop the motors.