Skip to main content
Glama
naotochan

polynodes-osc-mcp

by naotochan

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
polynodes_play_stopA

Start or stop PolyNodes playback.

Args: params: state=1.0 to play, state=0.0 to stop.

Returns: JSON confirmation of the sent OSC message.

polynodes_preset_slotB

Select a preset slot (1-10) on PolyNodes.

Args: params: slot number 1-10.

Returns: JSON confirmation.

polynodes_set_gainB

Set gain for a macro/meso/micro layer (-80 to 20 dB).

Args: params: level ('macro','meso','micro') and value in dB.

Returns: JSON confirmation.

polynodes_set_dry_wetB

Set the dry/wet balance (0.0=dry original, 1.0=wet synthesis).

Args: params: value 0.0-1.0.

Returns: JSON confirmation.

polynodes_gain_soloA

Solo a specific layer (macro/meso/micro).

Args: params: level and state (1.0=solo, 0.0=unsolo).

Returns: JSON confirmation.

polynodes_set_envelope_timeC

Set attack/decay envelope time for macro/meso/micro agents (0.01-0.5).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_set_playback_rateB

Set playback rate for agents. Macro: 0.3-10, Meso: 0.3-20, Micro: 0.3-30.

Args: params: level and value.

Returns: JSON confirmation.

polynodes_set_playback_rate_mod_rangeC

Set the stochastic modulation range for playback rate (0.0-0.75).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_granular_switchB

Turn the granulator on or off.

Args: params: state 1.0=on, 0.0=off.

Returns: JSON confirmation.

polynodes_granular_durationC

Set granular chunk duration (10-1000).

Args: params: value.

Returns: JSON confirmation.

polynodes_granular_duration_mod_rangeC

Set granular duration modulation range (0.0-0.75).

Args: params: value.

Returns: JSON confirmation.

polynodes_filter_switchB

Turn bandpass filter on/off for a layer.

Args: params: level and state.

Returns: JSON confirmation.

polynodes_set_filter_freqC

Set bandpass filter center frequency (80-8000 Hz).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_set_filter_mod_rangeB

Set bandpass filter modulation range (0.0-0.75).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_comb_switchB

Turn comb filter on/off for a layer.

Args: params: level and state.

Returns: JSON confirmation.

polynodes_set_comb_delayB

Set comb filter delay. Macro: 10-3000, Meso: 10-1000, Micro: 10-300.

Args: params: level and value.

Returns: JSON confirmation.

polynodes_set_comb_mod_rangeC

Set comb filter modulation range (0.0-0.75).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_blackhole_switchC

Turn the Black Hole DSP interactable on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_blackhole_forceB

Set Black Hole gravitational force per layer (0.0-1.0).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_whitehole_switchB

Turn the White Hole DSP interactable on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_whitehole_forceB

Set White Hole reflection force per layer (0.0-1.0).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_ringmod_switchA

Turn Ring Modulator on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_ringmod_freqC

Set ring modulator center frequency per layer (1.0-3.0).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_crush_switchB

Turn Bitcrusher/Decimater on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_crush_bit_levelC

Set bitcrusher bit depth level (0.0-1.0).

Args: params: value.

Returns: JSON confirmation.

polynodes_crush_rangeC

Set bitcrusher sampling frequency range (0.0-5.0).

Args: params: value.

Returns: JSON confirmation.

polynodes_resonator_switchB

Turn Resonator on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_resonator_freq_distC

Set resonator frequency distribution (1.0-3.0).

Args: params: value.

Returns: JSON confirmation.

polynodes_resonator_balanceB

Set resonator wet/dry balance (0.0-0.5).

Args: params: value.

Returns: JSON confirmation.

polynodes_cuboid_switchA

Turn a cuboid (C1/C2/C3) on or off.

Args: cube: 1, 2, or 3. state: 0.0=off, 1.0=on.

Returns: JSON confirmation.

polynodes_cuboid_return_levelC

Set cuboid FX return level per layer (1.0-80.0).

Args: params: level and value.

Returns: JSON confirmation.

polynodes_isomorph_switchC

Turn IsoMorph modulation on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_isomorph_mod_switchB

Turn on/off a specific isomorphic modulation target (freq/amp/res).

Args: param: 'freq', 'amp', or 'res'. state: 0.0 or 1.0.

Returns: JSON confirmation.

polynodes_isomorph_mod_depthB

Set isomorphic modulation depth for freq/amp/res (0.0-2.0).

Args: params: param and value.

Returns: JSON confirmation.

polynodes_isomorph_bp_centerC

Set isomorphic bandpass center frequency (0-5000).

Args: params: value.

Returns: JSON confirmation.

polynodes_navigation_random_triggerC

Trigger random navigation mode changes.

Args: params: state 1.0=on.

Returns: JSON confirmation.

polynodes_rearrange_triggerC

Trigger Re-Arr mode (rearranges input sample chunks).

Args: params: state.

Returns: JSON confirmation.

polynodes_poly_gates_switchB

Turn Poly Gates on or off (BPM-synced layer gating).

Args: params: state.

Returns: JSON confirmation.

polynodes_tuning_pb_switchC

Turn tuning scale application on PB rate on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_tuning_res_switchC

Turn tuning scale application on resonator filter on or off.

Args: params: state.

Returns: JSON confirmation.

polynodes_camera_zoomC

Zoom the 3D camera (positive=in, negative=out).

Args: params: value.

Returns: JSON confirmation.

polynodes_camera_rotateC

Rotate the 3D camera (value in radians).

Args: params: value.

Returns: JSON confirmation.

polynodes_set_bpmB

Set the sequencer BPM (10-300).

Args: params: value.

Returns: JSON confirmation.

polynodes_list_osc_addressesA

List all available PolyNodes OSC addresses and their parameter ranges.

Returns: JSON with all OSC addresses grouped by category.

polynodes_send_raw_oscA

Send a raw OSC message to PolyNodes. Use this for any OSC address.

Args: address: Full OSC address path. value: Float value.

Returns: JSON confirmation.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.9/5.0

Scored across 45 tools

Disambiguation4/5

Most tools target distinct parameters (e.g., set_gain vs set_dry_wet), but the 45-tool set includes many similar switch/set tools that could be confused without careful reading. The presence of send_raw_osc overlaps with every specific tool, creating potential ambiguity.

Naming Consistency3/5

All tools use snake_case with a polynodes_ prefix, but naming patterns mix verb-first (set_gain) and noun-first (granular_switch, gain_solo) conventions. This inconsistency makes it harder to predict tool names.

Tool Count2/5

45 tools is excessive for a single server; many parameters could be consolidated into generic setters or handled via send_raw_osc. The count falls well above the 25+ threshold for 'too many'.

Completeness4/5

The surface covers a wide range of synthesis parameters and includes list_osc_addresses and send_raw_osc for full control. Missing read/query tools and preset save operations are minor gaps given the raw OSC escape hatch.

Maintenance

ActivityInactive
ResponsivenessNo issues