set_master_fx_parameter
Adjust a master track FX plugin parameter by specifying the FX index, parameter index, and a value between 0.0 and 1.0 for precise mix automation.
Instructions
Set a normalized parameter (0.0–1.0) on a master track FX plugin.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fx_index | Yes | ||
| param_index | Yes | ||
| value | Yes |
Implementation Reference
- src/reaper_mcp/mastering_tools.py:48-64 (handler)The core handler function that sets a normalized parameter (0.0–1.0) on a master track FX plugin by fx_index and param_index.
@mcp.tool() def set_master_fx_parameter(fx_index: int, param_index: int, value: float) -> dict: """Set a normalized parameter (0.0–1.0) on a master track FX plugin.""" try: project = get_project() master = project.master_track fx = master.fxs[fx_index] fx.params[param_index].normalized_value = value return { "success": True, "fx_index": fx_index, "param_index": param_index, "param_name": fx.params[param_index].name, "value": value, } except Exception as e: return {"success": False, "error": str(e)} - src/reaper_mcp/server.py:17-28 (registration)Imports and calls register_tools from mastering_tools.py to register all master tools including set_master_fx_parameter on the MCP server.
from reaper_mcp.mastering_tools import register_tools as _reg_mastering from reaper_mcp.analysis_tools import register_tools as _reg_analysis _reg_project(mcp) _reg_track(mcp) _reg_midi(mcp) _reg_fx(mcp) _reg_audio(mcp) _reg_mixing(mcp) _reg_render(mcp) _reg_mastering(mcp) _reg_analysis(mcp) - src/reaper_mcp/fx_tools.py:1-35 (helper)Similar set_fx_parameter function for track FX (non-master) – references get_fx_parameters to discover param indices used in docstrings of set_master_fx_parameter and related master tools.
import logging import reapy from reapy import reascript_api as RPR from reaper_mcp.connection import get_project logger = logging.getLogger("reaper_mcp.fx_tools") def register_tools(mcp): @mcp.tool() def add_fx(track_index: int, fx_name: str) -> dict: """ Add an FX plugin to a track. Works for both instruments (VSTi) and effects (VST/AU). Use the exact plugin name as shown in REAPER's FX browser. Built-in Cockos plugins: ReaEQ, ReaComp, ReaDelay, ReaVerb, ReaLimit, ReaSynth, ReaSamplOmatic5000, ReaTune, ReaGate, ReaFIR, ReaXcomp. """ try: project = get_project() track = project.tracks[track_index] fx_index = track.add_fx(fx_name) if fx_index < 0: return {"success": False, "error": f"Plugin not found: '{fx_name}'"} fx = track.fxs[fx_index] return { "success": True, "fx_index": fx_index, "name": fx.name, "n_params": fx.n_params, "track_index": track_index, } except Exception as e: