Skip to main content
Glama

Create Euclidean sequencer

create_euclidean_sequencer

Generate Euclidean rhythm patterns by specifying pulses and steps; the tool writes the beat sequence to a Table DAT and dispatches events to control parameters or cues on each active step.

Instructions

Build a Euclidean rhythm sequencer: given pulses evenly distributed across steps via Bjorklund's algorithm (with optional cyclic rotation), it writes the resulting on/off pattern to a Table DAT and fires one dispatch per active step on each beat boundary. The deterministic, mathematically-grounded sibling of create_beat_grid_sequencer — program rhythms by musical intent (e.g. E(3,8) tresillo, E(5,8) cinquillo, E(4,16) four-on-the-floor) rather than by hand-editing cells. Sweep the Pulses/Rotation custom parameters live and the table re-shapes in place. action=param sets a custom parameter to on_value/off_value per step; action=cue recalls a cue per active step (cues stored with manage_cue). NOTE: beat-callback timing is UNVERIFIED offline — check op().time.play if steps don't fire when the TD timeline is paused.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoName for the sequencer COMP.euclidean
parent_pathNoParent COMP path to create the sequencer inside./project1
targetYesCOMP whose parameter or cue each active step fires on a beat boundary.
stepsNoNumber of steps in the Euclidean grid.
pulsesNoNumber of active pulses distributed evenly across `steps` via Bjorklund's algorithm. Clamped to <= steps at build time.
rotationNoCyclic rotation of the generated pattern (downbeat offset).
actionNoparam: set a target custom-parameter value per active step; cue: recall a named cue per active step (cues stored with manage_cue).param
paramNo(action=param) The custom-parameter name on the target COMP to set on each active step.
on_valueNo(action=param) Value written into the table cell for active steps.
off_valueNo(action=param) Value written into the table cell for inactive steps.
bpm_sourceNoPath to an existing Beat CHOP or tempo source. Omit to create a new Beat CHOP (on the global TD tempo).
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate non-readOnly, non-destructive, open-world. The description adds behavioral context: live parameter sweeping reshapes the table, and beat-callback timing is unverified offline. This supplements annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is detailed but well-structured: purpose, algorithm, examples, live behavior, and caveat. Every sentence adds value, though slightly verbose for a quick scan. Could be tighter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 11 parameters and no output schema, the description thoroughly covers build process, algorithm, usage examples, real-time modulation, action types, and a timing caveat. Missing nothing critical for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds critical nuances: pulses clamped to steps, rotation as downbeat offset, on/off value roles, and action enum semantics. It enriches understanding beyond raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it builds a Euclidean rhythm sequencer using Bjorklund's algorithm, writing patterns to a Table DAT and dispatching on beat boundaries. It explicitly distinguishes from the sibling create_beat_grid_sequencer, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description contrasts this deterministic sequencer with the beat-grid alternative, provides example rhythms (tresillo, cinquillo, four-on-the-floor), and explains live modulation and action types. It lacks explicit 'when not to use' guidance but is highly informative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/Pantani/tdmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server