Skip to main content

MPC to control Moog Sub37 Monophonic Synthesizer

Project description

Moog Sub37 MCP

A Model Context Protocol (MCP) server that allows Claude and other MCP-compatible LLMs to interact with and control Moog Sub37 Monophonic Synthesizer via MIDI.

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 Sub37 MCP to design an evolving dark pad."
"Use Sub37 MCP to design a Dark thick bass line."

Features

  • Complete MIDI control interface for the Moog Sub37 Monophonic Synthesizer

Demo

Watch Claude control the Moog Sub37 Monophonic Synthesizer in real-time:

Claude controlling Moog Sub37

Installation and Usage

Prerequisites

  • Python 3.10+
  • uv for package management
  • An Moog Sub37 Monophonic Synthesizer 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": {
    "Sub37": {
      "command": "uvx",
      "args": ["moog-sub37-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 Sub37 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 Sub37
  • Programmatically control Sub37 parameters for automated sound design
  • Bridge between AI-generated music and hardware synthesis

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moog_sub37_mcp-0.0.2.tar.gz (28.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

moog_sub37_mcp-0.0.2-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file moog_sub37_mcp-0.0.2.tar.gz.

File metadata

  • Download URL: moog_sub37_mcp-0.0.2.tar.gz
  • Upload date:
  • Size: 28.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.8

File hashes

Hashes for moog_sub37_mcp-0.0.2.tar.gz
Algorithm Hash digest
SHA256 d980314c641345876dcc6f95acc8350a9bab3ff828d4b6c502d2dd3f07baa765
MD5 103d7175dc4fd635adb241b234424ea6
BLAKE2b-256 8a0e6314d491e12f0e6c8061e5e029ab21c4bf14f3541cbf0353221b4f02171b

See more details on using hashes here.

File details

Details for the file moog_sub37_mcp-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for moog_sub37_mcp-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 22c96be6b9c639d11382604c3014f56abd4e57f87df5dc9fb43555f5a8683551
MD5 cb0a8420a3325b001d5406ed88b10fbb
BLAKE2b-256 f9e4d41ae9c54d5b5836bac5c88753439dc67d9dbb2aed6b938776d6ed433ed4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page