MCP Synth

Python-based Model Context Protocol (MCP) server designed to allow large language models (LLMs) to control parameters of a JUCE synthesizer in real time.
  • python

0

GitHub Stars

python

Language

7 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "tylersfoster-mcpsynthcontroller": {
      "command": "uv",
      "args": [
        "run",
        "python",
        "src/server/mcp_server.py"
      ]
    }
  }
}

You run a Python-based MCP server that lets large language models control a JUCE synthesizer in real time by sending structured tool calls over OSC. With the server, you can map natural language commands to synthesizer parameters, enabling expressive, real-time sonic control driven by speech or text.

How to use

You interact with the MCP server through a client that can initiate an initialization handshake, discover available tools, and issue tool calls. When you issue a tool call such as setParameter, the MCP server translates it into an OSC message and forwards it to the JUCE synth in real time. You can chain commands by asking your language model to perform parameter queries, adjust values, or list known parameters, and the server will dispatch those requests to the synthesizer accordingly.

How to install

Prerequisites: Make sure you have Python installed and a runtime environment for the MCP server management tool.

Install dependencies with the project’s dependency manager and run the server using the following commands.

uv sync
uv run python src/server/mcp_server.py

Additional usage notes

  • The server exposes a set of tools that the MCP client can call. The implemented tools include setParameter to adjust synthesizer parameters via OSC, getParameter as a placeholder for retrieving a value, and listParameters to enumerate known parameters.

Available tools

setParameter

Sets a synthesizer parameter by sending an OSC message with the parameter name and value to the JUCE synth.

getParameter

Retrieves a parameter value from the MCP server (placeholder implementation).

listParameters

Returns a list of known synthesizer parameters managed by the MCP server.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational