Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

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

Tools

Functions exposed to the LLM to take actions

NameDescription
fx_addA

Add an FX/plugin (VST/VST3/AU/JS by name, e.g. 'ReaEQ' or 'VST3: Pro-Q 3 (FabFilter)') to the end of a track's FX chain. Returns the new fx_index.

fx_removeB

Remove the FX at fx_index from a track's FX chain.

fx_set_enabledC

Bypass (False) or enable (True) an FX on a track.

fx_listB

List all FX on a track's FX chain with their index, name, and enabled state.

fx_set_paramC

Set a normalized (0.0-1.0) parameter value on a track's FX.

fx_get_paramC

Get a normalized (0.0-1.0) parameter value from a track's FX.

item_splitC

Split the media item on a track that starts at item_start_sec, at split_at_sec.

item_moveB

Move the media item on a track that starts at item_start_sec to new_start_sec.

item_glue_selectedA

Glue all currently selected media items into one item each (per track).

item_render_in_place_selectedB

Render selected items in place (applies FX/pitch/rate destructively to new item).

marker_addB

Add a project marker at the given position in seconds.

region_addC

Add a project region spanning start_sec to end_sec.

midi_add_itemA

Create an empty MIDI item on a track spanning start_sec to end_sec. Returns nothing useful yet to reference the item by -- use midi_add_note with the same track/time range, which locates the item itself.

midi_add_noteB

Add a MIDI note to the MIDI item on a track that starts at item_start_sec. note_start_sec/note_end_sec are absolute project time in seconds. pitch is 0-127 (60 = middle C), velocity is 1-127.

project_saveC

Save the current project.

project_undoA

Undo the last action in REAPER.

reaper_infoA

Get REAPER version, resource path, current project path, track count, and play state.

run_reascriptA

Execute arbitrary Lua code inside REAPER's ReaScript environment (full access to the reaper.* API) and return its result as a string. Use this for anything not covered by a dedicated tool -- e.g. advanced routing, item editing, or calling ReaScript functions with no wrapper yet. Be precise: this runs with the same permissions as any ReaScript.

render_projectA

Render the project using its current render settings. If output_path is given, it overrides the configured render output file path first.

Note: rendering can take time (up to 60 seconds depending on project length).
reaper_statusA

Report REAPER installs found, running REAPER processes (with PIDs), and whether the reaper_bridge.lua socket bridge is reachable. Call this first when diagnosing connection issues.

install_bridgeA

Copy reaper_bridge.lua into the detected REAPER Scripts folder(s). This does not start it -- REAPER must load it once via its Actions list (or you can set it to run on startup).

track_addA

Insert a new track, optionally at a specific 0-based index (default: end of track list) and with a given name.

track_removeC

Delete the track at the given 0-based index.

track_renameB

Rename the track at the given 0-based index.

track_set_volume_dbB

Set a track's volume fader in dB (0 = unity gain).

track_set_panB

Set a track's pan, from -1.0 (full left) to 1.0 (full right).

track_set_muteC

Mute or unmute a track.

track_set_soloB

Solo or unsolo a track.

track_set_colorA

Set a track's color using 0-255 RGB components.

track_listA

List all tracks in the current project with name, mute/solo state, volume (dB), and pan.

transport_playA

Start playback from the current edit cursor position.

transport_stopB

Stop playback/recording.

transport_pauseB

Pause playback.

transport_recordA

Arm and start recording.

transport_seekC

Move the edit cursor to an absolute position in seconds.

transport_set_tempoC

Set the project tempo in beats per minute.

transport_get_stateA

Get current play state, cursor position (seconds), and tempo.

view_zoom_to_selectionA

Zoom the arrange view horizontally to fit the currently selected item(s).

view_scroll_toA

Scroll the arrange view so the given position (seconds) is visible.

view_set_arrange_zoomB

Set the arrange view's horizontal zoom level, in pixels per second.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/vecnode/reaper-mcp'

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