MaxMSP MCP Server

MCP (Model Context Protocol) Server for Max (Max/MSP/Jitter)

Local serverstdioPython

What is the MaxMSP MCP server?

Connect MaxMSP to Claude, Cursor or any other MCP client and it stops being a tab you switch to. MCP (Model Context Protocol) Server for Max (Max/MSP/Jitter). The maxmsp mcp server is what makes that connection.

What the server does

This project uses the Model Context Protocol (MCP) to let LLMs directly understand and generate Max patches.

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • create_subpatcher — Create a new p (subpatcher) object
  • enter_subpatcher — Navigate into a subpatcher context
  • exit_subpatcher — Return to parent patcher
  • get_patcher_context — Get current depth and navigation path
  • add_subpatcher_io — Add inlet/outlet objects inside subpatchers
  • get_object_connections — Query all connections for an object
  • recreate_with_args — Change creation-time arguments, preserving connections
  • move_object — Reposition an object
  • autofit_existing — Apply auto-sizing to existing objects
  • check_signal_safety — Analyze patch for dangerous signal patterns
  • encapsulate — Encapsulate selected objects into a subpatcher
  • Prerequisites — The Prerequisites tool exposed by this server

Credentials and setup notes

  • Python 3.8 or newer - uv package manager - Max 9 or newer (requires JavaScript V8 engine)

Installation

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.

Where it fits

This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. MaxMSP's toolset — create_subpatcher, enter_subpatcher, exit_subpatcher and 9 more — is a fair guide to whether it matches your workflow. It is maintained by tiianhk; worth a glance at recent repository activity before you build anything load-bearing on it.

This entry was verified against MaxMSP's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.

Worth knowing first

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 12 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch MaxMSP.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
create_subpatcherCreate a new p (subpatcher) object
enter_subpatcherNavigate into a subpatcher context
exit_subpatcherReturn to parent patcher
get_patcher_contextGet current depth and navigation path
add_subpatcher_ioAdd inlet/outlet objects inside subpatchers
get_object_connectionsQuery all connections for an object
recreate_with_argsChange creation-time arguments, preserving connections
move_objectReposition an object
autofit_existingApply auto-sizing to existing objects
check_signal_safetyAnalyze patch for dangerous signal patterns
encapsulateEncapsulate selected objects into a subpatcher
PrerequisitesThe Prerequisites tool exposed by this server.

Configuration

  • Python 3.8 or newer - uv package manager - Max 9 or newer (requires JavaScript V8 engine)

Example prompts to try

  • Use MaxMSP to create subpatcher.
  • Use MaxMSP to enter subpatcher.
  • Use MaxMSP to exit subpatcher.

Frequently asked questions

It enables LLMs to understand and generate Max patches by exposing Max objects, documentation, and patch structure through the Model Context Protocol.