Elektron MCP

Elektron MCP

Enables LLMs like Claude to control Elektron Digitone synthesizers via MIDI, supporting sound design with Wavetone engine and various filters, envelopes, effects, and LFOs.

Category
Visit Server

README

Elektron MCP

A Model Context Protocol (MCP) server that allows Claude and other MCP-compatible LLMs to interact with and control Elektron synthesizers via MIDI.

If you have a Moog Sub37/Subsequent37, check out our dedicated MCP server for it at moog-sub37-mcp.

A web-based version of this MCP server can be found at senthgenie.com. (You can ask for API key for free on discord)

If you want help or would like to contribute to development, please join our Discord community.

Prompt examples

"Use Digitone MCP to design an evolving dark pad using the Wavetone machine on track 1."
"Use Digitone MPC to design a Dark thick pad using Wavetone machine on track 1."

Only Wavetone machine is supported for now, other machines will be added soon, stay tuned!

Features

  • [x] Complete MIDI control interface for the Elektron Digitone synthesizer
  • [x] Structured controllers for all Digitone sound engines:
    • [x] Wavetone (waveshaping synthesis)
    • [ ] FM Tone (FM synthesis)
    • [ ] FM Drum (percussive FM synthesis)
    • [ ] Swarmer (unison/swarm synthesis)
  • [x] Comprehensive parameter control for:
    • [x] All filter types
      • [x] MultiMode
      • [ ] Lowpass4
      • [ ] Equalizer
      • [ ] LegacyLpHp
      • [ ] CombMinus
      • [ ] CombPlus
      • [ ] BaseWidth
    • [x] Amplitude and envelope settings
    • [x] Effects processing (delay, reverb, chorus, bit reduction, etc.)
    • [x] LFOs control
  • [x] MCP server exposing all synth parameters as tools for LLMs
  • [x] Type-safe parameter validation using Pydantic
  • [x] Modular architecture for easy extension to other Elektron devices

Demo

Watch Claude control the Elektron Digitone synthesizer in real-time:

Claude controlling Elektron Digitone

Installation and Usage

Prerequisites

  • Python 3.10+
  • uv for package management
  • An Elektron Digitone connected via USB
  • Claude Desktop app (for full integration)

Installing Dependencies

uv is mandatory for this project so start by installing it:

For macOS:

brew install uv

For Windows:

Follow the instructions here

3. Installing with Claude Desktop

To use with Claude AI, add the MCP server configuration in Claude Desktop:

⚠️ Important: You don't need to clone the repository or install the packages, all you need is to add the MCP server configuration to your claude_desktop_config.json file the MPC server is already published on pypi.

Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json to include the following:

{
  "mcpServers": {
    "Digitone 2": {
      "command": "uvx",
      "args": ["elektron-mcp"]
    }
  }
}

Architecture

  • Base Controllers: Common functionality abstracted into base classes
  • Specialized Controllers: Dedicated controllers for each synth engine and module
  • MCP Tools: Direct interface between LLMs and the synth's parameters
  • MIDI Interface: Reliable communication with Digitone hardware

Implementation Details

This library uses:

  • FastMCP: For exposing synth controls to LLMs
  • Pydantic models: For data validation, serialization, and type safety
  • mido: For MIDI communication

Use Cases

  • Allow Claude and other LLMs to create and modify sounds on the Digitone
  • Programmatically control Digitone parameters for automated sound design
  • Bridge between AI-generated music and hardware synthesis

Future Extensions

  • Support for additional Elektron devices (Analog Four, Octatrack, etc.)
  • Pattern sequencing and automation
  • Sound preset management
  • Additional synthesis parameters

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured