Skip to main content
Glama
Benedict

TidalCycles MCP Server

by Benedict

tidal_eval

Evaluates a TidalCycles pattern on one channel (d1–d9), replacing all existing content and layers. Use tidal_set_layer instead to build a channel piece by piece.

Instructions

Evaluate a TidalCycles pattern on a specific channel (d1-d9). Replaces anything on that channel, including its layers. To build a channel you can edit piece by piece, use tidal_set_layer instead.

Input Schema

NameRequiredDescriptionDefault
channelYesThe channel to evaluate on (d1, d2, ... d9)
patternYesThe TidalCycles pattern to evaluate (without the 'd1 $' prefix)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It usefully discloses destructive semantics, namely that the call replaces everything on the channel including its layers, but says nothing about session prerequisites, error behavior for occupied channels, or what is returned.

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

Conciseness5/5

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

Two sentences, zero filler, and the replacement consequence is front-loaded before the routing pointer to the sibling tool. Every clause earns its place.

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

Completeness4/5

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

For a two-parameter mutation tool with no output schema and no annotations, the description covers the critical unknown (full replacement of the channel) but omits return/state feedback and any prerequisite about a running Tidal session, leaving a modest gap.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters are already documented in the schema, including the enum and the 'without d1 $ prefix' note. The description restates the channel range but adds no syntax or format detail beyond the schema, so the baseline 3 applies.

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?

States a specific verb (evaluate) and resource (a TidalCycles pattern on channel d1-d9), plus the scope of the effect. It explicitly names and contrasts with the sibling tidal_set_layer, so an agent can distinguish it without opening schemas.

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

Usage Guidelines5/5

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

Gives an explicit alternative (tidal_set_layer) and the condition that selects it: when you want to build a channel piece by piece. The implied counterpart, use this tool when you want whole-channel replacement, follows directly.

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