@mthines/reaper-mcp 0.70.3-beta.86.1 → 0.70.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,13 +1,13 @@
1
1
  <div align="center">
2
2
 
3
3
  <picture>
4
- <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/logo-dark.svg">
5
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/logo.svg" alt="reaper-mcp" width="360">
4
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/logo-dark.svg">
5
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/logo.svg" alt="reaper-mcp" width="360">
6
6
  </picture>
7
7
 
8
8
  <br><br>
9
9
 
10
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/hero.svg" alt="reaper-mcp — Mix by asking. Type what you hear and an AI mix engineer inside your REAPER session does it." width="100%">
10
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/hero.svg" alt="reaper-mcp — Mix by asking. Type what you hear and an AI mix engineer inside your REAPER session does it." width="100%">
11
11
 
12
12
  <br>
13
13
 
@@ -21,7 +21,7 @@ You chat in plain English in Claude Code, by keyboard (or dictation, if you like
21
21
  [![Claude Code](https://img.shields.io/badge/Claude_Code-ready-a78bfa?style=for-the-badge)](https://claude.com/claude-code)
22
22
  [![LoreKit](https://img.shields.io/badge/Memory-LoreKit-7c3aed?style=for-the-badge)](https://lorekit.io)
23
23
  [![macOS · Windows · Linux](https://img.shields.io/badge/macOS_·_Windows_·_Linux-1a1240?style=for-the-badge)](#-install-in-3-steps)
24
- [![MIT](https://img.shields.io/badge/license-MIT-ff7a45?style=for-the-badge)](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/LICENSE)
24
+ [![MIT](https://img.shields.io/badge/license-MIT-ff7a45?style=for-the-badge)](https://github.com/mthines/reaper-mcp/blob/v0.70.3/LICENSE)
25
25
 
26
26
  [**Install in 3 steps**](#-install-in-3-steps) · [See it work](#-just-type-what-you-hear) · [What you get](#-why-producers-use-it) · [Watch it work](#-see-what-your-agent-is-doing) · [Extensions](#-extensions-teach-it-your-plugin) · [FAQ](#-faq)
27
27
 
@@ -48,7 +48,7 @@ with your OS if you prefer, it's the same thing to the agent):
48
48
 
49
49
  Here's what happens next:
50
50
 
51
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/session-demo.svg" alt="Illustrative session: the mixer saves a snapshot, measures, cuts the guitars where they mask the vocal, compresses the vocal, re-measures and saves an after snapshot." width="100%">
51
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/session-demo.svg" alt="Illustrative session: the mixer saves a snapshot, measures, cuts the guitars where they mask the vocal, compresses the vocal, re-measures and saves an after snapshot." width="100%">
52
52
 
53
53
  It isn't a preset and it isn't a guess. Before it touches anything it **measures your
54
54
  actual tracks** (loudness, spectrum, stereo width, dynamics). It makes the change with
@@ -96,7 +96,7 @@ handling and dynamics to the style. Just tell it what you're making.
96
96
  With **[LoreKit](#-lorekit-the-knowledge-core)** as its memory, it keeps what it learns
97
97
  about your plugins and your taste, so a correction sticks. It also draws on a shared
98
98
  plugin library that grows every time someone
99
- **[contributes](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/knowledge/contributions/README.md)**, you included.
99
+ **[contributes](https://github.com/mthines/reaper-mcp/blob/v0.70.3/knowledge/contributions/README.md)**, you included.
100
100
 
101
101
  </td>
102
102
  <td valign="top">
@@ -113,7 +113,7 @@ or upload anything, and you hear each change as it happens.
113
113
 
114
114
  ## 🔍 How it works
115
115
 
116
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/how-it-works.svg" alt="You describe what you hear, Claude measures and decides, REAPER changes live. Every change: snapshot, measure, decide, change, re-measure." width="100%">
116
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/how-it-works.svg" alt="You describe what you hear, Claude measures and decides, REAPER changes live. Every change: snapshot, measure, decide, change, re-measure." width="100%">
117
117
 
118
118
  **You stay in charge.** Ask it to explain before it acts, undo anything, or use
119
119
  `/critique` for advice without a single change to your project.
@@ -126,7 +126,7 @@ A mix engineer's value is what they've learned. reaper-mcp keeps all of that in
126
126
  **[LoreKit](https://lorekit.io)**, a free, open-source memory store for AI agents. It's
127
127
  what turns a remote control into an engineer that gets better every session.
128
128
 
129
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/knowledge-core.svg" alt="LoreKit at the center: the mix skills read plugin records and lessons before acting and write back what they learned." width="100%">
129
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/knowledge-core.svg" alt="LoreKit at the center: the mix skills read plugin records and lessons before acting and write back what they learned." width="100%">
130
130
 
131
131
  - 🎛️ **One record per plugin.** What it is, what each knob does, the settings that
132
132
  worked and the gotchas. Ask for a plugin it has never seen and it **researches it,
@@ -141,12 +141,12 @@ what turns a remote control into an engineer that gets better every session.
141
141
  overwritten. The built-in set comes with the server, read-only, and needs no
142
142
  LoreKit account. Connect your own LoreKit to start your layer.
143
143
  - 📚 **A built-in plugin library.** FabFilter, Soundtoys, Valhalla, iZotope, Melodyne, the
144
- REAPER stock plugins and more: see the **[built-in plugin list](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/PLUGINS.md)**, and how
144
+ REAPER stock plugins and more: see the **[built-in plugin list](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/PLUGINS.md)**, and how
145
145
  to add yours.
146
146
  - 🤝 **Share what you taught it.** Press **Contribute** in the bridge page's Plugins tab
147
147
  and your plugin records become a pull request. Once the maintainer approves it, they're
148
148
  built in for every reaper-mcp user and added to the
149
- [plugin list](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/PLUGINS.md) ([how it works](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/knowledge/contributions/README.md)).
149
+ [plugin list](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/PLUGINS.md) ([how it works](https://github.com/mthines/reaper-mcp/blob/v0.70.3/knowledge/contributions/README.md)).
150
150
  Regular contributors can publish straight to built-in, no pull request: ask on
151
151
  [Discord](https://discord.gg/Eg8tznuXp4).
152
152
  - 🌍 **It follows you.** The memory isn't tied to one project folder. Whatever song
@@ -161,7 +161,7 @@ what turns a remote control into an engineer that gets better every session.
161
161
 
162
162
  ## 🚀 Install in 3 steps
163
163
 
164
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/install-steps.svg" alt="1. Get REAPER, Claude Code and Node.js. 2. Paste one command. 3. Click Run on mcp_bridge.lua in REAPER." width="100%">
164
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/install-steps.svg" alt="1. Get REAPER, Claude Code and Node.js. 2. Paste one command. 3. Click Run on mcp_bridge.lua in REAPER." width="100%">
165
165
 
166
166
  ### 1 · Get the apps
167
167
 
@@ -241,7 +241,7 @@ instead of just giving advice:
241
241
  | 🔀 **Routing**: sends, buses, sidechains, hardware outputs | 🎹 **MIDI**: write, edit and analyze notes & CC, live MIDI out | ✂️ **Editing**: split, trim, move, fades, takes, stretch markers |
242
242
  | 📍 **Arrangement**: markers, regions, tempo map | 〰️ **Automation**: envelopes, points and pooled automation items | 💾 **Project**: save, render, undo/redo, snapshots, REAPER actions |
243
243
 
244
- 👉 The main tools by area: **[docs/TOOLS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/TOOLS.md)**
244
+ 👉 The main tools by area: **[docs/TOOLS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/TOOLS.md)**
245
245
 
246
246
  ### 🎸 Genre-aware out of the box
247
247
 
@@ -263,7 +263,7 @@ isn't a knob: a synth's **wavetables**, its **modulation matrix**, a guitar rig'
263
263
  file**. **Extensions** reach that. They're small add-ons you switch on, and you can have
264
264
  Claude build one for the plugin *you* use.
265
265
 
266
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/extensions.svg" alt="Extensions plug into reaper-mcp through a small versioned API: the core on the left, and the Vital, Helix and your-own extensions on the right." width="100%">
266
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/extensions.svg" alt="Extensions plug into reaper-mcp through a small versioned API: the core on the left, and the Vital, Helix and your-own extensions on the right." width="100%">
267
267
 
268
268
  > 🎹 *"On the Vital on track 2, route LFO 2 to the filter cutoff at 40% and make it a slow triangle."*
269
269
  >
@@ -289,7 +289,7 @@ reaper-mcp extension list # what's installed, and why one can't load
289
289
  - 🛡️ **A broken extension is skipped**, never a crash, and `reaper-mcp doctor` tells you why.
290
290
  - 🧪 **Proven live.** `/new-extension` doesn't finish until the edit shows up in the plugin *and* in the audio.
291
291
 
292
- 📖 Full guide (the API, Lua handlers, testing, sharing, troubleshooting): **[docs/EXTENSIONS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/EXTENSIONS.md)**
292
+ 📖 Full guide (the API, Lua handlers, testing, sharing, troubleshooting): **[docs/EXTENSIONS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/EXTENSIONS.md)**
293
293
 
294
294
  ---
295
295
 
@@ -305,7 +305,7 @@ reaper-mcp extension list # what's installed, and why one can't load
305
305
  - 📊 **Bridge status window.** See every action as it happens, with timing and errors,
306
306
  in a small window next to REAPER ([see what it shows](#-see-what-your-agent-is-doing)).
307
307
 
308
- 📖 What it can and can't do to a session, and what isn't covered: **[docs/SAFETY.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/SAFETY.md)**.
308
+ 📖 What it can and can't do to a session, and what isn't covered: **[docs/SAFETY.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/SAFETY.md)**.
309
309
 
310
310
  ---
311
311
 
@@ -315,7 +315,7 @@ You shouldn't have to take its word for it. The **bridge window** opens next to
315
315
  logs every move the agent makes, as it happens: what it did, how long it took and anything
316
316
  that went wrong. With several Claude sessions connected, you can see which one did what.
317
317
 
318
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/bridge-status.png" alt="The MCP Bridge status window: uptime, command count, errors, latency, a commands-per-minute timeline, and a live log of tool calls such as read_track_spectrum, set_track_property and snapshot_save, tagged by session." width="100%">
318
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/bridge-status.png" alt="The MCP Bridge status window: uptime, command count, errors, latency, a commands-per-minute timeline, and a live log of tool calls such as read_track_spectrum, set_track_property and snapshot_save, tagged by session." width="100%">
319
319
 
320
320
  <sub>Demo data. Add <code>?demo</code> to the window's address to explore it without REAPER.</sub>
321
321
 
@@ -325,7 +325,7 @@ Every call opens a drawer in plain words (*"midnight-drive wrote new points into
325
325
  automation on track 5"*) with a picture of the change: **before → after** for edits, a
326
326
  readout against your target for measurements.
327
327
 
328
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/bridge-drawer.png" alt="The bridge window with a call open in the drawer: Write automation, with a volume envelope drawn before and after, and the params the agent sent." width="100%">
328
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/bridge-drawer.png" alt="The bridge window with a call open in the drawer: Write automation, with a volume envelope drawn before and after, and the params the agent sent." width="100%">
329
329
 
330
330
  ### 📈 What it measured
331
331
 
@@ -333,14 +333,14 @@ readout against your target for measurements.
333
333
  <tr>
334
334
  <td width="50%" valign="top">
335
335
 
336
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/spectrum.png" alt="The spectrum view: third-octave bands from 25 Hz to 16 kHz as bars, hot bands in amber." width="100%">
336
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/spectrum.png" alt="The spectrum view: third-octave bands from 25 Hz to 16 kHz as bars, hot bands in amber." width="100%">
337
337
 
338
338
  **Spectrum**<br><sub>Where the energy sits, band by band, judged by perceived loudness. Hot bands turn amber.</sub>
339
339
 
340
340
  </td>
341
341
  <td width="50%" valign="top">
342
342
 
343
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/loudness.png" alt="The loudness view: integrated LUFS against a target range on a scale, with short-term, momentary and true peak readouts and the change since the previous call." width="100%">
343
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/loudness.png" alt="The loudness view: integrated LUFS against a target range on a scale, with short-term, momentary and true peak readouts and the change since the previous call." width="100%">
344
344
 
345
345
  **Loudness**<br><sub>LUFS against your target, true peak, and how it moved since the last measurement.</sub>
346
346
 
@@ -349,14 +349,14 @@ readout against your target for measurements.
349
349
  <tr>
350
350
  <td width="50%" valign="top">
351
351
 
352
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/loudness-curve.png" alt="The loudness curve view: short-term loudness over the length of a song against a target line, with the spans over target shaded." width="100%">
352
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/loudness-curve.png" alt="The loudness curve view: short-term loudness over the length of a song against a target line, with the spans over target shaded." width="100%">
353
353
 
354
354
  **Loudness over time**<br><sub>The whole song's loudness, with the stretches that run over target shaded.</sub>
355
355
 
356
356
  </td>
357
357
  <td width="50%" valign="top">
358
358
 
359
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/masking.png" alt="The masking view: a heat map of track pairs against frequency bands, with the worst conflicts and which track to cut." width="100%">
359
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/masking.png" alt="The masking view: a heat map of track pairs against frequency bands, with the worst conflicts and which track to cut." width="100%">
360
360
 
361
361
  **Masking**<br><sub>Which tracks fight, at which frequency, and which one should give way.</sub>
362
362
 
@@ -365,14 +365,14 @@ readout against your target for measurements.
365
365
  <tr>
366
366
  <td width="50%" valign="top">
367
367
 
368
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/stereo-bands.png" alt="The stereo view: correlation per frequency band on a minus one to plus one scale." width="100%">
368
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/stereo-bands.png" alt="The stereo view: correlation per frequency band on a minus one to plus one scale." width="100%">
369
369
 
370
370
  **Stereo, per band**<br><sub>Phase correlation per band. Catches a wide or out-of-phase low end before it hurts.</sub>
371
371
 
372
372
  </td>
373
373
  <td width="50%" valign="top">
374
374
 
375
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/waveform.png" alt="The waveform view: a rendered track drawn on a decibel scale with its peak, RMS and clipped sample count." width="100%">
375
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/waveform.png" alt="The waveform view: a rendered track drawn on a decibel scale with its peak, RMS and clipped sample count." width="100%">
376
376
 
377
377
  **Waveform**<br><sub>What a rendered track really looks like, with clipping counted.</sub>
378
378
 
@@ -388,14 +388,14 @@ Every edit is drawn **before → after**: new in blue, old dashed or ghosted, re
388
388
  <tr>
389
389
  <td width="50%" valign="top">
390
390
 
391
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/mixer.png" alt="The mixer view: every track as a fader with its level in dB, pan, and mute, solo and arm badges, grouped by folder." width="100%">
391
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/mixer.png" alt="The mixer view: every track as a fader with its level in dB, pan, and mute, solo and arm badges, grouped by folder." width="100%">
392
392
 
393
393
  **Mixer**<br><sub>The session as a mixer: folders, levels, pans, mute, solo and arm.</sub>
394
394
 
395
395
  </td>
396
396
  <td width="50%" valign="top">
397
397
 
398
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/routing.png" alt="The routing view: a signal-flow diagram of a track's sends, receives and hardware outputs, with added, changed and removed routes marked." width="100%">
398
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/routing.png" alt="The routing view: a signal-flow diagram of a track's sends, receives and hardware outputs, with added, changed and removed routes marked." width="100%">
399
399
 
400
400
  **Routing**<br><sub>Sends, receives and outputs as signal flow. Thicker wire means louder.</sub>
401
401
 
@@ -404,14 +404,14 @@ Every edit is drawn **before → after**: new in blue, old dashed or ghosted, re
404
404
  <tr>
405
405
  <td width="50%" valign="top">
406
406
 
407
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/automation.png" alt="The automation view: a volume envelope with pooled automation items drawn as blocks tinted by pool." width="100%">
407
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/automation.png" alt="The automation view: a volume envelope with pooled automation items drawn as blocks tinted by pool." width="100%">
408
408
 
409
409
  **Automation**<br><sub>Envelope points and pooled automation items, before and after.</sub>
410
410
 
411
411
  </td>
412
412
  <td width="50%" valign="top">
413
413
 
414
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/piano-roll.png" alt="The piano roll view: added notes in blue, unchanged notes in grey, removed notes dashed, and a velocity lane." width="100%">
414
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/piano-roll.png" alt="The piano roll view: added notes in blue, unchanged notes in grey, removed notes dashed, and a velocity lane." width="100%">
415
415
 
416
416
  **Piano roll**<br><sub>MIDI edits as a piano roll: added, kept and removed notes, with velocity.</sub>
417
417
 
@@ -420,14 +420,14 @@ Every edit is drawn **before → after**: new in blue, old dashed or ghosted, re
420
420
  <tr>
421
421
  <td width="50%" valign="top">
422
422
 
423
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/pins.png" alt="The plugin pins view: track channels wired into a compressor's input pins, with a newly connected sidechain highlighted." width="100%">
423
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/pins.png" alt="The plugin pins view: track channels wired into a compressor's input pins, with a newly connected sidechain highlighted." width="100%">
424
424
 
425
425
  **Plugin pins**<br><sub>Which track channels feed which plugin pins. Here, a sidechain just got wired in.</sub>
426
426
 
427
427
  </td>
428
428
  <td width="50%" valign="top">
429
429
 
430
- <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3-beta.86.1/docs/assets/views/render.png" alt="The render view: three rendered versions of a song with a waveform, LUFS, peak and length for each, against a loudness target." width="100%">
430
+ <img src="https://raw.githubusercontent.com/mthines/reaper-mcp/v0.70.3/docs/assets/views/render.png" alt="The render view: three rendered versions of a song with a waveform, LUFS, peak and length for each, against a loudness target." width="100%">
431
431
 
432
432
  **Renders**<br><sub>Every rendered file with its LUFS, peak and length against your target.</sub>
433
433
 
@@ -456,7 +456,7 @@ messages, audio or MIDI. I respect your privacy 🙏
456
456
 
457
457
  You're in control: setup asks before anything is sent, and `reaper-mcp telemetry off`
458
458
  turns it off for good — no hard feelings. Everything that's collected, and where it
459
- goes, is in [TELEMETRY.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/TELEMETRY.md).
459
+ goes, is in [TELEMETRY.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/TELEMETRY.md).
460
460
 
461
461
  ---
462
462
 
@@ -490,7 +490,7 @@ explains its reasoning so you can push back.
490
490
  <br>
491
491
  Every edit is a single undo step, and the mix skills snapshot before and after a task. Use
492
492
  <code>/critique</code> or read-only mode if you only want advice. Saving a copy of your project
493
- before a big session never hurts. <a href="https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/SAFETY.md">What is and isn't guarded</a>.
493
+ before a big session never hurts. <a href="https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/SAFETY.md">What is and isn't guarded</a>.
494
494
  </details>
495
495
 
496
496
  <details>
@@ -498,7 +498,7 @@ before a big session never hurts. <a href="https://github.com/mthines/reaper-mcp
498
498
  <br>
499
499
  Any plugin REAPER can load (VST, VST3, AU, CLAP, JS). It finds what you have installed
500
500
  and reaches for the best tool for each job. The ones it already knows are in the
501
- <a href="https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/PLUGINS.md">built-in plugin list</a>. When it meets a plugin it doesn't know, it
501
+ <a href="https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/PLUGINS.md">built-in plugin list</a>. When it meets a plugin it doesn't know, it
502
502
  researches it, inspects its controls live and saves what it learns to LoreKit. You can
503
503
  also teach it one up front with <code>/learn-plugin</code>.
504
504
  </details>
@@ -529,12 +529,12 @@ No. It reads meter values and settings from your running session, not your audio
529
529
 
530
530
  ## 🛠️ For developers
531
531
 
532
- - 📖 **[docs/REFERENCE.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/REFERENCE.md)**: architecture, install internals, CLI,
532
+ - 📖 **[docs/REFERENCE.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/REFERENCE.md)**: architecture, install internals, CLI,
533
533
  environment variables, telemetry, project structure
534
- - 🧰 **[docs/TOOLS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/TOOLS.md)**: the main tools by area
535
- - 🧩 **[docs/EXTENSIONS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/EXTENSIONS.md)**: write, test and share an extension (the API, Lua handlers, Vital and Helix)
536
- - 🧑‍💻 **[DEVELOPMENT.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/DEVELOPMENT.md)**: build, test, run from source, MCP Inspector
537
- - 🧪 **[docs/TESTING.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3-beta.86.1/docs/TESTING.md)**: end-to-end testing guide
534
+ - 🧰 **[docs/TOOLS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/TOOLS.md)**: the main tools by area
535
+ - 🧩 **[docs/EXTENSIONS.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/EXTENSIONS.md)**: write, test and share an extension (the API, Lua handlers, Vital and Helix)
536
+ - 🧑‍💻 **[DEVELOPMENT.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/DEVELOPMENT.md)**: build, test, run from source, MCP Inspector
537
+ - 🧪 **[docs/TESTING.md](https://github.com/mthines/reaper-mcp/blob/v0.70.3/docs/TESTING.md)**: end-to-end testing guide
538
538
 
539
539
  ```
540
540
  Claude Code ⇄ MCP server (TypeScript) ⇄ file IPC ⇄ Lua bridge in REAPER ⇄ ReaScript API + JSFX meters