create_from_template
Generate a Pure Data patch from a parameterized template. Choose from synth, sequencer, reverb, mixer, drum-machine, clock, chaos, maths, turing-machine, granular, or bridge, and specify parameters to customize the output.
Instructions
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.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| template | Yes | Template name: "synth", "sequencer", "reverb", "mixer", "drum-machine", "clock", "chaos", "maths", "turing-machine", "granular", or "bridge". | |
| params | No | Template-specific parameters as a JSON object. Synth: { waveform: sine|saw|square|noise, filter: lowpass|highpass|bandpass|moog|korg, frequency: Hz, cutoff: Hz, amplitude: 0-1, envelope: adsr|ar|decay|none }. Sequencer: { steps: 1-64, bpm, notes: [MIDI 0-127], midiChannel: 1-16, velocity: 0-127 }. Reverb: { variant: schroeder|simple, roomSize: 0-1, damping: 0-1, wetDry: 0-1 }. Mixer: { channels: 1-16, stereo: bool }. Drum-machine: { voices: [bd,sn,hh,cp], tune: 0-1, decay: 0-1, tone: 0-1, amplitude: 0-1 }. Clock: { bpm, divisions: [1,2,4,8] }. Chaos: { outputs: 1-3, speed: 0-1, r: 3.5-4.0 }. Maths: { channels: 1-2, rise: ms, fall: ms, cycle: bool, outputRange: unipolar|bipolar }. Turing-machine: { length: 2-16, probability: 0-1, bpm, range: 1-127, offset: 0-127 }. Granular: { grains: 1-4, grainSize: 10-500, pitch: 0.25-4.0, position: 0-1, freeze: bool, wetDry: 0-1 }. Bridge: { protocol: osc|fudi, port: 1-65535, routes: [string] }. | |
| outputPath | No | Optional ABSOLUTE file path to write the .pd file. Only use if the user explicitly requests saving to a specific path. The .pd content is always returned in the response regardless. |