Skip to main content
Glama

create_midi_item

Create a MIDI item on a specified track in REAPER DAW. Set the start position and length in beats to add MIDI data for composition and arrangement.

Instructions

Create a MIDI item on a track. Args: track_number: Track number (1-based) position: Start position in beats length: Length in beats (default: 4 = 1 bar in 4/4)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
track_numberYes
positionNo
lengthNo

Implementation Reference

  • The main handler function for the 'create_midi_item' MCP tool. It is decorated with @mcp.tool(), defining the tool schema via its parameters and docstring. Calls ReaperBridge.insert_midi_item to perform the action.
    @mcp.tool() def create_midi_item( ctx: Context, track_number: int, position: float = 0.0, length: float = 4.0 ) -> str: """ Create a MIDI item on a track. Args: track_number: Track number (1-based) position: Start position in beats length: Length in beats (default: 4 = 1 bar in 4/4) """ bridge = get_bridge() result = bridge.insert_midi_item(track_number - 1, position, length) return result.get("message", "MIDI item created")
  • Supporting method in ReaperBridge class that handles the insertion of a MIDI item by writing a JSON command file for execution by a Lua script in REAPER.
    def insert_midi_item(self, track_index: int, position: float, length: float) -> Dict[str, Any]: """Insert MIDI item via file command.""" self._write_command("insert_midi_item", { "track_index": track_index, "position": position, "length": length }) response = self._read_response() if response: return response return {"success": True, "message": "MIDI item command sent"}

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/yura9011/scythe_mcp_reaper'

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