mcp-koii
MCP Server for Teenage Engineering EP-133 KO-II
claude mcp add --transport stdio benjaminr-mcp-koii python koii_server.py server
How to use
This MCP server provides a controller for the Teenage Engineering EP-133 K.O. II sampler via MIDI. It exposes commands to connect to the MIDI device, list available MIDI ports, and trigger notes, patterns, and drum patterns using a text-based syntax. You can also browse and select sounds by pad mappings, MIDI note, instrument name, or sound name, and run drum patterns with simultaneous multi-instrument playback. The server integrates with Claude via MCP to allow natural language control of MIDI operations, such as listing ports, connecting to the device, playing scales, or triggering drum patterns. Use the included commands to discover the device’s capabilities, then send requests to play notes, patterns, or drum sequences in real time.
How to install
Prerequisites:
- Python 3.8 or later
- mido (MIDI handling)
- mcp (Model Context Protocol SDK)
Quick Install:
bash
Install the required packages
pip install mido "mcp[cli]"
Clone the repository
git clone https://github.com/benjaminr/mcp-koii.git cd mcp-koii
Install the MCP server
mcp install koii_server.py:server -e .
Running locally:
bash
Run in development mode
mcp dev koii_server.py:server -e .
Note: The server entrypoint is koii_server.py with the MCP server function named server. Adjust the path if you run from a different working directory.
Additional notes
Tips:
- Ensure your EP-133 K.O. II is connected via USB and recognized as a MIDI output port before attempting to connect.
- If MIDI ports are not listed, check USB drivers and device mode on the EP-133, then reconnect.
- The drum pattern syntax supports references by pad, MIDI note, sound name, or a mix of these in the same pattern line.
- For Claude integration, enable MCP in Claude Desktop and authorize the koii server as an MCP source. Use natural language commands to interact with the device (e.g., 'List available MIDI ports', 'Connect to EP-133', 'Play a drum pattern with kick on 1 and 3').
- If you encounter issues with simultaneous instrument playback, increase the BPM to give the hardware time to process multiple events.
Environment variables and configuration options can be extended in the mcp config as needed, for example to set preferred MIDI output port or default BPM.
Related MCP Servers
sonarqube
Model Context Protocol (MCP) server for SonarQube
sandbox
A Model Context Protocol (MCP) server that enables LLMs to run ANY code safely in isolated Docker containers.
pluggedin-app
The Crossroads for AI Data Exchanges. A unified, self-hostable web interface for discovering, configuring, and managing Model Context Protocol (MCP) servers—bringing together AI tools, workspaces, prompts, and logs from multiple MCP sources (Claude, Cursor, etc.) under one roof.
awesome s
A curated list of excellent Model Context Protocol (MCP) servers.
taskflow
A task management Model Context Protocol (MCP) server that helps AI assistants break down user requests into manageable tasks with subtasks, dependencies, and notes. Enforces a structured workflow with user approval steps.
mcp -python-template
This template provides a streamlined foundation for building Model Context Protocol (MCP) servers in Python. It's designed to make AI-assisted development of MCP tools easier and more efficient.