Skip to main content
Glama

Create MIDI item

reaper_create_midi_item

Create an empty MIDI item on a track at a specified beat position and length. Returns the item index to use for adding MIDI notes.

Instructions

Create an empty MIDI item on a track, positioned and sized in beats (quarter notes). Returns the item's index on that track, which you pass to reaper_add_midi_notes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
start_beatNoStart position in beats
length_beatNoLength in beats
track_indexYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior3/5

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

Since no annotations are provided, the description carries the burden of behavioral disclosure. It does mention the tool's core behavior (creating an empty item and returning its index) and clarifies that the item is positioned/sized in beats. However, it does not address failure conditions (e.g., invalid track/when track position is invalid), persistence/undo state, or any effects beyond the creation, leaving gaps in transparency.

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?

The description is two dense sentences, with no filler or redundency. It starts with the primary action and resource, adds the positioning in beats, and concludes with the workflow-essential return value, making excellent use of space.

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?

Given the simple input schema (3 params, one required), the description covers the major context: what the tool creates, position unit, and the meaningful return value needed by the next step. It does not mention edge-case behavior or detailed error handling, but for a basic creation tool with no output schema and no annotations, it provides enough information for correct invocation in the common case.

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?

The description partially supports parameter understanding by clarifying that 'beats' are in quarter notes, which supplements the schema descriptions for start/length. The track_index parameter is left unexplained by both schema and description, and the 67% schema coverage means at least one parameter is undocumented in the schema. The description elsewhere adds minimal extra meaning (creating an 'empty' item) but does not compensate for the missing parameter description.

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 uses a specific verb ('Create') and clearly identifies the resource ('empty MIDI item') and its scope ('on a track'). It explicitly distinguishes from the related reaper_add_midi_notes by describing the function's role as a step preceding note addition, mentioning the returned item index for that tool.

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 gives implicit usage context by stating that the returned item index should be passed to reaper_add_midi_notes, suggesting a intended workflow. It does not explicitly mention when not to use this tool, but the workflow cue is clear enough for an agent to infer the typical invocation sequence.

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