synthlab-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| parse_patchA | Parse a Pure Data .pd file and return a structured description of its objects, connections, and signal flow. |
| generate_patchA | Generate a valid Pure Data .pd file from a JSON specification of nodes and connections. The complete .pd file content is ALWAYS returned in the response — present it directly to the user. STOP after presenting the result. Do NOT run bash, ls, mkdir, cat, cp, mv, or ANY file/shell operations after this tool. For message boxes (type: 'msg'), use '\,' as a separate arg for multi-segment messages (e.g. ADSR: args: [0, '\,', 1, 10, '\,', 0.7, 100, '\,', 0, 200]). Bare commas are auto-escaped. |
| validate_patchA | Validate a Pure Data .pd file for structural issues: broken connections, orphan objects, unknown objects, missing DSP sinks. |
| analyze_patchA | Analyze a Pure Data .pd file: object counts by category, signal flow graph, DSP chain detection, complexity scoring, and validation. |
| create_from_templateA | Generate a Pd patch from a parameterized template. Available: synth, sequencer, reverb, mixer, drum-machine, clock, chaos, maths, turing-machine, granular, bridge. Each template accepts specific params (e.g. synth: waveform, filter; sequencer: steps, bpm; drum-machine: voices, bpm, morphX, morphY). The complete .pd file content is ALWAYS returned in the response — present it directly to the user. STOP after presenting the result. Do NOT run bash, ls, mkdir, cat, cp, mv, or ANY file/shell operations after this tool. Do NOT try to save or verify files — everything is already handled. Just show the content to the user. |
| create_rackA | Generate an entire Eurorack-style rack of Pd patches at once. Takes an array of module specs (template + params) and generates: individual .pd files for each module + a combined _rack.pd with all modules side-by-side. Use wiring to connect modules via throw~/catch~ (audio) or send/receive (control) buses. Add controller config to map a MIDI controller (e.g. K2) to rack parameters — generates _controller.pd (MIDI routing) and _k2_config.json (LED feedback). Parameters auto-map by category (faders→volume, pots→filter) or use custom mappings. If outputDir is provided, files are written to disk automatically by the server. IMPORTANT: The complete .pd content is ALWAYS returned in the response — present it directly to the user. STOP after presenting the result. Do NOT run bash, ls, mkdir, cat, cp, mv, or ANY file/shell operations after this tool. Do NOT try to save, verify, or create files — everything is already handled. Just show the content to the user. |
| send_messageA | Send a control message to a running Pure Data instance via OSC (UDP) or FUDI (TCP). Requires a bridge patch loaded in Pd — use create_from_template with template 'bridge' to generate one. Common addresses: /pd/tempo , /pd/note , /pd/cc <cc#> , /pd/bang, /pd/param/ . The confirmation is ALWAYS returned in the response. Do NOT attempt additional file operations after calling this tool. |
| list_vcv_modulesA | List available VCV Rack modules and their ports/params for a given plugin. Call with just a plugin name to see all module slugs, tags, and HP widths. Call with plugin + module to see exact input/output port names and param names for cabling. ALWAYS call this BEFORE generate_vcv to look up correct module slugs and port names — do NOT guess. Supported plugins: Core, Fundamental, AudibleInstruments (aliases: mi, mutable), Befaco, Bogaudio (bg), CountModula, ImpromptuModular (impromptu), Valley, Stoermelder PackOne (stoermelder, p1), ML Modules (ml), VCV Recorder (recorder), Prism, GlueTheGiant (gtg), OrangeLine, StudioSixPlusOne (s6). |
| generate_vcvA | Generate a VCV Rack .vcv patch file from a JSON specification of modules and cables. Uses a registry of module port/param IDs scraped from C++ source. IMPORTANT: Use list_vcv_modules first to look up exact module slugs and port names — do NOT guess. Supported plugins (15): Core, Fundamental, AudibleInstruments (Mutable Instruments), Befaco, Bogaudio, CountModula, ImpromptuModular, Valley, Stoermelder PackOne, ML Modules, VCV Recorder, Prism, GlueTheGiant, OrangeLine, StudioSixPlusOne. The complete .vcv file content is ALWAYS returned in the response — present it directly to the user. STOP after presenting the result. Do NOT run bash, ls, mkdir, cat, cp, mv, or ANY file/shell operations after this tool. Do NOT try to save or verify files — everything is already handled. Just show the content to the user. |
| compose_patchA | Compose a complete musical Pd patch from a high-level song description. Before calling this tool, ask the user about genre, mood, tempo, key, instruments, and effects — use the song_analysis prompt as a guide. Only call this tool once you have enough info. Genres: ambient, techno, house, dnb, experimental, idm, minimal, drone, noise. Moods: dark, bright, aggressive, chill, ethereal, melancholic, energetic. Instrument roles: lead, bass, pad, drums, arpeggio, sequence, texture, modulator. Each role auto-selects appropriate templates (e.g. lead → sequencer + synth, texture → noise synth + granular). IMPORTANT: The complete .pd content is ALWAYS returned in the response — present it directly to the user as code blocks. STOP after presenting the result. Do NOT run bash, ls, mkdir, cat, cp, mv, or ANY file/shell operations after this tool. Do NOT try to save, create, write, or verify files — NEVER use artifacts or file downloads. Everything is already in the response text. Just show the content to the user as-is. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| song_analysis | Guided conversation to design a song and generate a Pd patch. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/j0KZ/synthlab-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server