AudacityMCP
AudacityMCP is an MCP server that gives AI assistants full control over Audacity through 131 tools for effects, cleanup, mastering, transcription, editing, and project management — all running locally without cloud processing or API keys.
Audio Effects Apply reverb, echo, phaser, wahwah, distortion, tremolo, pitch/tempo/speed changes, EQ curves, high/low-pass filters, bass & treble, PaulStretch, AutoDuck, NotchFilter, VocalReduction, fades, crossfades, reverse/invert, repair, sliding stretch, and clip fix.
Cleanup & Mastering Pipelines (One-Click)
Nine automated pipelines: auto_analyze_audio, auto_cleanup_audio, auto_cleanup_podcast, auto_audiobook_mastering (ACX compliant), auto_cleanup_interview, auto_cleanup_vocal, auto_cleanup_live, auto_master_music (genre-tuned), and auto_lofi_effect. Monitor running pipelines with check_pipeline_status. Includes noise reduction, click removal, silence truncation, compression, limiting, and LUFS normalization.
Core Audio Editing Cut, copy, paste, delete, split (in-place or to new track), split cut/delete, join, trim, silence, and duplicate audio.
Audio Generation Generate tones (sine, square, sawtooth), noise (white, pink, brownian), chirps (frequency sweeps), DTMF tones, and rhythm tracks.
Project & File Management Create, open, save, save-as, and close projects; import audio (WAV, MP3, OGG, FLAC, etc.) and MIDI; export audio in multiple formats; export labels; edit project metadata.
Track Management Add mono/stereo tracks, remove tracks, mix & render, mute/solo, pan, volume, resample, align, and convert stereo to mono.
Selection & Navigation Select all/none, by time region, by track, or by clip; snap to zero crossings; move cursor to specific times or track/project start/end.
Analysis Analyze contrast (WCAG), detect clipping, plot frequency spectrum, find beats, label sound regions, and export raw sample data.
Labels Add labels at cursor or time ranges, create labels at regular intervals, get/import/export labels.
Transport & Playback Play, stop, pause, record, play specific regions, and get current playback position.
Transcription (Experimental) Offline transcription via faster-whisper supporting 99+ languages and 5 model sizes. Transcribe full audio or selections; export as SRT, VTT, or plain text; auto-add Audacity labels at spoken segment timestamps.
Allows AI assistants to control Audacity for audio editing, cleanup, mastering, and transcription through 99 tools spanning effects, project management, and automated pipelines via a local named pipe interface.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AudacityMCPClean up this podcast recording and master it for Spotify"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AudacityMCP connects any MCP-compatible AI assistant to Audacity, giving it full control over audio editing through 144 tools spanning effects, cleanup, mastering, transcription, and more. Talk to your AI assistant and it edits your audio in real-time.
No cloud. No API keys for audio processing. Everything runs locally through Audacity's named pipe interface.
If this is useful to you, a star helps other people find it — that's the whole marketing budget for this project. Want to help keep it maintained? Click the Sponsor badge up top.
Compatibility: AudacityMCP currently works with Audacity 3.x only. Audacity 4.x is not yet supported — we hope to add support in the future.
Works With
AudacityMCP works with any AI client that supports the Model Context Protocol:
Claude Desktop — Anthropic's desktop app
Claude Code — CLI agent
Cursor — AI code editor with MCP support
Any other MCP-compatible client
Quick Start
1. Get AudacityMCP
Option A: Click the green Code button above → Download ZIP → extract to a folder
Option B: Clone with git:
git clone https://github.com/xDarkzx/Audacity-MCP.git2. Run the installer (sets up everything else automatically)
Windows: either double-click install.bat in File Explorer, or — if you're already in a terminal from the git clone step above — just keep going in the same PowerShell/Command Prompt window:
cd Audacity-MCP
.\install.batmacOS / Linux:
cd Audacity-MCP
bash install.shThe installer does 3 things: installs
audacity-mcpfrom this local folder (the one you just downloaded/cloned — no PyPI or GitHub fetch involved), enables mod-script-pipe in Audacity, and configures Claude Desktop — no manual JSON editing needed. It asks for confirmation before touching either config file, explains exactly what it's about to do first, and always backs up an existing file before changing it. Want to see everything it would do without changing anything? Add--dry-run:.\install.bat --dry-run/bash install.sh --dry-run.Note:
install.bat/install.shmust be run from inside this folder — they only install the code sitting right next to them, they don't download anything themselves.
If you're not using Claude Desktop, install manually with pip install audacity-mcp-server and add to your client's MCP config:
{
"mcpServers": {
"audacity": {
"command": "audacity-mcp"
}
}
}Check your client's MCP documentation for the config file location.
Client can't find/run
audacity-mcp? GUI apps don't always see the same PATH a terminal does. Runpython -c "import sysconfig; print(sysconfig.get_path('scripts'))"and use the full path it prints (plus\audacity-mcp.exeon Windows or/audacity-mcpon macOS/Linux) as"command"instead of the bare name.
No install.bat/install.sh, nothing touching your system automatically — three steps, all done by hand:
Enable mod-script-pipe in Audacity: Edit → Preferences (Windows/Linux) or Audacity → Preferences (macOS) → Modules → set
mod-script-pipeto Enabled → OK → restart Audacity.Install the package: open a terminal (Command Prompt/PowerShell on Windows, Terminal on macOS/Linux) and run
pip install audacity-mcp-server— a normal PyPI install, no repo clone needed.Configure Claude Desktop: open Claude Desktop → Settings (gear icon) → Developer tab → Edit Config — this opens
claude_desktop_config.jsonin a text editor. Add this inside the"mcpServers"block, keeping any other servers you already have:{ "mcpServers": { "audacity": { "command": "audacity-mcp" } } }Save the file and fully restart Claude Desktop (quit from the system tray, not just close the window).
That's the entire install — see the Installation Guide for the same steps with more detail and per-OS notes.
"audacity"doesn't show up as a tool after restarting? The"command": "audacity-mcp"above only works if that command is on the same PATH Claude Desktop itself uses, which isn't always the case (especially if Claude Desktop was already open when you installed Python). If it doesn't connect, run this in a terminal to find the real install location:python -c "import sysconfig; print(sysconfig.get_path('scripts'))"— then replace"audacity-mcp"above with the full path it prints plus\audacity-mcp.exe(Windows, remember to double every backslash:\\) or/audacity-mcp(macOS/Linux).
3. Start editing
Open Audacity, load some audio, then talk to your AI:
"Clean up this podcast recording"
"Master this track for Spotify, it's EDM"
"Transcribe this and add labels at each sentence"
"Add reverb with a large room, then export as FLAC"Audacity must be open first. AudacityMCP communicates through Audacity's named pipe — it can't launch Audacity for you.
See the full Installation Guide for detailed setup on all platforms and MCP clients.
Related MCP server: Audacity MCP Server
Why AudacityMCP?
Without AudacityMCP: You manually navigate menus, tweak effect parameters by ear, apply effects one at a time, look up ACX specs, and repeat until it sounds right.
With AudacityMCP: You describe what you want in plain English and the AI handles the rest — picking the right effects, setting industry-standard parameters, and chaining operations together.
Manual Audacity | With AudacityMCP | |
Podcast cleanup | 5+ steps across different menus, guessing compressor settings | "Clean up this podcast" — one sentence |
Music mastering | Research genre-appropriate EQ/compression, apply each manually | "Master this for Spotify, it's hip-hop" — genre-tuned presets |
Noise removal | Effect → Noise Reduction → Get Profile → select all → apply | "Remove the background noise" — automatic profiling |
Batch operations | Repetitive menu navigation for each operation | Describe the full chain and watch it happen |
Transcription | Export audio, use external tool, import results back | "Transcribe this and add labels" — stays in Audacity |
Learning curve | Know which effects exist and what parameters to use | Just describe the result you want |
AudacityMCP is especially useful for:
Podcasters who want consistent, professional sound without audio engineering knowledge
Musicians who need quick mastering with genre-appropriate settings
Content creators working with interviews, voiceovers, or field recordings
Anyone who'd rather describe what they want than click through menus
What Can It Do?
You: "Clean up this podcast recording"
AI: Runs auto_cleanup_podcast → HPF 80Hz → noise reduction → compression → safe loudness check
You: "Master this track for Spotify, it's EDM"
AI: Runs auto_master_music style=edm → HPF 30Hz → click removal → compression 2.5:1 → bass +2dB → loudness check
You: "This is a noisy live recording, fix it up"
AI: Runs auto_cleanup_live → HPF 100Hz → click removal → noise reduction 18dB → compression 5:1
You: "Transcribe this interview and add labels"
AI: Runs transcribe_to_labels → faster-whisper transcription → Audacity labels at each timestamp
You: "Add reverb to the vocals, then export as FLAC"
AI: select region → reverb effect → export to FLACFeatures
144 Tools Across 11 Categories
Category | Tools | Highlights |
Effects | 30 | Reverb, echo, pitch shift, tempo change, EQ, phaser, distortion, paulstretch, HPF/LPF, bass & treble, tremolo, wahwah |
Cleanup & Mastering | 18 | Noise reduction, compressor, limiter, 9 one-click pipelines, analysis tool |
Editing | 13 | Cut, copy, paste, split, join, trim, silence, duplicate, undo, redo |
Project | 12 | New, open, save, import/export (WAV, MP3, FLAC, OGG, AIFF) |
Track | 15 | Add mono/stereo, remove, set properties, mix & render, mute/solo, pan, volume |
Selection | 12 | Select all/none/region/tracks, zero crossing, cursor positioning |
Transport | 7 | Play, stop, pause, record, play region, get position |
Analysis | 6 | Contrast, clipping detection, spectrum, beat finder, sound labeling |
Generation | 5 | Tone, noise, chirp, DTMF, rhythm track |
Transcription (Experimental) | 7 | Full/selection transcribe, to labels, to SRT/VTT/TXT, model preload |
Labels | 19 | List/find/edit/delete, delete one labeled take's audio by index, batch add, cut/delete/silence labeled regions, marker export (simple/cue/Podlove), per-segment audio export, import/export |
Pipelines
AudacityMCP includes 9 one-click pipelines for common audio tasks. Each pipeline is designed to be safe for badly recorded audio — it will never boost your audio dangerously. Pipelines clean up and improve your audio, then you can manually adjust loudness afterward if needed.
How Pipelines Work
You tell the AI what you want (e.g. "clean up this podcast")
The AI picks the right pipeline and starts it
The pipeline runs in the background — you get a
job_idbackPoll with
check_pipeline_statusevery 15-30 seconds to monitor progressWhen done, a popup appears in Audacity
Safety rule: Pipelines only reduce peaks if they're too hot. They never boost loudness. If you want to hit a specific LUFS target (e.g. -14 for Spotify), ask the AI to run
loudness_normalizeafter you've checked the results look good.
Pipeline Reference
auto_analyze_audio — Analyze before processing
Measures your audio and recommends the best pipeline. Run this first if you're not sure what to do.
You: "Analyze this audio"
→ Returns: peak level, noise floor, clipping status, recommended pipelineauto_cleanup_audio — Safe cleanup only
Cleans up noise and artifacts without changing loudness at all. Use when levels are already fine.
You: "Just clean up the noise, don't change the volume"
→ DC offset removal → HPF 80Hz → noise reduction → click removal (optional)auto_cleanup_podcast — Podcast / voiceover
Professional broadcast processing for spoken word.
You: "Clean up this podcast recording"
→ DC offset → HPF 80Hz → noise reduction 12dB → compression 3:1 → safe loudness checkauto_audiobook_mastering — Audiobook (ACX/Audible)
Targets ACX requirements for audiobook distribution.
You: "Master this for ACX / Audible"
→ DC offset → HPF 80Hz → noise reduction 12dB → compression 2.5:1 → safe loudness check → peak cap -3dBauto_cleanup_interview — Interview / dialogue
Light touch for conversations — preserves natural dynamics.
You: "Clean up this interview recording"
→ DC offset → HPF 80Hz → noise reduction 8dB → compression 2.5:1 → safe loudness checkauto_cleanup_vocal — Singing / studio vocal
Tuned for vocal recordings with presence EQ for clarity.
You: "Process this vocal recording"
→ DC offset → HPF 100Hz → noise reduction 10dB → compression 3:1 → presence EQ (+3dB treble, -1dB bass) → safe loudness checkauto_cleanup_live — Live / field / noisy recording
Aggressive cleanup for noisy environments. First 0.5s must be ambient noise for profiling.
You: "This is a noisy live recording, clean it up"
→ DC offset → HPF 100Hz → click removal → noise reduction 18dB → compression 5:1 → safe loudness checkauto_master_music — Music mastering
Genre-tuned mastering with 6 presets: edm, hiphop, rock, pop, classical, acoustic.
You: "Master this hip-hop track"
→ HPF 30Hz → click removal → compression 2:1 → bass +3dB treble +1dB → safe loudness check
You: "Master this for a classical album"
→ HPF 30Hz → click removal → compression 1.3:1 (very gentle) → no EQ → safe loudness checkPreset | HPF | Compression | Bass EQ | Treble EQ |
EDM | 30 Hz | 2.5:1 / 80ms | +2 dB | +1 dB |
Hip-Hop | 30 Hz | 2:1 / 100ms | +3 dB | +1 dB |
Rock | 40 Hz | 2:1 / 100ms | 0 dB | +1 dB |
Pop | 35 Hz | 2:1 / 80ms | +1 dB | +1.5 dB |
Classical | 30 Hz | 1.3:1 / 200ms | 0 dB | 0 dB |
Acoustic | 30 Hz | 1.5:1 / 150ms | 0 dB | 0 dB |
auto_lofi_effect — Creative lo-fi / vintage
Apply a warm, vintage lo-fi sound. Presets: light, medium, heavy.
You: "Give this a lo-fi vibe"
→ HPF → LPF (muffled highs) → bass/treble warmth → compression 2:1 → safe loudness checkAfter a Pipeline: Adjusting Loudness
Pipelines intentionally leave loudness alone (they only reduce if peaks are clipping). To hit a streaming target:
You: "Now normalize this to -14 LUFS for Spotify"
→ AI uses loudness_normalize tool with lufs_level=-14
You: "Normalize to -16 LUFS for podcast"
→ AI uses loudness_normalize tool with lufs_level=-16Why not do this automatically? LUFS normalization can boost quiet/badly recorded audio by 10-20 dB, which blows it out. By separating cleanup from loudness, you get to check the results before the final loudness step.
Local Transcription (Experimental)
This feature is experimental and requires separate setup. Everything else works without it.
Powered by faster-whisper — runs entirely offline, your audio never leaves your machine:
5 model sizes:
tiny,base,small,medium,large-v3Transcribe full audio or just a selection
Export as SRT, VTT, or plain text subtitles
Auto-add Audacity labels at each spoken segment
Language detection or specify 99+ languages
Setup required before first use: See Transcription Setup for installation steps.
Want GPU acceleration (10-20x faster)? Run audacity-mcp-setup-gpu — or download setup_gpu.bat/setup_gpu.sh and double-click/run it if you'd rather not use a terminal. Detects your GPU, installs what's needed, and verifies it actually works. NVIDIA GPUs only (AMD/Intel graphics and macOS aren't supported by the transcription backend at all — any NVIDIA card works, GeForce isn't a requirement, just having an NVIDIA GPU is). No NVIDIA GPU? CPU works fine, just slower on long files.
Script says it worked but transcription is still slow/on CPU? That means Claude Desktop is launching
audacity-mcpfrom a different Python than the one the script just verified — see the fix (a manual config edit, five minutes).
What's New — v0.1.3
32 new tools (99 → 131), pipeline tuning fixes, and live-tested against Audacity.
New effects: Reverse, Invert, Repair, AutoDuck, NotchFilter, VocalReduction, AdjustableFade, StudioFadeOut, CrossfadeClips, CrossfadeTracks, ClipFix, SlidingStretch, Tremolo
New editing: Split (in place), SplitCut, SplitDelete, Disjoin + renamed old split →
edit_split_newNew tracks: StereoToMono, MixAndRenderToNew, MuteAll, UnmuteAll, Resample, AlignEndToEnd, AddLabelTrack
New selection: CursorToTrackStart/End, CursorToProjectStart/End, SelectCursorToTrackEnd
New project: EditMetadata, ImportMIDI
New labels: RegularIntervalLabels
Pipeline fixes: ACX peak cap -3.0→-3.5dB, live NR 18→12dB, podcast comp 10ms/1s→30ms/200ms, interview release 1s→200ms
Bug fix:
effect_repairnow uses long timeout (Audacity shows popup on invalid selection)Validation: Added missing range checks on AutoDuck, VocalReduction, SlidingStretch, Resample
Troubleshooting
mod-script-pipe Not Enabled
The installer enables this automatically, but if it didn't work (e.g. Audacity was never opened before), enable it manually:
Open Audacity
Go to Edit → Preferences (Windows/Linux) or Audacity → Preferences (macOS)
Click Modules in the left sidebar
Set
mod-script-pipeto EnabledClick OK and restart Audacity
Connection Issues
Problem | Fix |
"Pipe not found" | Open Audacity first. Make sure |
"Pipe timeout" | Audacity is busy. Wait and retry — the late reply is drained in the background and the next command waits for it (or reports "still busy"). Some effects take minutes on long files. |
Connection works once then fails | The pipe disconnected (Audacity crash or restart). Just try again — AudacityMCP auto-reconnects. |
"Access denied" (Windows) | Audacity and your AI client must run as the same user. Don't mix admin and non-admin. |
Pipeline Issues
Problem | Fix |
Pipeline blows out / clips the audio | This shouldn't happen anymore — pipelines only reduce peaks, never boost. If it does, undo (Ctrl+Z) and report the issue. |
"A pipeline is already running" | Only one pipeline can run at a time. Use |
Pipeline finishes but audio is too quiet | That's by design — pipelines don't boost. Ask the AI: "Normalize to -14 LUFS" after checking results. |
Noise reduction sounds metallic/warbled | The first 0.5 seconds of your track must be pure silence/room noise for profiling. If it's not, trim to add silence or use |
Pipeline step failed (in warnings) | Individual steps can fail without stopping the pipeline. Check the |
Audio Quality Tips
Want | Do This |
Remove background noise | Make sure the first 0.5s of your track is pure room tone (no speech/music). The pipeline uses this to build a noise profile. |
Fix clipping | Run |
Hit -14 LUFS for Spotify | Run a cleanup pipeline first, check the results look good, then ask the AI to apply |
Hit -16 LUFS for podcast | Same approach — cleanup first, LUFS second. |
ACX audiobook compliance | Use |
Quick cleanup without changing volume | Use |
General Issues
Problem | Fix |
"No module named faster_whisper" | Run |
Model download fails | Check internet and retry. Models cache locally after first download. |
Pipes missing in /tmp (macOS/Linux) | Check Audacity is running and mod-script-pipe is enabled. Check Audacity's console for errors. |
Using Snap or Flatpak Audacity on Linux | Both sandbox |
Installer says "Audacity config not found" but Audacity definitely runs | If you're running a portable Audacity (a |
| Claude Desktop installed via the Microsoft Store redirects its config into an isolated per-package folder — older |
Architecture
┌──────────────┐ stdio ┌──────────────┐ named pipe ┌──────────────┐
│ MCP Client │◄──────────────►│ AudacityMCP │◄──────────────►│ Audacity │
│(AI assistant)│ (JSON-RPC) │ FastMCP │ (commands) │ │
└──────────────┘ └──────────────┘ └──────────────┘
│
├── audacity_mcp/main.py (entry point)
├── audacity_mcp/audacity_client.py (pipe I/O)
├── audacity_mcp/tool_registry.py (auto-loader)
└── audacity_mcp/tools/ (11 modules)Key Design Decisions
Named pipes, not TCP — Direct IPC to Audacity's
mod-script-pipe. No network exposure, no port conflicts.Zero
exec/eval— Every operation maps to a static handler with input validation. No arbitrary code execution.Cross-platform — Windows uses Win32 API via ctypes, Unix uses standard file I/O.
Async throughout — All tool handlers are
async. Blocking pipe I/O runs in an executor pool with configurable timeouts.Safe pipelines — Pipelines measure audio before making loudness decisions. They only reduce, never boost.
Dynamic tool registration — Drop a module in
audacity_mcp/tools/, export aregister(mcp)function, and it's automatically discovered.
Project Structure
AudacityMCP/
├── audacity_mcp/
│ ├── main.py # FastMCP server entry point
│ ├── audacity_client.py # Cross-platform named pipe client
│ ├── tool_registry.py # Auto-discovers and registers tool modules
│ └── tools/
│ ├── analysis_tools.py # Audio analysis (contrast, spectrum, beats)
│ ├── cleanup_tools.py # Noise reduction, mastering, 9 pipelines
│ ├── edit_tools.py # Cut, copy, paste, split, join, trim
│ ├── effects_tools.py # Reverb, echo, pitch, EQ, filters
│ ├── generate_tools.py # Tone, noise, chirp, DTMF generation
│ ├── label_tools.py # Label management
│ ├── project_tools.py # Project/file operations
│ ├── selection_tools.py # Selection and cursor control
│ ├── track_tools.py # Track management
│ ├── transcription_tools.py # Whisper-based transcription
│ └── transport_tools.py # Playback and recording control
├── audacity_mcp_shared/
│ ├── constants.py # Pipe paths, timeouts, allowed formats
│ ├── error_codes.py # Typed error codes (pipe/command/validation)
│ └── pipe_protocol.py # Command formatting and response parsing
├── tests/ # 60 tests
├── docs/
│ ├── INSTALLATION.md # Detailed setup guide
│ └── TOOLS.md # Complete tool reference
└── pyproject.tomlDevelopment
# Install dev dependencies
pip install -e ".[dev]"
# Run tests
pytest tests/ -x -q
# Run lint (real bugs + security patterns, not style/formatting)
ruff check .Adding New Tools
Create a module in
audacity_mcp/tools/(or add to an existing one)Export a
register(mcp: FastMCP)functionDefine your tools with
@mcp.tool()decoratorsThat's it — the tool registry auto-discovers it on startup
# audacity_mcp/tools/my_tools.py
from mcp.server.fastmcp import FastMCP
from audacity_mcp_shared.error_codes import AudacityMCPError, ErrorCode
def register(mcp: FastMCP):
from audacity_mcp.main import client
@mcp.tool()
async def my_custom_effect(intensity: float = 0.5) -> dict:
"""Apply my custom effect to the selected audio."""
if not 0 <= intensity <= 1:
raise AudacityMCPError(ErrorCode.VALUE_OUT_OF_RANGE, "intensity must be 0-1")
return await client.execute_long("MyEffect", Intensity=intensity)See CONTRIBUTING.md for full guidelines.
Community
Turning this into a tool every Audacity user reaches for takes more than one person. If you're using AudacityMCP — even just trying it out — come join the Discord: share what you built, report what's broken, suggest what's missing, or just hang out with other people doing AI-driven audio editing. Communities grow one person telling another this exists, so if you know someone who'd get value out of this, send them the link.
Support
If AudacityMCP has saved you time or helped with your audio projects, consider sponsoring:
Your support helps keep this project maintained and free for everyone.
Documentation
Installation Guide — Detailed setup for Windows, macOS, Linux
Tool Reference — Complete reference for all 144 tools with parameters and ranges
Transcript-Based Editing — Workflow guide for podcasts, interviews, and lectures (label-driven editing)
Contributing — How to add tools and contribute
Changelog — Version history and release notes
Acknowledgments
Thanks to the following for reported bugs, ideas, and feedback that improved this project:
@Harsha-Jay-S — diagnosed the
effect_change_pitch/effect_change_speedbug (#15) with measured proof against real Audacity, pinpointing the exact root cause.
License
Apache License 2.0 — see LICENSE for details.
Built by Daniel Hodgetts • 𝕏 @daehonz1
Available Tools
144 toolsanalyze_beat_finderA
Find beats in the selected audio and add labels at beat positions.
Args: thres_val: Beat detection threshold (0-100, lower = more sensitive). Default: 65
| Name | Required | Description | Default |
|---|---|---|---|
| thres_val | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden. It clearly discloses the main side effect—adding labels to the project—and the threshold sensitivity. However, it does not mention what happens to existing labels, whether the operation is undoable, or any other side effects beyond adding labels.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose. The parameter documentation is minimal and directly useful, with no redundant filler or repetition of the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool, the description provides enough to invoke it correctly: what it does, what it affects, and what the threshold means. It is slightly incomplete in that it does not address whether existing labels are overwritten or what the tool returns, but these are minor gaps given the tool's low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description fully compensates by explaining the single parameter: its valid range (0-100), its direction of effect ('lower = more sensitive'), and its default value (65). This adds real meaning beyond the bare integer schema definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Find beats'), a clear resource ('selected audio'), and the outcome ('add labels at beat positions'). This distinguishes it from label-only tools and other analysis tools such as analyze_find_clipping or analyze_plot_spectrum.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when the user wants beat positions marked as labels on selected audio. It does not explicitly state when not to use it or name alternatives such as raw_beatsand_measures, so the guidance is only implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_contrastA
Analyze the contrast between foreground and background audio. Select a region first. Useful for checking accessibility compliance (WCAG).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description supplies some behavior: the tool reads the current region rather than taking parameters, and it is a read-only analysis rather than a mutation. However, it does not explain how foreground/background are determined, what the result looks like, or what happens if no region is selected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences present purpose, prerequisite, and use case with no filler. The core action is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool, the invocation requirement is covered, but with no output schema the description should state what the tool returns or displays. The ambiguity of how foreground and background are distinguished also remains unaddressed, leaving the agent with partial context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and 100% schema coverage, so the schema leaves nothing undocumented. The description adds useful stateful context by requiring a prior region selection, which is more than the empty schema conveys.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the operation (analyze contrast) and the resource (foreground/background audio), and adds a WCAG accessibility use case that helps set it apart from sibling analyze_* tools. It does not explicitly contrast itself with any sibling, so it falls short of full 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear context ('checking accessibility compliance (WCAG)') and an explicit prerequisite ('Select a region first'). It does not mention when not to use it or name a preferred alternative, so no 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_find_clippingA
Find clipping in the selected audio and create labels at clipped regions.
Args: duty_cycle_start: Min number of consecutive clipped samples to detect (1-1000, default 3) duty_cycle_end: Min number of consecutive non-clipped samples to end a region (1-1000, default 3)
| Name | Required | Description | Default |
|---|---|---|---|
| duty_cycle_end | No | ||
| duty_cycle_start | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does usefully disclose the side effect of creating labels. However, it omits important behavior: whether existing labels at those regions are overwritten or duplicated, what label track is affected, and whether the operation is reversible. These are meaningful gaps for a tool that mutates project state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The one-sentence purpose is front-loaded and waste-free, and the Args section is structured and terse. Slight redundancy exists because the parameter defaults repeat the schema for both parameters, but the added range/meaning justifies the duplication.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with no output schema, the description covers purpose and parameters well. Missing is what the created labels look like (names, format), how the tool interacts with pre-existing labels, and what the return value is. These gaps matter for an analysis tool that modifies the label track, but the core calling contract is adequately documented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the schema's bare integer/default properties — and it does. It adds semantic meaning for both parameters: 'Min number of consecutive clipped samples to detect (1-1000, default 3)' and 'Min number of consecutive non-clipped samples to end a region', including the valid range and behavior. This goes well beyond the schema's minimal titles/defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Find clipping in the selected audio') plus a concrete side effect ('create labels at clipped regions'). This makes it clearly distinct from siblings like raw_show_clipping (visual only) and the other analyze_* tools, without needing to inspect their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. It doesn't reference any sibling (e.g., raw_show_clipping, analyze_plot_spectrum) or state conditions under which clipping detection is appropriate, nor any prerequisites like playing or selecting specific audio.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_label_soundsA
Automatically label regions of sound separated by silence.
A good starting point for segmenting a long recording: label every passage of sound, or with label_type="between" label the silences instead so they can be trimmed with label_delete_regions.
measurement, label_type, pre_offset, post_offset and label_text are new and not yet independently live-tested against a running Audacity — verified against the scripting reference and unit tests with mocked responses only. threshold_db/min_silence_duration/min_sound_duration predate this and are unaffected.
Args: threshold_db: Volume threshold to distinguish sound from silence (dB). Default: -30 min_silence_duration: Minimum duration of silence between sounds (seconds). Default: 0.5 min_sound_duration: Minimum duration of a sound region (seconds). Default: 0.1 measurement: How level is measured — peak, avg or rms. Default: peak label_type: What to label — before, after, around or between the sounds. Default: before pre_offset: Seconds to extend each label before the sound starts. Default: 0 post_offset: Seconds to extend each label after the sound ends. Default: 0 label_text: Text for each label. Default: Audacity's own default
| Name | Required | Description | Default |
|---|---|---|---|
| label_text | No | ||
| label_type | No | before | |
| pre_offset | No | ||
| measurement | No | peak | |
| post_offset | No | ||
| threshold_db | No | ||
| min_sound_duration | No | ||
| min_silence_duration | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It does disclose operation semantics, label placement options, and a notable reliability caveat that several parameters are "not yet independently live-tested" and only mock-verified. However, it does not mention side effects on existing labels, whether a selection is required, or what the command ultimately returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is organized into a one-sentence summary, a practical use case, a reliability caveat, and a clean Args list. It is longer than the minimum but every section contributes useful information, and the Args section is scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the operation, use case, parameter semantics, and even reliability caveats, which is unusually complete for a tool with no annotations and no output schema. It falls short only by not clarifying prerequisites such as existing selection/audio project state or whether existing labels are preserved or replaced.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate, and it does comprehensively: all eight parameters are individually explained with units, allowed values, and defaults. This adds real meaning beyond the bare schema fields, including threshold in dB, durations in seconds, and label_type options.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: "Automatically label regions of sound separated by silence." This uniquely distinguishes the tool from manual label tools like label_add or interval-based label_regular_intervals, and the additional label_type details clarify the exact scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear use case: "A good starting point for segmenting a long recording," and explains when to use label_type="between" for trimming silences with label_delete_regions. It does not explicitly list when not to use it or name direct alternative tools, but the context is strong enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_plot_spectrumA
Open the Plot Spectrum window for the selected audio. Select a region first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It states that the tool opens a Plot Spectrum window and targets the selected audio, but it does not explain what the window shows, whether it returns any data, or what happens if no region is selected. It is minimally transparent but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: the first states the action and target, the second states the required precondition. Every sentence earns its place and the content is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless UI action tool with no output schema and no annotations, the description covers the essential details: what it opens, what it operates on, and the needed pre-selection. It is slightly incomplete in not explaining the nature of the Plot Spectrum window, but it is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and no output schema, so the schema itself provides no semantics beyond an empty object. The description adds meaningful context by indicating the tool acts on 'selected audio' and requires a region, which is more useful than the empty schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Open') and a specific resource ('Plot Spectrum window') on the selected audio, so its purpose is clear. It does not explicitly distinguish itself from sibling analysis tools like analyze_contrast, but the named window is distinctive enough to avoid major confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite: 'Select a region first.' This tells the agent the state required before invoking the tool. It lacks explicit when-not-to-use guidance or named alternatives, but for a zero-parameter UI action this is adequate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_sample_data_exportA
Export raw sample data from the selected audio to a text file for analysis.
Args: path: Absolute path for the output file limit: Maximum number of samples to export. Default: 100
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description discloses it creates a text file, but does not mention overwrite behavior, permissions, file size limits, or other side effects. Lacks detail for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus an args list, with the main purpose upfront. No unnecessary words, efficient structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-param tool, the description covers the basics, but lacks information on output file format (e.g., plain text, CSV) and how to interpret the exported data. Adequate but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description adds meaning: 'Absolute path' clarifies the path parameter, and 'Maximum number of samples to export' explains the limit parameter with its default.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it exports raw sample data to a text file for analysis, with a specific verb and resource. It distinguishes from sibling analysis tools by focusing on raw data export.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for analysis' implies use for external analysis, but no explicit comparison to sibling tools or conditions for when to use/not use. Guidance is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_analyze_audioA
Analyze the current audio track and recommend the best pipeline to use. This is SYNCHRONOUS — it returns the analysis directly, no job_id needed.
Returns peak level, estimated noise floor, duration, clipping status, and a recommendation for which auto_ pipeline to use next.
IMPORTANT: Load your audio into Audacity before calling this.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the tool is synchronous and returns analysis directly without a job_id, and lists the specific return values (peak level, noise floor, duration, clipping status, recommendation). This provides transparency about the immediate nature and output format. It does not explicitly state it is read-only, but the term 'analyze' implies no modification, and no side effects are mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: first sentence states purpose, second clarifies synchronous nature, third lists return values, and final line gives prerequisite. No redundant or vague phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of parameters and output schema, the description provides sufficient context by explaining the return values and prerequisite. It clearly tells the agent what to expect and what to do before calling. The mention of 'auto_ pipeline' is understood from the sibling tool list, and the tool's role as a recommender is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is nothing to explain. The description adds no ambiguity about parameters; the empty schema is fully covered.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool analyzes the current audio track and recommends the best auto_ pipeline to use. It specifies the action (analyze) and the resource (current audio track), and names the output (recommendation). This distinguishes it from sibling tools that directly apply effects or perform other operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes an IMPORTANT prerequisite: load audio into Audacity before calling. It also implies usage as a decision-support tool before invoking an auto_ pipeline. However, it does not explicitly contrast with alternatives such as calling a pipeline directly or using other analysis tools, leaving some inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_audiobook_masteringA
ONE-CLICK AUDIOBOOK MASTERING: ACX/Audible compliant processing. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor.
Pipeline: DC offset > HPF 80Hz > noise reduction 12dB > compression 2.5:1 > RMS -20dB > peak cap -3.5dB Meets ACX requirements: RMS -23 to -18 dB, peaks below -3 dB (capped at -3.5 for safety margin), noise floor below -60 dB.
Args: remove_noise: Apply noise reduction using first 0.5s as noise profile. Default: True
IMPORTANT: If remove_noise is True, the first 0.5 seconds should be room tone / silence. DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
| remove_noise | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses async execution, immediate job_id, the full DSP pipeline (DC offset, HPF, noise reduction, compression, RMS, peak cap), ACX target values, and a concurrency warning. It stops short of stating whether the source audio is modified in place or where the finished audio is written.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well organized: purpose, async behavior, pipeline, ACX specs, parameter, and warnings. Every sentence carries actionable information and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an async tool with no output schema and no annotations, it covers the pipeline, compliance targets, parameter semantics, monitoring path, and concurrency. The main omissions are what audio it acts on (current selection/project) and how the finalized mastered audio is delivered after the job completes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only provides a bare boolean with a default; the description adds real meaning by explaining 'Apply noise reduction using first 0.5s as noise profile,' reinforcing the default, and adding the crucial prerequisite that the first 0.5s must be room tone or silence when remove_noise is true.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'ONE-CLICK AUDIOBOOK MASTERING: ACX/Audible compliant processing,' which specifies the verb (mastering), the resource (audiobook), and the compliance target. This clearly distinguishes it from music-mastering and editing siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says the job runs in the background, to monitor via check_pipeline_status, and includes a strong when-not: 'DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.' It also states the room-tone prerequisite for remove_noise. It doesn't enumerate alternatives for other mastering types, but the audiobook-specific scope is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_cleanup_audioA
SAFE CLEANUP: Remove noise and artifacts WITHOUT changing loudness or dynamics. Use this when audio levels are already good and you just want to clean it up. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor.
Pipeline: DC offset removal > HPF 80Hz > noise reduction (opt) > click removal (opt) NO compression, NO normalize, NO LUFS. Just clean.
Args: remove_noise: Apply noise reduction using first 0.5s as noise profile. Default: True remove_clicks: Remove clicks/pops (useful for vinyl/old recordings). Default: False
IMPORTANT: If remove_noise is True, the first 0.5 seconds should be room tone / silence. DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
| remove_noise | No | ||
| remove_clicks | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool runs in background and returns a job_id immediately, lists the exact pipeline steps (DC offset removal > HPF 80Hz > optional noise reduction > optional click removal), states what it does NOT do (compression, normalize, LUFS), and notes the critical prerequisite about the first 0.5 seconds being silence if noise reduction is enabled. It also warns about concurrent pipeline calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded: the core purpose and key constraint ("SAFE CLEANUP: Remove noise and artifacts WITHOUT changing loudness or dynamics") appear first. The pipeline overview and parameter details are organized with headers and bullet points. Every sentence adds value—there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description is remarkably complete. It covers the return value (job_id), how to monitor (check_pipeline_status), the processing pipeline, parameter behaviors, prerequisites (silence for the noise profile), and concurrency rules. An agent has everything needed to invoke this tool correctly and interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the parameters. It does: remove_noise is explained as "Apply noise reduction using first 0.5s as noise profile" with default True, and remove_clicks as "Remove clicks/pops (useful for vinyl/old recordings)" with default False. It also adds the important caveat about the noise profile requirement, which is not in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and object: "Remove noise and artifacts WITHOUT changing loudness or dynamics," and explicitly frames it as a "SAFE CLEANUP" tool. It differentiates itself from siblings by emphasizing that it does not alter loudness or dynamics, making it clear it is for cleanup only when levels are already good.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: "Use this when audio levels are already good and you just want to clean it up." It also gives a clear exclusion: "DO NOT call this again if a pipeline is already running — use check_pipeline_status instead," and directs the user to monitor via check_pipeline_status. This provides both when and when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_cleanup_interviewA
ONE-CLICK INTERVIEW CLEANUP: Light-touch processing for dialogue and multiple speakers. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor.
Pipeline: DC offset > HPF 80Hz > noise reduction 8dB > compression 2.5:1 > safe loudness check. Lighter than podcast — preserves natural conversation dynamics.
Args: remove_noise: Apply noise reduction using first 0.5s as noise profile. Default: True remove_silence: Truncate long silences. Default: False
IMPORTANT: If remove_noise is True, the first 0.5 seconds should be room tone / silence. DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
| remove_noise | No | ||
| remove_silence | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden and does a solid job: it reveals asynchronous execution, immediate job_id return, the exact pipeline stages, the room-tone requirement, and the no-concurrent-call restriction. It does not state whether the operation is destructive/reversible or whether it applies to a selection or the whole project, which are notable gaps for a processing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear headline, pipeline summary, parameter breakdown, and warnings. Each section adds actionable information, and there is no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the asynchronicity, monitoring path, pipeline behavior, both parameters, and an important input precondition. However, it omits what exactly the tool operates on (selection, track, or project), whether the change is destructive/undoable, and any details about how the job result is delivered beyond check_pipeline_status. Given no output schema, a bit more would make it fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for both parameters. It does: remove_noise is explained as applying noise reduction using the first 0.5s as a noise profile, and remove_silence as truncating long silences, with defaults included. It also adds an important prerequisite about room tone when remove_noise is True, which is critical for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'ONE-CLICK INTERVIEW CLEANUP' and specifies a light-touch processing pipeline for dialogue and multiple speakers, so the target resource and action are unambiguous. It further distinguishes itself from the podcast cleanup sibling by noting it is 'lighter than podcast — preserves natural conversation dynamics.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear operational guidance: it runs in the background, returns a job_id immediately, and should be monitored via check_pipeline_status. It also explicitly warns not to call it again if a pipeline is already running. It compares to the podcast tool, but does not fully address when to choose this over other related cleanup tools such as auto_cleanup_vocal or auto_cleanup_live.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_cleanup_liveA
ONE-CLICK LIVE RECORDING CLEANUP: Aggressive processing for noisy/field recordings. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor.
Pipeline: DC offset > HPF 100Hz > click removal > noise reduction 12dB > compression 5:1 > safe loudness check. Designed for live performances, field recordings, and noisy environments. Noise reduction is always on at 12dB — max safe level before artifacts appear.
IMPORTANT: The first 0.5 seconds MUST be room tone / ambient noise for noise profiling. DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It clearly discloses background execution, immediate job_id return, the exact pipeline stages, fixed 12dB noise reduction, and the room-tone precondition. It does not explicitly state whether the operation is destructive or what audio scope it affects, but it discloses more non-obvious behavior than most tool descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description front-loads a clear purpose, then uses a compact pipeline list and two important warnings. Each sentence earns its place; there is no filler. The slight repetition between 'noisy/field recordings' and 'field recordings, and noisy environments' is minor and does not detract from the structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the async behavior, job_id, monitoring via check_pipeline_status, the processing chain, the room-tone precondition, and the concurrency constraint. The main gap is that it never says what audio the cleanup applies to (current selection, track, or whole project) or whether the result is destructive/irreversible. Otherwise, the invocation contract is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema has an empty properties object, so there is no parameter-level meaning for the description to add. The room-tone requirement is an operational precondition rather than a parameter, which is useful context but keeps the no-parameter baseline at 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear one-liner: 'ONE-CLICK LIVE RECORDING CLEANUP: Aggressive processing for noisy/field recordings.' It names a specific verb, resource, and domain, and explicitly targets live performances, field recordings, and noisy environments, which distinguishes it from podcast, interview, and vocal sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use the tool ('Designed for live performances, field recordings, and noisy environments') and provides explicit when-not guidance: 'DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.' It also gives a hard prerequisite: the first 0.5 seconds must be room tone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_cleanup_podcastA
ONE-CLICK PODCAST CLEANUP: Professional broadcast-quality processing. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor. Safe for badly recorded audio — only reduces peaks if too hot, never boosts.
Pipeline: DC offset > HPF 80Hz > NR 12dB > compress 3:1 (30ms attack, 200ms release) > safe loudness check. Optional: noise reduction (on by default), silence truncation (off by default).
After the pipeline finishes, the user can manually apply LUFS normalization using the loudness_normalize tool if they want to hit a specific streaming target.
Args: remove_noise: Apply noise reduction using first 0.5s as noise profile. Default: True remove_silence: Truncate long silences/dead air. Default: False
IMPORTANT: If remove_noise is True, the first 0.5 seconds should be room tone / silence. DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
| remove_noise | No | ||
| remove_silence | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool runs in the background, returns a job_id, only reduces peaks if too hot (never boosts), and outlines the exact pipeline steps. It also warns about the noise profile requirement. Since there are no annotations, this description carries the full burden and handles it well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with headings and bullet-like lines, starting with a clear purpose. It includes necessary pipeline details and parameter explanations without excessive fluff, though it slightly repeats default values.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains the return value (job_id), how to monitor progress, and the overall workflow including the optional LUFS normalization. It sets expectations for the pipeline and parameter behavior, making it complete for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has two boolean parameters with no descriptions, but the description explains each parameter's meaning (remove_noise applies noise reduction using first 0.5s as noise profile, remove_silence truncates long silences) and their defaults. This adds meaningful semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as one-click podcast cleanup with professional broadcast-quality processing, and it specifies it returns a job_id and can be monitored via check_pipeline_status. This gives a specific verb and resource, distinguishing it from general cleanup tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs to use check_pipeline_status to monitor, warns not to call again if a pipeline is already running, and suggests using loudness_normalize if needed. It also notes it is safe for badly recorded audio, providing clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_cleanup_vocalA
ONE-CLICK VOCAL CLEANUP: Professional processing for singing and studio vocals. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor.
Pipeline: DC offset > HPF 100Hz > noise reduction 10dB > compression 3:1 > presence EQ > safe loudness check. Tuned for singing — presence boost for clarity, higher HPF for plosive removal.
Args: remove_noise: Apply noise reduction using first 0.5s as noise profile. Default: True
IMPORTANT: If remove_noise is True, the first 0.5 seconds should be room tone / silence. DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
| remove_noise | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses background execution, immediate job_id return, the complete processing pipeline, the 0.5s noise-profile requirement, and a concurrency guard. This is unusually transparent for a cleanup tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but well-organized: purpose first, then execution model, pipeline, parameter detail, and guardrails. Every sentence adds operational value, and the all-caps labels highlight the highest-signal constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one optional boolean parameter, no output schema, and no annotations, the description covers the return contract (job_id), monitoring path, parameter semantics, and concurrency rules. Nothing needed to make a correct first call is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains that remove_noise applies noise reduction using the first 0.5s as a noise profile, and the IMPORTANT note adds the precondition that those first 0.5 seconds should be room tone or silence when true. This is critical meaning not present in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'ONE-CLICK VOCAL CLEANUP: Professional processing for singing and studio vocals,' which is a specific verb and resource. 'Tuned for singing' distinguishes it from sibling cleanup tools like auto_cleanup_podcast or auto_cleanup_interview, so an agent can route correctly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly names check_pipeline_status for monitoring and warns 'DO NOT call this again if a pipeline is already running — use check_pipeline_status instead,' giving a clear when-not and alternative. 'Tuned for singing' also signals the intended use case versus other cleanup variants.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_lofi_effectA
CREATIVE LO-FI EFFECT: Apply a vintage/lo-fi sound to your audio. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor.
Pipeline: HPF > LPF > bass/treble warmth > compression 2:1 > safe loudness check Creates that warm, muffled, vintage sound by cutting highs and boosting low-mids.
Args: intensity: "light" (subtle warmth), "medium" (classic lo-fi), "heavy" (extreme tape sound). Default: "medium"
DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
| intensity | No | medium |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It discloses asynchronous behavior ('runs in background — returns a job_id immediately'), the processing pipeline, and a concurrency warning. However, it does not state whether the effect modifies the original audio in place, replaces it, or operates only on the current selection.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well organized: purpose, background behavior, pipeline, argument details, and a final warning. It is scannable and each section is useful, though there is some redundancy between the opening description and the later explanation of cutting highs and boosting low-mids.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-optional-parameter tool with no output schema, the description covers invocation, return value, monitoring pathway, concurrency constraints, and parameter semantics. Missing details are selection scope and what exactly happens after the job completes, but the reference to check_pipeline_status reduces the impact of that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only an unconstrained 'intensity' string with a default and no enum or description. The prose fully documents all accepted values ('light', 'medium', 'heavy'), their intended sonic character, and the default, completely compensating for the 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Apply a vintage/lo-fi sound to your audio' and names it a 'CREATIVE LO-FI EFFECT.' The pipeline details and audio character help distinguish it from sibling effect tools, though it does not explicitly contrast itself with similar effects like equalization or filtering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit operational guidance: 'Use check_pipeline_status to monitor' and 'DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.' This is a clear when-not with a named alternative, but it does not discuss when to prefer a different effect tool over this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auto_master_musicA
ONE-CLICK MUSIC MASTERING: Professionally master your music track with genre-tuned settings. Runs in background — returns a job_id immediately. Use check_pipeline_status to monitor.
Pipeline:
High-pass filter (remove sub-rumble)
Click removal (clean artifacts)
Noise reduction (optional, off by default for produced music)
Compression (genre-tuned, mastering-grade, no post-normalize)
Bass/treble sweetening (gentle, genre-tuned)
Safe loudness check (only reduces peaks if too hot, never boosts)
Args: style: Genre preset - "edm", "hiphop", "rock", "acoustic", "pop", "classical". Default: "edm" noise_reduce: Apply gentle noise reduction. Default: False DO NOT call this again if a pipeline is already running — use check_pipeline_status instead.
| Name | Required | Description | Default |
|---|---|---|---|
| style | No | edm | |
| noise_reduce | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It reveals async behavior, job_id returns, a six-step processing pipeline, noise reduction being off by default, no post-normalize, and loudness handling that only reduces peaks and never boosts.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose and async behavior are front-loaded, followed by a tight numbered pipeline, an Args block, and a final guardrail warning. Every sentence adds operational value with little to no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-optional-parameter async tool with no output schema, the description covers the full call contract: what happens, the processing order, parameter semantics, return behavior, and how to monitor or avoid duplicate calls. It is more than sufficient for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description fully compensates: style is documented with six concrete preset values and its default, and noise_reduce is explained as gentle noise reduction with default False. This adds real meaning the schema alone does not provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action—professionally master a music track—with genre-tuned settings, and the detailed pipeline makes it distinct from sibling cleanup, audiobook, and lofi tools. It goes well beyond restating the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells the agent to monitor with check_pipeline_status and warns not to call again while a pipeline is already running, naming the exact alternative. It also clarifies that this is a background, async operation rather than a synchronous one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_pipeline_statusA
Check the status of a running pipeline. Call this after starting any auto_ pipeline to monitor progress. Poll every 15-30 seconds.
Args: job_id: The job ID returned by any auto_ pipeline tool
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It adds useful guidance that this is a polling-style status check, but it does not describe what the status response contains, what statuses exist, or behavior for invalid or completed job IDs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences with no filler. Purpose is first, usage context follows, and the parameter note is minimal and relevant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple one-parameter status check and covers when to call it and how often. However, since there is no output schema, the absence of return-value or status-semantics information leaves an agent uncertain about how to interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema only provides the parameter name and type, while the description explains that job_id is 'returned by any auto_ pipeline tool'. This adds crucial provenance information beyond the schema and tells the agent where to obtain the value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks the status of a running pipeline and scopes it to 'any auto_ pipeline', so an agent understands the resource and action. It does not explicitly differentiate from the sibling check_transcription_status, but the 'auto_ pipeline' phrasing narrows the intended use enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use guidance: after starting any auto_ pipeline, and it recommends polling every 15-30 seconds. It does not state when not to use it or mention alternative status tools, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_transcription_statusA
[EXPERIMENTAL] Check the status of a running transcription job. Call this after starting transcribe_audio, transcribe_to_labels, or transcribe_to_file. Poll every 10-15 seconds until status is 'complete' or 'error'.
Args: job_id: The job ID returned when you started the transcription.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It discloses polling expectations and terminal statuses ('complete' or 'error'), which is useful. However, it does not describe the full response shape, behavior on invalid job IDs, or whether repeated calls are idempotent, leaving some ambiguity for a no-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and scannable: a label, a short usage direction, a polling instruction, and a one-line args section. Every sentence is functional, and the critical usage context is front-loaded. No filler or repetitive content exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter polling tool with no output schema, the description covers the essential workflow: when to call, how often to poll, and when to stop. It implies a status field with values 'complete' or 'error,' which is likely enough for an agent. It could be more complete by stating exact response fields or error behavior, but it is adequate for its simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does so by explaining that job_id is 'The job ID returned when you started the transcription,' which adds provenance and meaning beyond the bare schema property name. This is sufficient for the single required parameter, though a bit more detail on format or where to find it could push it higher.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Check the status of a running transcription job.' It also references the transcription-starting siblings, which clarifies its role in the workflow. However, it does not explicitly distinguish itself from check_pipeline_status or command_status, so it falls just short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear when-to-use guidance: 'Call this after starting transcribe_audio, transcribe_to_labels, or transcribe_to_file.' It also provides a polling cadence and termination conditions. It does not mention when not to use it or name alternatives, so it lacks the exclusionary guidance of a perfect score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
click_removalA
Remove clicks and pops from the selected audio (e.g. vinyl recordings).
Args: threshold: Click detection threshold (0-900). Higher = fewer clicks removed. Default: 200 spike_width: Maximum width of a click in samples (0-40). Default: 20
| Name | Required | Description | Default |
|---|---|---|---|
| threshold | No | ||
| spike_width | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full disclosure burden. It does state the operation and scoping ('from the selected audio') and explains how threshold and spike_width affect detection, but it does not disclose whether the edit is destructive, reversible, or whether a selection is strictly required before invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: one clear purpose sentence followed by a minimal, well-structured Args block. Every line provides useful information, with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter effect tool with no output schema or annotations, the description covers the operation, scope, parameter ranges, defaults, and parameter effects. It could be slightly more complete by noting what happens if no audio is selected or whether the operation modifies the clip in place, but as a simple effect it is largely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description fully compensates by explaining each parameter's meaning, valid range, and default: threshold (0-900, higher = fewer clicks removed) and spike_width (0-40, maximum click width). This goes well beyond the bare schema properties.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: 'Remove clicks and pops from the selected audio', which is clear and actionable. It also gives a helpful example context ('vinyl recordings'), though it does not explicitly distinguish itself from sibling repair/cleanup tools like effect_repair or auto_cleanup_audio.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when clicks or pops are present in selected audio, but it does not state when not to use it or compare it to alternatives. There is no explicit routing guidance among the many sibling cleanup/effect tools, so the usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compressorA
Apply dynamic range compression. Evens out volume differences.
For mastering, use ratio 1.5-2:1 with attack > 80ms to preserve transients. For podcasts/voice, use ratio 4-8:1 with use_peak=True for tighter control. Higher ratios (4:1+) and fast attacks are mixing tools, not mastering tools.
WARNING: normalize=True will re-peak your audio to 0 dB after compression, which can make loud audio even louder. Use loudness_normalize() instead for proper LUFS-based loudness control.
Args: threshold_db: Level above which compression starts (dB). Default: -12 noise_floor_db: Level below which audio is not boosted (dB). Default: -40 ratio: Compression ratio (e.g. 2.0 = 2:1). Default: 2.0 attack_time: How fast compressor engages (seconds). Default: 0.2 release_time: How fast compressor releases (seconds). Default: 1.0 normalize: Normalize to 0dB peak after compression. Default: False use_peak: Compress based on peaks instead of RMS (better for voice/podcast). Default: False
| Name | Required | Description | Default |
|---|---|---|---|
| ratio | No | ||
| use_peak | No | ||
| normalize | No | ||
| attack_time | No | ||
| release_time | No | ||
| threshold_db | No | ||
| noise_floor_db | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It explains each parameter's effect and includes a warning about normalize=True causing re-peaking. However, it does not explicitly state whether the tool modifies the selected audio in-place or returns a new file, but this is likely implicit for an effect tool. Overall, it is transparent about parameter impacts and pitfalls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with paragraphs and a bullet-like list of arguments, but it is somewhat verbose. It repeats the argument list that appears in the schema, though since the schema lacks descriptions, this repetition is justified. The usage guidance and warning are valuable, but the text could be tightened without losing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete for the tool's complexity. It covers purpose, usage scenarios, parameter semantics, and warnings. It explains when not to use it (mixing vs. mastering) and directs to an alternative (loudness_normalize). Given no output schema, no return value explanation is needed. Nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no descriptions (0% coverage), but the description text provides clear semantics for each parameter (e.g., 'threshold_db: Level above which compression starts (dB)'). It also explains the default values and gives examples (e.g., 'ratio: Compression ratio (e.g. 2.0 = 2:1)'). This fully compensates for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose: 'Apply dynamic range compression. Evens out volume differences.' This is specific and distinguishes it from related effects. It also provides usage scenarios (mastering vs. podcast) and warns against misuse, further clarifying its intended role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance on when to use the tool: 'For mastering, use ratio 1.5-2:1...' and 'For podcasts/voice, use ratio 4-8:1...'. It also explicitly contrasts with loudness_normalize: 'Use loudness_normalize() instead for proper LUFS-based loudness control.' This provides clear selection criteria among alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cursor_set_positionA
Move the cursor to a specific time position.
Args: time: Position in seconds
| Name | Required | Description | Default |
|---|---|---|---|
| time | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the responsibility for explaining behavior. It states the main effect (moves the cursor) but gives no information about side effects like selection, playback, or undo behavior. For a simple cursor-move this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: a clear front-loaded purpose statement and a brief parameter explanation. No redundancy. Every part contributes to correct invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one scalar parameter and no output schema, the description covers the core behavior and parameter meaning well enough for an agent to call it correctly. It does not cover alternatives or edge cases, but those are not essential for this simple operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the schema only says 'time' is a number. The description adds the critical unit: 'Position in seconds.' This meaningfully improves parameter understanding, though it does not specify the reference point (e.g., project start) or valid range.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and target: 'Move the cursor to a specific time position.' This is clearly distinct from relative cursor movements like raw_cursor_left/right or anchor-based moves like cursor_to_track_start, but it does not explicitly name a sibling to differentiate from.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'specific time position' implies this is for absolute positioning rather than relative navigation or preset positions, but the description does not explicitly state when to use this tool versus transport_set_cursor, cursor_to_rack_start, or raw_cursor_* alternatives. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cursor_to_project_endA
Move the cursor to the end of the project (last audio).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure and it does state the primary behavior: cursor movement to project end. It does not mention whether selection is cleared or playback is affected, but for a simple cursor command this is a minor gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence carries all the essential information with no filler. The parenthetical adds useful precision without bloating the description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter cursor navigation tool, the description is nearly complete. The only small ambiguity is what exactly 'last audio' means, but in an audio-project context this is a reasonable shorthand for the end of the final audio clip.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is fully covered at 100%, so there is nothing for the description to add about parameter meanings. Baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses a specific verb ('Move') and resource ('cursor') with an exact destination ('end of the project') and clarifies with '(last audio)'. This distinguishes it from sibling tools like cursor_to_track_end and cursor_to_project_start.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is clear in context: call this when the cursor should jump to the last audio in the project. It does not explicitly name alternatives or exclusions, but the project-vs-track distinction is evident from the tool name and sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cursor_to_project_startA
Move the cursor to the start of the project (time 0).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It only states the cursor's final position; it does not disclose side effects such as whether the selection is preserved, whether the view scrolls, whether it affects the undo stack, or whether it is a non-destructive read-only action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, efficient sentence with no redundant words. The core action and target are front-loaded, and the clarification '(time 0)' is immediately useful but not verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, parameterless cursor-movement tool, the description captures the essential behavior. It does not elaborate on side effects or return values, but given the low complexity and intuitive semantics, what is present is largely sufficient, with only the missing behavioral details noted above preventing a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters, the input schema is already complete and there is no need for parameter documentation. The description adds useful context by clarifying the exact project start coordinate ('time 0'), which aligns with the baseline 4 for parameterless tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Move') and resource ('cursor') with an explicit target ('start of the project (time 0)'). This clearly distinguishes it from sibling tools like cursor_to_project_end, cursor_to_track_start, and raw_cursor_left, and the parenthetical clarifies the exact coordinate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides no explicit guidance on when to use this tool versus alternatives, nor any mention of when not to use it. The name and sibling list hint at differentiation, but the description does not articulate conditions or exclusions, leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cursor_to_track_endA
Move the cursor to the end of the selected track.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It clearly states the core behavior of moving the cursor, which is positive, but it does not mention edge cases like having no selected track or whether the selection/playhead is preserved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, direct sentence fully communicates the action. There is no redundant wording or filler, and the essential target information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, parameterless cursor-movement command, the description is largely sufficient. It omits minor context such as behavior when no track is selected, but the core intent and outcome are clear given the low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema provides no semantic information to compensate for. The description adds the relevant semantic context by identifying the target location, which is sufficient for a parameterless command.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Move') and a clear target ('end of the selected track'). It distinguishes itself from sibling tools like cursor_to_track_start and cursor_to_project_end by stating the exact destination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives such as cursor_to_track_start or cursor_to_project_end. There is no explicit context, prerequisite, or exclusion, so the agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cursor_to_track_startA
Move the cursor to the start of the selected track.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It communicates the core action (moving the cursor to the track start) and specifies it applies to the 'selected' track, which is useful. However, it does not disclose any potential side effects (e.g., whether selection changes, playback position, or undo behavior). For a simple non-destructive action this is acceptable, but the description adds little beyond the name itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that gets straight to the point. It is front-loaded with the action and target, contains no filler, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters, no output schema, and a simple action, the description is largely complete. It specifies the target (start of selected track) and the operation. It does not discuss prerequisites or interactions with other tools, but given its low complexity, this is not a significant gap. It could be slightly more explicit about when to use it versus the similar cursor_to_track_end, but the name already differentiates.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description correctly does not attempt to describe any parameters, and the schema already confirms there are none. No additional information is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb ('move') and resource ('cursor to the start of the selected track'), which fully specifies the action. It distinguishes itself from siblings like cursor_to_track_end, cursor_to_project_start, and cursor_to_project_end by naming the exact destination. There is no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the action but provides no explicit guidance on when to use it versus alternatives. It implies usage when you want to jump the cursor to the start of the current track, but it does not mention exclusions or recommend alternatives such as cursor_to_track_end. The context is clear but lacks explicit differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_copyA
Copy the selected audio to clipboard. Select a region first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It clearly states that the selected audio is copied to the clipboard and implies the original is left intact, which is important for distinguishing copy from cut. It does not mention clipboard overwrite behavior, but that is reasonably implied by 'copy to clipboard.'
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short, efficient sentences. The main purpose is front-loaded, and the only added instruction ('Select a region first') is necessary and non-redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple zero-parameter operation with no output schema. The description states the action, the object, the destination, and the required precondition, which is sufficient for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is 100%, so there are no parameter semantics to clarify. The baseline of 4 applies because the description is not required to explain parameters that do not exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Copy') with a clear resource ('selected audio') and destination ('to clipboard'). It clearly distinguishes this from sibling tools like edit_cut and edit_paste by naming the copy action and its target.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite: 'Select a region first.' This tells the agent when the operation can be invoked, though it does not explicitly contrast it with related edit tools such as edit_cut or edit_paste.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_cutA
Cut the selected audio to clipboard. Select a region first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'Cut... to clipboard' conveys the core effect (removal and clipboard placement) and hints that a selection is needed. But it does not disclose what happens when no region is selected, that the previous clipboard contents are overwritten, or that the operation is destructive to the source.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, 11 words, zero fluff. The action sentence is front-loaded and the precondition follows naturally. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool this is mostly adequate: it states the action and the key prerequisite. The gaps are minor but real — no failure-mode behavior for a missing selection, no explicit differentiation from the very similar edit_copy, and no return/output expectations (though no output schema exists).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema is empty (0 parameters) with 100% coverage, so the baseline is 4 per the rubric. The description's 'Select a region first' usefully documents the implicit input — the current selection state — which is the de facto parameter of this tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (cut), resource (selected audio), and destination (clipboard). The phrase 'to clipboard' semantically distinguishes it from edit_delete (no clipboard) and edit_copy (leaves original intact), though it doesn't name those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a clear precondition — 'Select a region first.' — which tells the agent that a prior selection is required. However, it does not explicitly say when to prefer this tool over edit_copy or edit_delete, and no exclusions or alternative routing are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_deleteA
Delete the selected audio (does not copy to clipboard). Select a region first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It goes beyond the bare name by stating the clipboard behavior and the selection prerequisite. Still, it does not disclose whether the deletion is undoable or whether any project/undo context is affected, which would be relevant for a destructive edit operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences deliver the action, a key behavioral distinction, and the prerequisite with no filler. The main verb and resource are front-loaded in the first sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter edit command with no output schema, the description contains the essential information: what is deleted, that clipboard contents are not changed, and that a region selection is required. It leaves some safety context (undo behavior) implicit, but nothing required to invoke the tool correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and 100% schema description coverage, so there are no parameter details the description must add. Per the zero-parameter baseline, the description is adequate without explaining parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Delete the selected audio.' It also distinguishes itself from sibling copy/cut tools by explicitly stating 'does not copy to clipboard,' so an agent can tell edit_delete apart from edit_cut and edit_copy even without examining their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear precondition: 'Select a region first.' It also implies when this tool is appropriate rather than cut/copy by noting that it does not copy to clipboard. However, it does not explicitly name alternatives or state when to prefer a sibling like edit_split_delete or edit_cut.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_disjoinB
Split the selected audio at detected silences, creating separate clips.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden for behavioral disclosure. It states the core operation and result but does not mention whether the original audio is replaced, whether the operation is destructive or reversible, or how silence detection is configured. These are significant gaps for an editing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. Every word contributes to understanding the action and the result, and there is no redundant restating of the tool name or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-argument tool this is minimally complete: it identifies the selection target and the outcome. However, it omits routing guidance among the many split-related sibling tools and does not disclose the behavioral consequences of the operation, which leaves some context gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema description coverage is 100%, so there is no parameter detail for the description to add. The baseline of 4 applies here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: split the selected audio at detected silences, creating separate clips. It clearly communicates the operation and result, and somewhat distinguishes itself from silence-removal tools like truncate_silence, though it does not explicitly contrast with the edit_split sibling family.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'at detected silences' implies when this tool is appropriate, but it provides no explicit when-to-use guidance, exclusions, or alternatives. An agent would not know from this description when to choose edit_disjoin over edit_split, edit_split_new, or label_split_regions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_duplicateA
Duplicate the selected audio into a new track.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It does disclose the core behavior: a duplicate is created in a new track, implying the original is preserved. However, it does not state whether the selection is required, whether track properties like gain/pan/effects are copied, or whether the duplicate is independent of the source.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single seven-word sentence delivers the verb, target, and outcome with zero waste. Every word earns its place, and the key action verb is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with no annotations and no output schema, the description covers the essential outcome. Minor gaps remain — preconditions (selection required) and post-conditions (track position, copied attributes) — but these are small for such a simple action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and 100% schema description coverage, so there is nothing for the description to add about inputs. Per the baseline for parameterless tools, this is appropriately handled — the description itself becomes the sole behavioral specification.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Duplicate'), a concrete resource ('selected audio'), and a clear result ('into a new track'). This distinguishes it from close siblings like edit_copy (clipboard copy) and edit_split_new (splitting, not duplicating), so an agent can select it correctly without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of preconditions (e.g., a selection must exist), and no reference to alternatives such as edit_copy or track_mix_and_render_to_new. The description tells an agent what the tool does but leaves the selection decision entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_joinA
Join selected clips into one clip.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It states only the action and result, but does not disclose whether the operation is destructive, whether it can be undone, what happens with gaps or overlaps, or how it behaves if no clips are selected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is front-loaded with the core verb and resource. Every word adds meaning and there is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity, zero parameters, and no output schema, the description covers the essential invocation context: selected clips and the intended outcome. It does not explain edge cases, but the simple nature of the tool makes the description reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is no parameter documentation burden for the description. The baseline of 4 applies because the operation relies entirely on the current selection, which the description mentions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource combination: 'Join selected clips into one clip.' This clearly distinguishes it from the inverse operation edit_disjoin and related splitting tools like edit_split.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, no mention of selection prerequisites, and no exclusion of cases like a single selected clip or overlapping clips. The agent must infer the usage from the imperative phrase 'selected clips.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_pasteA
Paste audio from clipboard at the cursor position.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It merely states the action without explaining whether the paste inserts over existing audio, whether it requires a non-empty clipboard, or what side effects it has on the selection. This is a significant gap for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It conveys the action, the object, and the location efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple no-parameter tool, the description is largely sufficient to understand the operation. Minor gaps remain about insertion semantics and clipboard requirements, but given the simplicity of the tool, the current level is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the baseline is 4. The description adds value by clarifying that the operation uses the current cursor position as the insertion point, which is relevant implicit context even though it is not a formal parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Paste' with a clear resource ('audio from clipboard') and destination ('at the cursor position'), making it easy to distinguish from sibling tools like edit_copy and edit_split. No ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the use case: pasting clipboard audio at the cursor position. However, it offers no explicit guidance on when not to use this tool or how it compares to alternatives such as edit_copy or edit_split. The context is understandable but exclusions are not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_silenceB
Replace the selected audio with silence.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It conveys the core in-place mutation (audio is overwritten with silence) but omits important behavioral traits: whether the action is reversible, whether it affects all tracks or only selected tracks, what happens to the selection afterward, and whether it preserves duration. For a destructive edit operation, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with zero filler or repetition. It is efficiently worded, though it leans toward under-specification rather than rich conciseness; still, the structure itself is exemplary for what it covers.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no parameters, the tool operates in a crowded namespace of edit tools and performs a destructive mutation with no annotations or output schema to supplement the description. The one-line description does not resolve key ambiguities such as track scope, reversibility, or how it differs from edit_delete and truncate_silence, leaving the agent with incomplete information to invoke it appropriately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (0 parameters), so the 0-params baseline of 4 applies; there is no parameter information for the description to add. The description appropriately says nothing about arguments because none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('replace') and resource ('the selected audio'), with the 'with silence' qualifier making the result unmistakable and distinguishing it from deletion or trimming. It does not explicitly contrast with sibling tools like edit_delete or truncate_silence, so it falls short of a perfect score, but the core purpose is clearly conveyed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the many similar edit tools in the sibling list (edit_delete, edit_trim, edit_cut, truncate_silence, label_silence_regions). No context, exclusions, or alternatives are mentioned, leaving selection entirely to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_splitA
Split the clip at the cursor position or selection boundaries (in place, no new track).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose key behavioral traits: the operation happens in place and does not create a new track. It stops short of detailing undo behavior or selection after-effects, but for a zero-parameter edit command this is solid coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with no filler. The verb and target are front-loaded, and the parenthetical adds the key behavioral constraint efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter command with no output schema, the description supplies everything needed: operation, target, split points, and track behavior. There are no missing inputs or return-value expectations to clarify.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema confirms this, so there are no parameter semantics to document. The description appropriately adds no invented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('split'), a specific target ('the clip'), and precise split locations ('cursor position or selection boundaries'). The phrase 'in place, no new track' clearly distinguishes it from siblings like edit_split_new and edit_split_cut.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context for when this tool is appropriate: splitting at the cursor or selection. The 'no new track' clause is an implicit exclusion that contrasts with edit_split_new, though it does not name alternatives explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_split_cutA
Cut the selected audio without closing the gap (leaves silence where audio was).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations to rely on, the description carries the behavioral disclosure burden. It clearly states the key side effect: audio is cut but silence remains, so the gap is not closed. It does not mention clipboard behavior, which separates split-cut from split-delete, but the core destructive behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence states the action and the critical caveat in a parenthetical. Every word earns its place, and the key distinction is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, parameterless operation, the description is nearly complete: it identifies the target and the resulting timeline state. The only minor gap is that it does not explicitly state whether the cut audio is placed on the clipboard, which matters when distinguishing from edit_split_delete or when preparing to paste.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the description has no parameter meaning to add. The baseline for a parameterless tool is 4, and no further parameter documentation is needed for an agent to invoke it correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Cut'), a resource ('selected audio'), and the defining behavior ('without closing the gap... leaves silence where audio was'). This clearly distinguishes it from siblings like edit_cut and edit_delete that would close the gap or remove time.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context clear: use this when you want selected audio removed but the timeline position preserved as silence. It does not explicitly name alternatives or exclusions, but the condition 'without closing the gap' is sufficient guidance for choosing among the split/edit siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_split_deleteA
Delete the selected audio without closing the gap (leaves silence where audio was).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral disclosure. It transparently states that the operation deletes audio and leaves silence, which is the key behavioral trait. It does not mention undo or other side effects, but the destructive nature is evident from 'Delete', and the silence behavior is clearly disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the core action ('Delete the selected audio') and immediately clarifies the distinguishing detail. There is zero fluff and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description fully explains the operation's effect on the selected audio. It is complete enough for an agent to understand exactly what will happen when the tool is invoked.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is 100% (since there are no properties). Per the baseline for 0-parameter tools, the description need not add parameter semantics, and it appropriately does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Delete' and the resource 'the selected audio', and explicitly distinguishes the behavior by noting it does not close the gap but leaves silence. This clearly differentiates it from sibling tools like edit_delete or edit_cut, which likely close the gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the intended use case (when silence should remain after deletion) but does not explicitly name alternatives or provide when-not-to-use guidance. An agent can infer usage, but explicit routing to siblings like edit_delete is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_split_newA
Split the selected audio into a new track at the selection boundaries.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must explain side effects, but it is ambiguous whether the original audio is preserved or removed, and whether multiple tracks are created. It only says 'a new track' without clarifying the exact split behavior or how the selection is affected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no unnecessary words, making it easy to parse and understand.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is sufficient for a simple tool, but it does not mention prerequisites like having an active selection or how it handles multiple tracks. For such a straightforward operation, the description is mostly complete, though a note on distinctions from similar tools would enhance usability.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and the description correctly relies on the current selection with no need for input. Since the schema already covers the absence of parameters, the description adds no additional requirements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (split), the target (selected audio), and the outcome (a new track at selection boundaries). It effectively distinguishes this tool from siblings like edit_split or edit_split_cut by specifying the creation of a new track.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly compare with sibling tools like edit_split or edit_split_cut. While the phrase 'into a new track' implies a distinct behavior, it does not state when to prefer this tool over the others, leaving the choice to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_trimA
Trim audio outside the selection (delete everything except selected region).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. The parenthetical 'delete everything except selected region' explicitly communicates the destructive effect, leaving no ambiguity that this tool removes audio. It could add more context about prerequisites such as requiring an active selection, but the core behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one tight, front-loaded sentence. The parenthetical adds immediate clarity without redundancy or filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description is nearly complete: it states the operation and its result. It only omits an explicit mention that a selection must already exist, but this is strongly implied by the wording and the tool name.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there are no parameter semantics to document. The standalone baseline for zero-parameter tools applies, and the description does not need to compensate for any schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Trim') and resource ('audio outside the selection') and clarifies the exact behavior in parentheses: 'delete everything except selected region.' This clearly distinguishes it from sibling tools like edit_cut or edit_delete, which target the selected region rather than everything outside it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: when a selection exists and the user wants to keep only that selected region while discarding all other audio. It does not explicitly name alternatives or exclusions, but the behavior is specific enough that an agent can infer the correct usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_adjustable_fadeB
Apply an adjustable fade with curve control.
Args: fade_type: 0=fade up (in), 1=fade down (out). Default: 0 curve: Curve shape (0=linear, positive=exponential, negative=logarithmic). Default: 0
| Name | Required | Description | Default |
|---|---|---|---|
| curve | No | ||
| fade_type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It communicates that this is an effect application, but does not disclose whether the operation is destructive, whether it requires a selection, whether it is undoable, or what happens when no audio is selected. Parameter semantics are useful but are not behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the one-sentence purpose, and uses a clear Args block. Every sentence contributes either purpose or parameter meaning, with no filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-optional-parameter effect, the parameter documentation is adequate. However, the description omits the operational context: what the effect applies to, any preconditions, and what consequences or errors may result. This is a moderate gap, especially with no annotations or output schema to fill it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, and it does by explaining both parameters: fade_type maps 0/1 to fade up/down and curve maps 0/positive/negative to linear/exponential/logarithmic. The curve explanation is somewhat coarse, but it adds real meaning beyond the bare schema titles and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Apply') and resource ('an adjustable fade'), with 'curve control' signaling a distinct capability beyond simple fade-in/out siblings. It does not explicitly name sibling alternatives, but the wording and parameter hints differentiate it from tools like effect_fade_in and effect_fade_out.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is only implied by 'adjustable fade' and 'curve control'; an agent can infer it is for custom fades rather than fixed ones. However, the description does not explicitly say when to choose this vs effect_fade_in, effect_fade_out, or effect_studio_fade_out, and it offers no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_amplifyA
Amplify the selected audio by a ratio. Select audio first.
Args: ratio: Amplification ratio (e.g. 1.5 = 150%, 0.5 = 50%). Must be > 0. Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| ratio | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It says 'Amplify the selected audio' but does not disclose whether the original audio is modified in place, whether the operation is undoable, or what happens if there is no selection. That is a significant transparency gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the action and selection prerequisite appear first, followed by a terse Args block. Every sentence contributes meaning with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter audio effect, the description covers the operation, the selection prerequisite, and the full ratio semantics. It does not explicitly state the return value or confirmation behavior, but the absence of an output schema makes that a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only lists a number with a default, while the description explains the ratio semantics with examples, the 'Must be > 0' constraint, and the default. This fully compensates for the 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description opens with a specific verb and resource: 'Amplify the selected audio by a ratio.' This clearly states what the tool does and distinguishes it from sibling effects like fade, reverb, or normalize.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit prerequisite: 'Select audio first.' This is clear context for proper use. It does not, however, name alternative effects or say when not to use it, so it stops short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_auto_duckA
Auto Duck: automatically reduce volume when audio is detected on another track. Place the control track (e.g. narration) above the track to duck (e.g. music). Select the track to duck before running.
Args: duck_amount_db: How much to reduce volume in dB (-24 to 0). Default: -12 inner_fade_down_len: Inner fade down length in seconds (>= 0). Default: 0 inner_fade_up_len: Inner fade up length in seconds (>= 0). Default: 0 outer_fade_down_len: Outer fade down length in seconds (>= 0). Default: 0.5 outer_fade_up_len: Outer fade up length in seconds (>= 0). Default: 0.5 threshold_db: Threshold for duck trigger in dB (-100 to 0). Default: -30 maximum_pause: Maximum pause between ducking regions in seconds (>= 0). Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| threshold_db | No | ||
| maximum_pause | No | ||
| duck_amount_db | No | ||
| inner_fade_up_len | No | ||
| outer_fade_up_len | No | ||
| inner_fade_down_len | No | ||
| outer_fade_down_len | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral burden. It discloses the trigger mechanism, control-track placement, and selection requirement, but it does not state whether the effect is destructive/undoable, how the control track is treated, or what the resulting output will be.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-organized: purpose, setup steps, then a single Args block. It front-loads the core behavior, avoids redundant prose, and every line contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter optional effect with no annotations or output schema, the description covers the core operation, all parameter semantics, and required setup. The main gap is the lack of detail about reversibility and the exact scope of modification (track vs. clip), which leaves a small but non-fatal ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All seven parameters are documented in the Args block with meanings, ranges, and defaults, fully compensating for the 0% schema description coverage. For example, threshold_db is explained as 'Threshold for duck trigger in dB (-100 to 0)' rather than being left as a bare numeric property.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'automatically reduce volume when audio is detected on another track.' This clearly identifies the sidechain-ducking behavior and separates it from other effect tools like amplify or fade without requiring schema inspection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides concrete usage context: place the control track above the track to duck and select the target track before running. It does not explicitly name alternatives or when-not conditions, but the intended use case is clear enough for an agent to select this tool over sibling effects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_bass_and_trebleA
Adjust bass and treble frequencies with a simple tonal shaping tool.
Args: bass: Bass adjustment in dB (-30 to 30). Default: 0 treble: Treble adjustment in dB (-30 to 30). Default: 0 gain: Output gain in dB (-30 to 30). Default: 0
| Name | Required | Description | Default |
|---|---|---|---|
| bass | No | ||
| gain | No | ||
| treble | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only restates what the tool does and lists parameters. It does not state whether the effect is destructive, whether it applies to the current selection, how the gain interacts with the other parameters, or what happens when all values are left at their defaults.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: a one-sentence purpose followed by a clean argument list. It avoids unnecessary prose, though the phrase 'simple tonal shaping tool' adds only modest value and the argument list partially mirrors the schema field names.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The parameters are fully documented, which is the most critical information for calling the tool. However, with no annotations and no output schema, the description is thin on how the effect behaves in context, such as whether it applies to selected audio, whether it can be undone, or what the tool returns.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero descriptions for its parameters, so the Args block is the only source of semantic meaning. It fully documents all three parameters with dB ranges, defaults, and clarifies that gain is output gain, which is valuable beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence, 'Adjust bass and treble frequencies with a simple tonal shaping tool,' clearly names the action and target. It is distinguishable from more complex siblings like effect_equalization by the word 'simple', though it does not explicitly name the alternative it competes with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit when-to-use or when-not-to-use guidance. The phrase 'simple tonal shaping tool' weakly implies it is for basic bass/treble adjustments rather than full equalization, but no alternative is named and no exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_change_pitchA
Change the pitch of the selected audio without changing tempo.
Args: semitones: Number of semitones to shift (negative = lower, positive = higher)
| Name | Required | Description | Default |
|---|---|---|---|
| semitones | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does convey useful behavior: it targets 'selected audio' and guarantees tempo preservation, and explains semitone sign. However, it omits whether the effect is destructive/undoable or whether a selection is strictly required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences plus a clean Args block. No filler, and the core purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter effect tool, it explains the action, the parameter, and the scope ('selected audio'). It lacks notes on prerequisites or return behavior, but no output schema is expected and the calling contract is otherwise clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description fully compensates by giving units ('semitones'), sign semantics ('negative = lower, positive = higher'), and hence the meaning of the default 0. This adds real value beyond the bare schema title.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Change the pitch of the selected audio' and adds the distinguishing constraint 'without changing tempo.' This clearly separates it from siblings like effect_change_tempo and effect_change_speed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Without changing tempo' gives clear context for when to choose this tool over tempo/speed alternatives, even though no sibling name is explicitly mentioned and there is no when-not-to-use statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_change_speedA
Change speed of the selected audio (changes both tempo and pitch together).
Args: percent: Percentage change (-99 to 4900, e.g. 100 = double speed)
| Name | Required | Description | Default |
|---|---|---|---|
| percent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It usefully discloses that speed changes tempo and pitch together and provides the percent range and example, but it does not state whether the operation is destructive, requires a selection, or is undoable, leaving some behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the core behavior is stated in the first sentence, and the parameter explanation is minimal but complete. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter effect tool this is nearly complete, but it lacks usage differentiation from closely related siblings and any safety/undo guidance despite having no annotations. The core information needed to invoke the tool is present, though.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% parameter description coverage, so the 'Args: percent' section is essential. It provides the valid range (-99 to 4900) and a concrete example (100 = double speed), fully clarifying the parameter's meaning beyond the bare schema definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening clause names a specific action and resource — change speed of selected audio — and explicitly clarifies that both tempo and pitch change together, which distinguishes it from sibling tools like effect_change_pitch and effect_change_tempo.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to prefer this tool over effect_change_tempo or effect_change_pitch, nor when not to use it. The phrase 'selected audio' implies a precondition, but there is no explicit when/when-not or alternative-selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_change_tempoB
Change the tempo of the selected audio without changing pitch.
Args: percent: Percentage change (-95 to 3000, e.g. 50 = 50% faster, -25 = 25% slower)
| Name | Required | Description | Default |
|---|---|---|---|
| percent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that pitch is preserved (a key behavioral trait) and gives percent range semantics. However, it doesn't disclose that altering tempo changes the duration of audio, whether the operation is destructive to the original clip, whether it affects clip boundaries or waveform data, or how it handles selections vs. whole clips. For an effect that modifies audio, this is a significant transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact: one title line plus one parameter explanation. The key behavioral point (without changing pitch) is front-loaded in the first sentence. The Args section is terse and useful. Minor credit loss because the title/tool name and description overlap, and 'without changing pitch' is the only behavioral context beyond the parameter spec.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter effect tool, the description handles the parameter semantics well and states the core behavior. But it lacks any context about what the operation does to the audio file (duration change, destructuring), what the user should expect, or how to undo/revert. Given there's no output schema and no annotations, an agent has to infer side effects. The presence of sibling effect_change_speed and effect_change_pitch suggests this tool needs more differentiation to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has only one param 'percent' with default 0 and 0% coverage, so description must compensate. It does: explains percent is a percentage change, gives a valid range (-95 to 3000), and provides concrete examples for both positive and negative values. This adds substantial meaning beyond the bare schema. It doesn't clarify whether 0 means no change or is invalid, but the range and examples largely compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool changes tempo of selected audio while preserving pitch, using a specific verb ('Change') and resource ('tempo of the selected audio'). It is well-differentiated from siblings like effect_change_pitch and effect_change_speed by explicitly noting pitch is preserved. However, it doesn't explicitly contrast with effect_change_speed, which also changes tempo-like timing, so a very minor distinction gap exists.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage on selected audio ('Change the tempo of the selected audio'), so an agent knows selection is a prerequisite. It provides percent semantics with examples, but doesn't explicitly state when to prefer this over effect_change_speed or effect_change_pitch, nor does it describe what qualifies as selected audio or how selection is made. The implied usage is adequate but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_clip_fixA
Attempt to repair clipped (distorted) audio by reconstructing peaks.
Args: threshold: Clipping threshold as percentage of max amplitude (0-100). Default: 95
| Name | Required | Description | Default |
|---|---|---|---|
| threshold | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral transparency itself. It discloses the operation and reconstruction approach, but does not state that the effect modifies the selected audio in place, whether it is destructive, or how it handles borderline clipping. The word 'Attempt' does signal heuristic behavior, but key application context is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tightly scoped parts: a one-sentence purpose followed by an Args block. No filler or repeated schema information, and the main behavior is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter effect with no output schema, the description is mostly sufficient to call it; threshold semantics are fully specified. The main missing piece is the application context (selected audio) and a hint to detect clipping first, which would help an autonomous agent sequence it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds real meaning to threshold: it defines it as a percentage of max amplitude, gives a 0-100 range, and restates the default. The schema only provides a type and default, so this is a substantial addition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('repair'), names the target resource ('clipped audio'), and explains the method ('reconstructing peaks'). This clearly differentiates it from generic siblings like effect_repair.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to apply this tool versus alternatives such as effect_repair or analyze_find_clipping. The context of an active selection or prerequisite is not mentioned, so an agent must infer usage from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_crossfade_clipsA
Crossfade between two adjacent clips on the same track. Select the junction point between two clips first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of explaining behavior. It clearly states the state-dependent requirement (selecting the junction point) and the scope (same track, adjacent clips), but it does not disclose reversibility, failure conditions, or what happens to the clips beyond the crossfade.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, no filler, and the most essential information is front-loaded: the action in the first sentence and the prerequisite in the second. Every word contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, output-schema-less effect command, the description provides the action, object constraints, and required selection state. It lacks only a brief note on selection validity or failure behavior, which keeps it from being fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero input-schema parameters, and the description compensates by documenting the real implicit input: the selected junction point between two adjacent clips. This is exactly the semantically important state an agent needs to invoke the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the exact verb ('Crossfade'), the resource ('clips'), and the constraints ('adjacent clips on the same track'). This clearly distinguishes it from siblings like effect_crossfade_tracks or individual fade effects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It communicates when the tool is applicable: only for two adjacent clips on the same track, and provides a concrete precondition ('Select the junction point between two clips first'). It does not explicitly name alternative tools or exclusions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_crossfade_tracksA
Crossfade between two overlapping tracks. Align the tracks so they overlap, select both, then run this effect.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose prerequisites (overlap and selection) and the nature of the operation (crossfade). However, it does not state whether the effect modifies the original tracks destructively, whether it is undoable, or what happens to the selection afterward. The steps add useful behavioral context but leave the safety/impact profile unclear, which is typical for an effect tool without annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with no filler. The purpose is front-loaded, followed by actionable steps. Every word contributes meaning, making it highly efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has no parameters, no output schema, and minimal complexity, the description covers the essential invocation details: what it does and how to prepare for it. It could optionally mention the relationship to effect_crossfade_clips or clarify that the crossfade replaces the overlapping section, but these are minor omissions. The description is adequately complete for an agent to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is already fully covered (100% coverage with an empty properties object). Per the rubric, a tool with no parameters gets a baseline of 4. The description adds no parameter-specific detail because none exists, which is appropriate; the baseline holds.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (crossfade) and the resource (two overlapping tracks), with a specific verb-noun pairing. It naturally distinguishes itself from the sibling effect_crossfade_clips by specifying 'tracks' rather than clips, so an agent can tell them apart without inspecting schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage steps: align tracks to overlap, select both, then run. This establishes the precondition and the exact invocation sequence, but does not explicitly mention exclusions or alternatives (e.g., when not to use, or that effect_crossfade_clips exists). Since it gives clear context without exclusion, it earns a 4, not a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_distortionB
Apply distortion effect to the selected audio.
Args: distortion_type: Type of distortion. Default: "Hard Clipping" threshold_db: Distortion threshold in dB (-100 to 0). Default: -6.0
| Name | Required | Description | Default |
|---|---|---|---|
| threshold_db | No | ||
| distortion_type | No | Hard Clipping |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only says it applies a distortion effect. It does not explain whether the operation modifies audio destructively, requires a selection, affects the whole project, or can be undone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the main action, followed by a compact parameter list. It repeats defaults already present in the schema, but overall it contains no unnecessary fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations and no output schema, the description is too sparse to fully support correct invocation. It omits accepted distortion_type values, does not clarify selection prerequisites, and provides no behavioral or return information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the parameter documentation in the description matters. It usefully adds the dB range for threshold_db and restates defaults, but distortion_type is only described as 'Type of distortion' with no accepted values beyond the default, leaving a meaningful gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear action and resource: 'Apply distortion effect to the selected audio.' This identifies the tool's function precisely and distinguishes it from effect_amplify, effect_reverb, and other effect siblings by name. It is clear but does not explicitly contrast itself with sibling effects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'to the selected audio' implies that the tool should be used when a distortion effect is desired on an active audio selection. However, there is no explicit guidance about when not to use it, what alternatives exist, or what prerequisites apply.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_echoB
Apply echo effect to the selected audio.
Args: delay: Delay time in seconds. Default: 0.5 decay: Decay factor (0-1, lower = faster decay). Default: 0.5
| Name | Required | Description | Default |
|---|---|---|---|
| decay | No | ||
| delay | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It states that the effect is applied to selected audio, but it does not disclose whether the operation is destructive/undoable, whether a selection is required, or what happens if no audio is selected. These are important side effects for a mutation-style audio tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded with the purpose. The parameter documentation is compact and directly useful, with no filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter effect tool, the core invocation details are present: what it does and what the parameters mean. However, with no annotations and no output schema, it should also mention whether the modification is in-place/destructive and whether an audio selection is required. These are clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description fully compensates for the 0% schema description coverage. It explains that 'delay' is in seconds and gives a default, and it defines 'decay' as a 0-1 factor with the interpretation 'lower = faster decay'. This adds meaningful semantics beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Apply echo effect') and target ('selected audio'), clearly identifying the tool's function. It is distinct from obvious siblings like effect_reverb by naming 'echo', but it does not explicitly differentiate itself from related effects such as echo/reverb/repeat.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to use this tool versus alternatives like effect_reverb or effect_repeat. It implies use when an echo effect is needed, but it does not state any exclusions, prerequisites, or preferred contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_equalizationC
Apply EQ curve to the selected audio.
Args: curve_name: Name of the EQ preset curve. Default: "Default" length: Filter length (odd number, 21-8191). Default: 4001
| Name | Required | Description | Default |
|---|---|---|---|
| length | No | ||
| curve_name | No | Default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden of behavioral disclosure. It only says 'apply EQ curve' – a mutation – but doesn't mention whether it's destructive, whether a selection is required, whether it affects the entire clip, or describe any side effects. This is a significant omission for a processing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very brief, but the brevity comes from under-specification rather than efficiency. It front-loads the purpose but repeats parameter defaults that are already in the schema, and lacks substance. No unnecessary verbosity, but also no valuable detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations and no output schema, the description fails to cover important context: what happens if no audio is selected, what curve presets are available, how the filter length affects sound, and whether the operation is undoable. An agent would have to guess before invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description adds meaning for both parameters: length is specified as an odd number in range 21–8191, and curve_name is identified as a preset name. However, it doesn't list valid curve names or explain how length affects the result. Partial compensation but not complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Apply') and target ('EQ curve' to selected audio). It distinguishes from other effects like high-pass/low-pass filters by naming 'EQ curve' specifically, though it doesn't explicitly contrast with sibling tools like raw_graphic_eq.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool vs alternatives. It doesn't mention any context, prerequisites, or that it should be used instead of other EQ-related tools. The description is entirely silent on usage conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_fade_inA
Apply a fade-in to the selected audio. Select the region to fade first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure. It communicates that the tool mutates audio by applying a fade-in and requires a selection, but it does not mention reversibility, whether the original audio is replaced, or any default fade behavior. These gaps are modest for a well-known effect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, each earning its place: one states the operation, the other states the required precondition. No redundant wording or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless audio effect with no output schema, this is complete. It explains what happens, what scope is affected, and what must be done first. There is no missing information an agent needs to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the description does not need to document anything beyond the operation itself. The baseline of 4 applies here since there are no parameters whose meaning could be clarified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Apply a fade-in') and resource ('selected audio'), making the tool's purpose unmistakable. It also distinguishes this from related effect tools by naming the exact operation rather than a generic 'apply effect' phrase.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear operational context: the user must select the audio region before invoking the tool. It does not explicitly name alternatives like effect_fade_out or effect_adjustable_fade, but the prerequisite is enough to tell the agent when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_fade_outA
Apply a fade-out to the selected audio. Select the region to fade first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It states that the tool applies a fade-out and requires a selection, but it does not mention whether the operation is destructive, reversible, or what actually happens to the audio beyond 'fade-out.' For a mutation tool, this leaves important behavior undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: one states the action, one states the required precondition. There is no filler, and the essential usage requirement is included.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description is mostly complete: it says what the tool does and what must be done first. It lacks explicit safety or reversibility guidance, but the operation is simple enough that this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has no parameters, so there is nothing for the schema to document. The description appropriately refers to the selection prerequisite instead, which is the meaningful input the agent needs to understand.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action and resource: 'Apply a fade-out to the selected audio.' It distinguishes the tool from fade-in by direction, though it does not explicitly differentiate it from similar sibling tools like effect_studio_fade_out or effect_adjustable_fade.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit prerequisite: 'Select the region to fade first.' This gives usable context for when to use the tool, but it does not mention alternatives, when not to use it, or how it compares to other fade-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_high_pass_filterA
Apply a high-pass filter to remove low frequencies below the cutoff. Essential as step 1 in mastering chains to remove sub-rumble.
Args: frequency: Cutoff frequency in Hz. Default: 40 (removes sub-bass rumble) rolloff: Rolloff steepness - "dB6" (6 dB/octave) or "dB12" (12 dB/octave). Default: "dB12"
| Name | Required | Description | Default |
|---|---|---|---|
| rolloff | No | dB12 | |
| frequency | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the core effect (removes low frequencies) and parameter defaults, but does not mention whether it applies to the current selection, if it is destructive/irreversible, or any side effects. The description adds some behavioral context but lacks explicit statements about the operation's scope and reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with a short purpose statement, a usage hint, and a clearly formatted args list. Every sentence serves a purpose, and the most important information (function) is front-loaded. No fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 2 parameters and no output schema, the description provides enough to select and invoke it correctly: it explains the effect, the usage context, and each parameter with defaults. The only missing piece is an explicit statement about the audio selection scope (e.g., applies to selected audio), which is likely implied by it being an effect. Overall, it's complete enough for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must fully explain parameters. It does: frequency is in Hz with a default of 40 and explains its purpose (sub-bass rumble removal); rolloff options are enumerated ('dB6' and 'dB12') with meaning (6 dB/octave vs 12 dB/octave). This adds substantial meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (apply) on a specific resource (high-pass filter) and explains its function (removing low frequencies below a cutoff). It clearly distinguishes from the sibling low-pass filter by mentioning 'high-pass' and the direction of frequency removal. Explicit and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit context: 'Essential as step 1 in mastering chains to remove sub-rumble.' This tells the agent when to use it (mastering, sub-rumble removal). It does not mention alternatives or when not to use, but the guidance is clear enough for selection among effects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_invertA
Invert (flip phase) the selected audio. Useful for phase cancellation.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the transformation (phase inversion) but does not disclose whether the operation is destructive, whether the selected audio is replaced, whether undo is available, or what the success/return behavior is. For a mutation tool, this is a meaningful gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler. The operation is front-loaded in the first sentence, and the practical use case is added in the second. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter effect tool, the description is mostly complete: it says what the tool does and when it is useful. The main gap is the lack of any mention of result or side-effect behavior, which is more noticeable because there is no output schema to fill that in.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description implicitly identifies the operand as 'the selected audio,' which is the only contextual detail needed. No parameter documentation is required beyond this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Invert (flip phase) the selected audio.' The parenthetical 'flip phase' disambiguates from sibling tools like effect_reverse, which reverses time rather than polarity. It clearly identifies the operation and object.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear use context: 'Useful for phase cancellation.' This implies when an agent should consider using the tool, though it does not explicitly mention alternatives or when not to use it. There is enough context to route correctly among the many effect siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_low_pass_filterB
Apply a low-pass filter to remove high frequencies above the cutoff.
Args: frequency: Cutoff frequency in Hz. Default: 20000 rolloff: Rolloff steepness - "dB6" (6 dB/octave) or "dB12" (12 dB/octave). Default: "dB6"
| Name | Required | Description | Default |
|---|---|---|---|
| rolloff | No | dB6 | |
| frequency | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description gives basic function but omits key behavioral details: it does not mention whether the effect modifies the selected audio destructively, whether it applies to the current selection or entire track, or any side effects. With no annotations, these missing details leave the agent uncertain about the operation's impact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is succinct and well-structured, with a single purpose sentence followed by clear parameter explanations and defaults. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core function and parameters, but lacks context about the scope of the effect (e.g., applies to selected audio) and does not mention any output or return value. For a simple filter this is adequate, but an agent might need to infer how it integrates with the editing workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains both parameters: frequency is the cutoff in Hz, and rolloff is the steepness with specified allowed values, including defaults. This adds meaning beyond the bare parameter names, though it does not elaborate on how these values affect sound quality or the filter's response.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Apply') and resource ('low-pass filter'), and the purpose is unambiguous: it removes high frequencies above a cutoff. This distinguishes it from other effects like high-pass filters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., when a low-pass filter is preferred over high-pass or equalization). The description merely states what it does without indicating typical use cases or scenarios where it should be avoided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_notch_filterA
Remove a specific frequency (e.g. 50/60Hz hum) with a notch filter.
Args: frequency: Center frequency to remove in Hz. Default: 60 (US mains hum) q: Q factor / sharpness of the notch (0.1-20). Higher = narrower notch. Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| frequency | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must convey behavior. It explains parameters and defaults but does not mention whether the effect is destructive, applies to selection only, or whether it's undoable. Significant gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the purpose and then detail parameters with defaults. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Does not mention selection context (e.g., applies to selected audio) or any output, but for a simple effect this may be implicitly understood. Lacks a bit of practical workflow guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains both parameters beyond the schema: frequency is the center frequency, q is sharpness with a note that higher values give narrower notches. This adds meaningful context and covers the entire parameter set.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Remove' and the resource 'specific frequency' using a notch filter, with a concrete example (50/60Hz hum). This distinguishes it from other effects like equalization or high-pass filters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an example use case (removing mains hum) which implies when to use, but does not explicitly mention alternatives or when not to use, leaving some ambiguity relative to sibling effects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_paulstretchA
Extreme time-stretch effect (creates ambient/drone textures). Select audio first.
Args: stretch_factor: How much to stretch (1.0 = no change, 10.0 = 10x longer). Default: 10.0 time_resolution: Time resolution in seconds (smaller = better quality, slower). Default: 0.25
| Name | Required | Description | Default |
|---|---|---|---|
| stretch_factor | No | ||
| time_resolution | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose whether the effect is destructive, reversible, or how it modifies the audio beyond stretching. It lacks details about side effects, output behavior, or safety, which is a significant gap for an audio processing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, using a clear header and a parameter list. It provides essential information without unnecessary verbosity, making it easy to parse and understand.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
It includes the prerequisite of selecting audio, but does not specify the scope (e.g., selection vs. whole track), output behavior, or how it interacts with the project. Lacks details on whether the processing is reversible or if there are any side effects on surrounding audio.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are well explained: stretch_factor is described as the amount of stretch with a default of 10, and time_resolution is explained as affecting quality and speed, with a default. This adds meaningful context beyond the schema's title and default values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is an 'extreme time-stretch effect' that 'creates ambient/drone textures,' which is a specific and distinctive function. It is distinct from other effects like change_tempo or change_speed, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides a prerequisite ('Select audio first') and parameter explanations, but does not explicitly contrast with alternative effects. There is no guidance on when to prefer this over other time-stretching or modulation effects, leaving some ambiguity in tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_phaserB
Apply phaser effect to the selected audio.
Args: stages: Number of phaser stages (2-24, even only). Default: 2 dry_wet: Dry/wet mix (0=dry, 255=wet). Default: 128 frequency: LFO frequency in Hz (0.01-40). Default: 0.4 phase: LFO start phase in degrees (0-360). Default: 0 depth: Modulation depth (0-255). Default: 100 feedback: Feedback percentage (-100 to 100). Default: 0
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | ||
| phase | No | ||
| stages | No | ||
| dry_wet | No | ||
| feedback | No | ||
| frequency | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It documents parameter defaults and ranges but does not state that applying the effect modifies the selected audio in place, whether the operation is destructive/undoable, or any processing side effects. 'Apply ... to the selected audio' only weakly implies the behavioral impact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded one-sentence purpose followed by a clean, aligned argument list. Each line carries unique semantic information (range, unit, constraint, default) with no filler. The list is lengthy but justified by the six-parameter signature.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The main invocation complexity — six optional parameters — is fully documented, which is substantial. However, with no annotations or output schema to fill gaps, the description omits behavioral context (in-place modification, undo behavior) and usage context (when to pick this effect over alternatives). Adequate for parameter entry but incomplete for confident tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by giving every parameter meaningful semantics: ranges (2-24 even-only, 0.01-40, -100 to 100), endpoint meanings (0=dry, 255=wet), units (Hz, degrees, percent), and defaults for all six parameters. This far exceeds the bare titles and defaults in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — 'Apply phaser effect to the selected audio' — making the tool's function immediately clear. The target scope ('selected audio') is useful, and the effect type distinguishes it from sibling effect_* tools. However, it relies on the tool name for the exact effect identity and does not elaborate beyond a single clause.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides no guidance on when to use this tool versus alternatives such as effect_wahwah, effect_tremolo, or effect_distortion. No prerequisites are mentioned (e.g., that audio must be selected first). The agent must infer usage purely from the tool name and generic effect categories.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_repairA
Repair a very short damaged section of audio (max 128 samples). Select the damaged region first — must be extremely short. Audacity will show an error popup if the selection is too long.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose important behavior: it is size-limited, requires a prior selection, and surfaces a popup error when the selection is too long. It could add whether the operation is destructive or undoable, but the core runtime behavior is clearly conveyed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, each carrying distinct information: the action, the prerequisite, and the failure signal. No filler or repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter effect with no output schema, the description covers the essential success condition and error behavior. It does not state whether the effect can be undone, but the simple interface and explicit popup warning make it sufficient for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the schema is complete by default and the 0-param baseline of 4 applies. The description adds selection-state context rather than parameter docs, which is appropriate for a tool with no formal inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('repair') on a specific resource (damaged audio) and adds a precise scope constraint (max 128 samples). It is clear on its own, though it does not explicitly differentiate itself from similarly named repair/cleanup siblings such as effect_clip_fix.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a concrete prerequisite ('select the damaged region first') and an explicit limit ('must be extremely short'), including the failure mode if violated. It does not name alternative tools for longer damage or other repair tasks, so it falls short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_repeatB
Repeat the selected audio a number of times.
Args: count: Number of times to repeat (1-128). Default: 1
| Name | Required | Description | Default |
|---|---|---|---|
| count | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It reveals the count range (1-128), but it never states whether the selected audio is replaced, whether the operation is destructive, whether it is undoable, or what the resulting audio should look like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the main action, and contains little filler. The default value is repeated from the schema, which is slightly redundant, but overall the structure is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there are no annotations and no output schema, the description is only partially complete. It defines the operation and parameter but omits the behavioral contract: what happens to the original selection, whether the effect is destructive, and what result the agent should expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no parameter description and no minimum/maximum, so the description's 'Number of times to repeat (1-128)' adds meaningful constraint and semantic context. It could be slightly clearer about whether count means additional copies beyond the original, but it compensates for the schema gap reasonably well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a concrete action ('Repeat') and a resource ('selected audio') with a user-specified count. It is understandable on its own, but it does not differentiate itself from overlapping siblings such as edit_duplicate or other effect tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool instead of alternatives, no prerequisite like selecting audio first, and no exclusions. The name and category imply the use case, but the description does not explicitly establish it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_reverbB
Apply reverb effect to the selected audio.
Args: room_size: Room size percentage (0-100). Default: 75 pre_delay: Pre-delay in ms (0-200). Default: 10 reverberance: Reverberance percentage (0-100). Default: 50 hf_damping: High frequency damping (0-100). Default: 50 tone_low: Tone low percentage (0-100). Default: 100 tone_high: Tone high percentage (0-100). Default: 100 wet_gain: Wet signal gain in dB. Default: -1.0 dry_gain: Dry signal gain in dB. Default: -1.0 stereo_width: Stereo width (0-100). Default: 100 wet_only: Output only the wet signal. Default: False
| Name | Required | Description | Default |
|---|---|---|---|
| dry_gain | No | ||
| tone_low | No | ||
| wet_gain | No | ||
| wet_only | No | ||
| pre_delay | No | ||
| room_size | No | ||
| tone_high | No | ||
| hf_damping | No | ||
| reverberance | No | ||
| stereo_width | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'apply' without stating whether the effect is destructive, whether it replaces the current selection or creates a new track, if it can be undone, or what the output format is. It also does not clarify the relationship between wet/dry gain or 'wet_only'. This is inadequate for a complex mutating effect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a single purpose sentence followed by a neatly formatted parameter list. It is front-loaded with the key information and does not waste words. The parameter list is clear and readable, making it easy to scan. It could be improved by grouping or highlighting the most important parameters, but overall it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (10 parameters, no output schema, no annotations), the description is incomplete. It does not explain the behavior of the effect, the prerequisites (selected audio), what happens to the existing audio, or any side effects. An agent would need to know whether reverb is applied as a replacement or as a new track, and whether it is reversible. The description leaves critical context unresolved, making it only minimally sufficient for simple invocations with defaults.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema coverage is 0%, so the description must compensate. It lists all 10 parameters with ranges (0-100) and units (ms, dB) plus defaults, which is helpful. However, it does not explain what each parameter does conceptually (e.g., what 'room_size' affects, how 'pre_delay' impacts the sound). The names give some intuition, but for parameters like 'hf_damping' or 'tone_low', an agent would need more insight to set sensible values. The description offers basic semantics but not deep guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states exactly what the tool does: 'Apply reverb effect to the selected audio.' This is a clear verb+resource combination. The tool name 'effect_reverb' is distinct from the many sibling effect tools (echo, distortion, wahwah, etc.), so the purpose is unambiguous and differentiates from alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus other effects (e.g., echo, phaser) or any prerequisites. The description does not mention that the user must have an audio selection, nor does it explain that reverb is typically applied to add space or depth. It also does not mention any constraints or conditions. This is a clear gap for a 10-parameter effect.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_reverseA
Reverse the selected audio. Select a region first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of explaining behavior. It does state the core behavior and the selection requirement, but it does not disclose whether the effect is destructive/in-place, whether it can be undone, or what happens if no region is selected. These are meaningful gaps given the absence of annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences deliver the action and the key prerequisite with no filler. The description is front-loaded, easy to parse, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema effect tool, the description is nearly complete: it names the operation and the precondition. It could add notes about undoability or in-place modification, but those are not required for an agent to invoke it successfully after selecting a region.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the baseline is 4. The description sensibly treats the selected region as the implicit operand and gives the prerequisite for it, which is sufficient since no formal parameters exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Reverse') on a specific resource ('the selected audio'), so an agent can understand the tool's core purpose. It does not explicitly distinguish itself from audio-inversion siblings like effect_invert, but 'reverse' is unambiguous enough in the audio context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Select a region first' provides an explicit, actionable prerequisite and tells the agent the required precondition before invoking the tool. It does not mention alternatives or when-not-to-use, so it falls short of a 5, but it gives clear context beyond the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_sliding_stretchA
Change tempo and/or pitch gradually across the selection (sliding time stretch).
Args: rate_change_start: Tempo change at start in % (-99 to 3000). Default: 0 rate_change_end: Tempo change at end in % (-99 to 3000). Default: 0 pitch_change_start: Pitch change at start in semitones (-12 to 12). Default: 0 pitch_change_end: Pitch change at end in semitones (-12 to 12). Default: 0
| Name | Required | Description | Default |
|---|---|---|---|
| rate_change_end | No | ||
| pitch_change_end | No | ||
| rate_change_start | No | ||
| pitch_change_start | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full responsibility for behavioral disclosure. It states what the effect does but does not mention whether the operation destructively modifies the selection, whether undo is available, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose, followed by a clear, structured Args list. Every sentence adds value, and there is no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The parameters are well-explained and no output schema is expected, so invocation details are mostly covered. However, without annotations, the description omits behavioral context such as destructiveness and selection requirements, leaving it slightly incomplete for an agent needing full confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description fully compensates by documenting all four parameters with units, ranges, and defaults. For example, 'rate_change_start: Tempo change at start in % (-99 to 3000)' adds meaning not present in the input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Change') with a clear resource ('tempo and/or pitch') and scope ('across the selection'). The phrase 'sliding time stretch' plus 'gradually' distinguishes it from static pitch/tempo effect siblings like effect_change_pitch and effect_change_tempo.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through 'gradually across the selection,' which hints that this is for sliding rather than constant changes. No explicit when-to-use or alternative routing is provided, even though adjacent tools like effect_change_tempo and effect_change_pitch exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_studio_fade_outA
Apply a professional studio-quality fade out to the selected audio. Uses a specially shaped curve that sounds more natural than a linear fade.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It reveals the shaped-curve behavior, but it does not say whether the operation modifies the audio destructively, affects only the current selection, or is undoable. For a mutating effect this is a meaningful gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the first sentence states exactly what the tool does, and the second adds one useful qualitative distinction. No words are wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter effect with no output schema, the description is nearly complete: it names the action, the target, and the distinguishing audio-curve behavior. It could add a brief note about selecting audio first or how this differs from the basic fade, but nothing essential is missing for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and the schema fully documents this by listing an empty properties object, so no parameter details are needed from the description. The baseline of 4 applies because the schema covers everything.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a specific action—applying a fade out—and the target resource (selected audio). It hints at differentiation with 'specially shaped curve' and 'more natural than a linear fade,' but it does not explicitly distinguish itself from the sibling effect_fade_out.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it: when a natural-sounding, studio-quality fade out is desired on the selection. However, it does not state when not to use it or how it compares to effect_fade_out or effect_adjustable_fade, leaving the choice between siblings to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_tremoloB
Apply tremolo (volume oscillation) effect to the selected audio.
Args: frequency: Tremolo speed in Hz (1-1000). Default: 5 depth: Tremolo depth as percentage (0-100). Default: 40 waveform: 0=Sine, 1=Triangle, 2=Sawtooth, 3=InverseSawtooth, 4=Square. Default: 0
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | ||
| waveform | No | ||
| frequency | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the core operation but does not disclose whether the effect permanently modifies the audio, whether an active selection is required, whether it is undoable, or what the return/result is. For a mutating audio tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: a one-sentence purpose statement followed by a clear argument listing. Every sentence is informative, and the parameter details are easy to scan. The defaults repeat the schema, but that duplication is minor and improves usability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is low complexity with all three parameters fully documented, but there is no output schema and no annotations. The description covers the effect and arguments but omits important context such as preconditions (e.g., selected audio must exist), destructive behavior, and result reporting. It is minimally viable but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description fully compensates by explaining each parameter: frequency as tremolo speed in Hz with range 1-1000, depth as percentage with range 0-100, and waveform with an explicit numeric-to-shape mapping. This adds substantial meaning beyond the bare schema definitions and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Apply tremolo (volume oscillation) effect to the selected audio.' This is a specific verb and resource, and the parenthetical 'volume oscillation' clarifies the effect's nature. However, it does not explicitly contrast with sibling effect tools like effect_phaser or effect_echo, so it lacks strong sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says the effect applies to selected audio but gives no guidance on when to prefer this tool over alternatives, nor does it mention any exclusions or prerequisites. No sibling tool is referenced, so the agent must infer usage entirely from the tool name and generic behavior.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_vocal_reductionA
Vocal Reduction and Isolation: remove or isolate vocals from a stereo track.
Args: action: 0=Remove Vocals, 1=Isolate Vocals, 2=Remove Vocals (Mono), 3=Isolate Vocals (Mono), 4=Remove Center, 5=Isolate Center. Default: 0 low_cutoff: Low frequency cutoff in Hz. Default: 120 high_cutoff: High frequency cutoff in Hz. Default: 9000 strength: Effect strength (0-50). Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | ||
| strength | No | ||
| low_cutoff | No | ||
| high_cutoff | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The argument documentation reveals meaningful behavior, such as the action modes (Remove/Isolate, Mono/Center) and default low/high cutoffs. With no annotations, the description still omits side-effect information, such as whether the operation destructively modifies audio or only processes a selection, so transparency is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The summary line is front-loaded and the parameter block is neatly organized, keeping the description easy to scan. A minor redundancy is that defaults are repeated from the schema, but this does not impair readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All four parameters and their defaults are documented, which covers the core calling contract. However, with no output schema and no annotations, the description does not explain return behavior, selection requirements, or the effect's permanence, leaving meaningful gaps for a mutation-style effect tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description fully compensates by explaining every parameter, including the meaning of each action integer value, cutoff units in Hz, and the strength range 0-50. This adds substantial semantic value beyond the bare schema defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear verb and object: 'remove or isolate vocals from a stereo track,' making the effect's purpose immediately evident. It does not explicitly contrast itself with related siblings such as raw_karaoke or auto_cleanup_vocal, so it falls short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'from a stereo track' provides relevant context for when the tool applies, and the action list clarifies the available modes. However, there is no direct guidance on when to choose this effect over sibling tools or any exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
effect_wahwahC
Apply wahwah effect to the selected audio.
Args: frequency: LFO frequency in Hz (0.1-4.0). Default: 1.5 phase: LFO start phase (0-360). Default: 0 depth: Modulation depth (0-100). Default: 70 resonance: Resonance (0.1-10). Default: 2.5 offset: Frequency offset (0-100). Default: 30
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | ||
| phase | No | ||
| offset | No | ||
| frequency | No | ||
| resonance | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose side effects, whether the effect is destructive, or how it interacts with the selection. No annotations (e.g., destructiveHint) provide additional clarity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is minimal and to the point, but it lacks structural organization (e.g., sections or parameter explanations). It is concise without being overly verbose, but could be better structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description provides insufficient context to understand how the parameters interact or what the effect does beyond a generic statement. With zero schema coverage, it is incomplete for a user to effectively use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Parameter names are listed with defaults but their meanings and impact on the effect are not explained. The schema also lacks descriptions, leaving the user without any semantic understanding of the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Apply wahwah effect' and the target 'selected audio'. It is specific enough to convey the tool's primary function, though it does not elaborate on what the wahwah effect entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this effect versus similar effects (e.g., phase, tremolo). There is no mention of suitable contexts or conditions that would favor this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_chirpB
Generate a chirp (frequency sweep).
Args: waveform: "Sine", "Square", "Sawtooth", or "Square (no alias)". Default: "Sine" start_freq: Starting frequency in Hz. Default: 440 end_freq: Ending frequency in Hz. Default: 1320 start_amp: Starting amplitude (0-1). Default: 0.8 end_amp: Ending amplitude (0-1). Default: 0.1 duration: Duration in seconds. Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| end_amp | No | ||
| duration | No | ||
| end_freq | No | ||
| waveform | No | Sine | |
| start_amp | No | ||
| start_freq | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavior. It explains parameters and defaults but does not describe what happens when the tool is invoked—for example, whether it creates a new track, replaces selection, or adds audio to an existing track. The description is limited to the input parameters and does not cover the output or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: a single opening sentence stating the action, followed by a bulleted list of parameters with defaults. No fluff or redundancy. It is appropriately sized for a tool with 6 parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is incomplete for practical use. It does not mention preconditions or the effect of the tool—for instance, whether it creates a new track, requires a selection, or overwrites existing audio. It also lacks differentiation from the many sibling generation tools. Without output schema or annotations, the agent lacks key context on how the result is delivered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero description coverage, so the description compensates well by explaining each parameter: waveform lists allowed values, start_freq and end_freq are in Hz, start_amp and end_amp are amplitudes 0-1, and duration is in seconds. It adds meaning for all 6 parameters, though it could be more explicit about constraints like the exact waveform values. Overall, it makes the parameters clear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Generate a chirp (frequency sweep),' which is a specific verb and resource. It distinguishes the tool from siblings like generate_tone and generate_noise by name, though it doesn't explicitly contrast with them. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool vs. alternatives like generate_tone or generate_noise. The description does not mention scenarios where a chirp is appropriate, nor does it give exclusions or comparisons. The agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_dtmfA
Generate DTMF (telephone) tones.
Args: sequence: DTMF characters (0-9, A-D, *, #). Default: "0123456789" duty_cycle: Tone vs silence ratio percentage (0-100). Default: 55 amplitude: Amplitude (0-1). Default: 0.8 duration: Total duration in seconds. Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| duration | No | ||
| sequence | No | 0123456789 | |
| amplitude | No | ||
| duty_cycle | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It explains parameter meanings and defaults but does not state side effects, whether the tone is inserted into a project, what the return value is, or whether the operation is non-destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the purpose, followed by a clean parameter list. Every line provides necessary information and there is no redundant or tangential content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple generator, the purpose and full parameter documentation cover most selection and invocation needs. However, with no annotations and no output schema, a brief note on what the tool returns or whether it modifies the project would make it fully self-sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description fully compensates by explaining all four parameters: valid DTMF characters for sequence, the meaning and range of duty_cycle, the amplitude range, and duration units. This adds substantial semantic value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Generate DTMF (telephone) tones' with a clear verb and specific resource. This distinguishes it from siblings like generate_tone, generate_noise, and generate_chirp by identifying the exact kind of signal produced.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the purpose: use this when DTMF telephone tones are needed. However, there is no explicit guidance about when to choose this over the many sibling generation tools, nor any mention of alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_noiseC
Generate noise.
Args: noise_type: "White", "Pink", or "Brownian". Default: "White" amplitude: Amplitude (0-1). Default: 0.8 duration: Duration in seconds. Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| duration | No | ||
| amplitude | No | ||
| noise_type | No | White |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must disclose behavior itself. It identifies signal type, amplitude, and duration, but not whether the operation creates a new track, replaces the selection, is destructive, or what the observable outcome is.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and scannable, but the first sentence is a tautology and the defaults duplicate the input schema. It is concise without being wasteful, but not every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a generation tool with no annotations, no output schema, and many generation siblings, the description is too thin. An agent cannot tell what side effects occur, where the noise goes, or what a successful call looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the schema has no descriptions or enums. The Args block adds the allowed noise_type values, the amplitude 0-1 range, and duration units, fully compensating for the schema's silence.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening line 'Generate noise' restates the tool name and gives no distinguishing context. It doesn't explain whether this inserts a clip, creates a track, or how it differs from sibling generation tools like generate_tone, generate_chirp, or generate_dtmf.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as generate_tone or generate_chirp. The argument list implies how to call it, but not when it should be selected or when it should be avoided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_rhythm_trackB
Generate a click/rhythm track.
Args: tempo: Tempo in BPM (30-300). Default: 120 beats_per_bar: Beats per bar (1-32). Default: 4 number_of_bars: Number of bars to generate (1-1000). Default: 4 rhythm_pattern: "Uniform" or "Swing". Default: "Uniform"
| Name | Required | Description | Default |
|---|---|---|---|
| tempo | No | ||
| beats_per_bar | No | ||
| number_of_bars | No | ||
| rhythm_pattern | No | Uniform |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden. It mentions generation but does not disclose side effects, such as whether a new track is added to the project, whether existing audio/selection is affected, or what the output/return value is. This is a significant gap for a tool with no annotation safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: a one-line purpose followed by a clear Args list. Each line is informative. It repeats defaults already present in the schema, but only slightly, and the structure makes the constraints easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations and no output schema, the description is incomplete. An agent does not know whether this generates a new audio track, replaces the current selection, or returns a result. It documents parameters well but omits the operational behavior needed to call it confidently in a project context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates well by documenting all four parameters, including valid ranges (30-300, 1-32, 1-1000) and allowed values for rhythm_pattern. This adds real meaning beyond the bare schema properties, though it does not explain what 'Swing' versus 'Uniform' means.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Generate a click/rhythm track.' This clearly distinguishes it from sibling generation tools like generate_tone, generate_noise, generate_chirp, and generate_dtmf, even without reading their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives such as generate_tone or generate_chirp. The purpose is implied by the name and resource, but there is no explicit context or mention of alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_toneB
Generate a tone signal.
Args: waveform: Wave type - "Sine", "Square", "Sawtooth", or "Square (no alias)". Default: "Sine" frequency: Frequency in Hz (1-20000). Default: 440 amplitude: Amplitude (0-1). Default: 0.8 duration: Duration in seconds. Default: 1.0
| Name | Required | Description | Default |
|---|---|---|---|
| duration | No | ||
| waveform | No | Sine | |
| amplitude | No | ||
| frequency | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does add value with parameter domains and the 'Square (no alias)' variant, but it omits the most consequential behaviors: whether the tone creates a new track, overwrites the selected audio, inserts at the cursor, or requires an active track. These are critical for correct invocation and are entirely undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A one-sentence lead followed by four terse argument lines, each carrying distinct information (units, ranges, allowed values, defaults). It is front-loaded and contains no filler. Minor deduction for the mechanical 'Args:' docstring format, which is structured but not ideal for AI consumption.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero annotations, zero schema descriptions, and no output schema, this description is the sole source of information, yet it covers only parameters and never explains the operation's effect on the project. Whether the call is destructive, whether it needs a selection, and where the tone lands are all missing. A generative audio tool needs that context to be safe to invoke.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, and it does: it supplies units (Hz, seconds), valid ranges (1-20000, 0-1), the four permitted waveform values, and defaults for all four parameters. This fully covers what the schema lacks. It stops short of a 5 only because it adds no nuance about validation or out-of-range behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
'Generate a tone signal' states a specific verb and resource, and the Args list (Sine, Square, Sawtooth) makes the resource concrete. It is reasonably distinguishable from generate_noise, though it never explicitly differentiates itself from generate_chirp, which also produces a tone-like signal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance whatsoever on when to use this tool versus alternatives. Closely related siblings exist (generate_noise, generate_chirp, generate_dtmf, generate_rhythm_track), and the description neither mentions them nor gives selection criteria. An agent must guess which generator to invoke.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_default_export_folderA
Get the default folder for exporting audio files. Returns the user's Music folder path. Use this when the user doesn't specify where to save.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the read-only nature of the operation and the exact return content ('the user's Music folder path'). It does not mention edge cases like missing folders, but this is a minor omission for such a simple getter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with the primary purpose first, followed by return value and usage guidance. There is no redundant or speculative information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description is fully adequate: it states the purpose, the return value, and when to use it. Nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so no parameter documentation is needed. The description confirms that the tool takes no arguments and simply returns a path, which is the baseline expectation for a no-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's function: 'Get the default folder for exporting audio files' and specifies the exact return value, 'the user's Music folder path.' It is easily distinguishable from siblings like get_default_transcription_folder because it explicitly mentions exporting audio files.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool: 'Use this when the user doesn't specify where to save.' It does not name alternatives or give when-not-to-use guidance, but for a zero-parameter getter this is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_default_transcription_folderA
Get the default folder for saving transcription files. Returns the user's Documents folder. Call this when the user doesn't specify where to save.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. It transparently states that calling the tool returns the user's Documents folder, making the result and read-only nature clear. It does not detail edge cases or side effects, but none are expected for a simple getter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The purpose is front-loaded, followed by the return value and a clear usage instruction. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, simple getter with no output schema, the description is complete: it states what the tool returns and when to call it. An agent can select and invoke it correctly without additional information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so parameter semantics are trivially satisfied. The baseline of 4 applies because no parameter information is needed and the schema coverage is effectively complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the default folder for saving transcription files and specifies it returns the user's Documents folder. This distinguishes it from the sibling get_default_export_folder, which concerns export rather than transcription.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit condition: 'Call this when the user doesn't specify where to save.' It provides clear usage context, though it does not name alternative tools or explicitly discuss when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_noise_profileA
Capture a noise profile from the currently selected audio region. IMPORTANT: Select a region of pure noise (e.g. 0.5-2 seconds of silence/background noise) before calling this. This profile is used by the noise_reduction tool.
How it works: The first call to NoiseReduction without an existing profile captures the selection as the noise profile. The next call applies reduction.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It discloses that the selected region becomes the noise profile, that the profile is consumed by noise_reduction, and that applying reduction is a separate subsequent call. It stops short of stating explicitly whether the audio selection is modified, but 'capture' plus the two-step explanation make the non-destructive intent reasonably clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description leads with the main purpose, adds an important precondition in caps, and then gives the workflow. It is slightly longer than necessary because the 'How it works' sentence partly repeats the capture/apply distinction, but each section contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no annotations or output schema, the description covers the essential workflow: what to select, what the tool produces, and how it connects to noise_reduction. It does not describe failure behavior or whether the profile persists globally, but these are secondary for a simple capture action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero formal parameters, so the parameter-semantics burden is minimal. The description still adds relevant operational context by telling the agent to pre-select a pure-noise region, which effectively constitutes the tool's input even though it is not a schema parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb ('Capture') and resource ('noise profile') with a clear scope ('currently selected audio region'), and differentiates from the sibling noise_reduction by stating the profile is used by that tool. Even without reading the schema, an agent knows exactly what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs the required precondition (select 0.5-2 seconds of pure noise) and explains the two-step relationship with noise_reduction: first capture a profile, then apply reduction. It does not spell out 'use noise_reduction instead' as an exclusion, but the workflow is clear enough for correct routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_addB
Add a label at the current cursor position or selection.
Args: text: Label text. Default: empty
| Name | Required | Description | Default |
|---|---|---|---|
| text | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the core behavior (a label is created at the current position/selection) but omits side effects such as whether an empty text creates an unlabeled label, whether a label track is required, or what happens to the existing selection.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The main sentence is front-loaded, short, and directly actionable. The Args block is somewhat redundant with the schema, but it is minimal and does not add meaningful verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and the description covers the basic invocation. However, in a large sibling family of label-related tools, it does not disambiguate from label_add_at or label_add_batch, and it does not mention any effects on the current selection or label track.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds only a slight clarification by calling text 'Label text' and repeating the schema's default of empty. Schema coverage is 0%; the description should compensate more, but for a single free-form string parameter it does provide enough meaning for basic use.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb-resource pair ('Add a label') and the precise scope ('at the current cursor position or selection'). It is unambiguous about what the tool does, though it does not explicitly name sibling tools such as label_add_at to differentiate them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the purpose: use this when adding a label at the current cursor or selection. However, there is no explicit guidance about when to prefer label_add_at, label_add_batch, or track_add_label, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_add_atB
Add a label at a specific time range.
Args: start: Start time in seconds end: End time in seconds text: Label text. Default: empty
| Name | Required | Description | Default |
|---|---|---|---|
| end | Yes | ||
| text | No | ||
| start | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states that a label is added, but does not disclose side effects such as whether an existing label at the same range is overwritten, whether a label track is created, or whether the new label becomes selected. This leaves the agent to infer important behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise: one clear purpose sentence followed by a compact argument list. Every line contributes either the core action or parameter semantics, and it is front-loaded with the most important information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with only three parameters, the description covers the action and parameter meanings well. However, it lacks usage guidance and behavioral side effects, and is situated among many label-related siblings. This makes it minimally viable but not fully complete for an agent needing to select and invoke it reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does so by adding units ('in seconds') for start and end and clarifying the default behavior of text ('Default: empty'). This is valuable beyond the raw schema. It stops short of specifying constraints like end > start or acceptable value ranges, but it meaningfully aids parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action, 'Add a label at a specific time range,' which clearly identifies the verb and resource. It also signals that the label is positioned by explicit time bounds, distinguishing it from label_add, which likely uses the current selection. However, it does not explicitly contrast it with nearby siblings like label_add_batch or label_regular_intervals, so sibling differentiation is incomplete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to choose this tool over alternatives such as label_add, label_add_batch, or label_regular_intervals. It only implies usage through the action statement; there are no explicit when-to-use or when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_add_batchA
Add many labels at once — a whole marker list in one call.
Each item is {"start": seconds, "end": seconds (optional, defaults to start for a point label), "text": string (optional)}. Every item is validated before anything is sent to Audacity, so a bad item fails the whole call rather than leaving a half-written list behind.
Args: labels: List of {"start", "end", "text"} label definitions
| Name | Required | Description | Default |
|---|---|---|---|
| labels | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the behavioral burden. It discloses an important atomicity behavior: every item is validated before anything is sent to Audacity, so a bad item fails the whole call rather than leaving a half-written list. It also explains the default behavior for the optional end parameter. It does not mention undo behavior, permissions, or return values, but the disclosed validation behavior is substantive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well front-loaded with the batch purpose, then gives the exact item structure and the atomic validation behavior. The Args line somewhat repeats the item shape already explained above, but the repetition is concise and the overall length is reasonable with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter batch tool with no annotations and no output schema, the description covers the parameter format, defaults, and the critical failure behavior. It does not describe the success return value or broader side effects, but those are less critical for an agent deciding whether and how to invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides zero description coverage for the labels parameter, but the description fully documents the item shape: {'start': seconds, 'end': optional and defaults to start, 'text': optional}. This fully compensates for the schema's lack of parameter detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and object: 'Add many labels at once — a whole marker list in one call.' It clearly distinguishes this batch tool from a singular label tool like label_add by emphasizing the batch/many nature and the marker list format.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies this tool should be used when adding multiple labels in one operation ('a whole marker list in one call'), which is a clear usage context. It does not explicitly name alternatives or say when not to use it, but the batch focus is strong enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_cut_regionsA
Cut the audio under every label to the clipboard, closing the gaps.
Acts on labeled regions within the current selection on the SELECTED AUDIO TRACKS — select the audio tracks and time range first. Because the timeline closes up, the labeled regions collapse rather than surviving unchanged — re-read label_list afterwards to see what remains.
Not yet independently live-tested against a running Audacity, unlike label_delete_regions/label_silence_regions/label_split_regions/ label_join_regions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the clipboard behavior, the need for selection, the timeline closing (regions collapse), and the advice to re-read label_list. It also mentions it's not yet independently live-tested. This is transparent about side effects and current reliability, though it omits undo behavior or other potential pitfalls, so not a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact—four sentences—and front-loads the core action. It includes necessary prerequisites and behavior in a logical order, with no wasted words. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter tool with no output schema and no annotations, the description covers essential aspects: what it does, what to do first, what happens to labels, and how to verify results. It also notes its testing status. It's slightly incomplete in that it doesn't mention undo or error handling, but given the simplicity, it's largely sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is trivially 100% covered. The description adds context about what the operation acts on (selected audio tracks/regions) but no parameter-specific details are needed. Per the rubric, with 0 params, baseline is 4; this holds as the description doesn't introduce confusion.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Cut the audio under every label to the clipboard, closing the gaps.' It specifies the resource (audio under every label) and result (clipboard, gaps closed). It also differentiates from siblings by describing the timeline closing up, making it distinct from delete/silence/split/join.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly instructs to select audio tracks and time range first, and notes the behavioral consequence that labeled regions collapse. It names sibling tools as a contrast, implying when this tool might be chosen (when gaps should close) versus others, though it doesn't give a full when-not matrix. Still, it provides clear context and an actionable prerequisite.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_deleteA
Delete a single label without touching the audio.
Get the index from label_list. Audacity has no scripting command for deleting one label, so this selects the label's own span on its own label track and split-deletes it — audio tracks are never in the selection, and nothing downstream shifts in time.
Other labels on the same track that sit entirely inside the deleted label's span would be removed as collateral, so they are re-added afterwards. A label that only partially overlaps the span may be trimmed to the boundary; check label_list afterwards if labels on that track overlap each other.
To delete a label and the audio under it, use label_delete_audio_at.
Args: index: Flat label index from label_list
| Name | Required | Description | Default |
|---|---|---|---|
| index | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full disclosure duty, and it delivers: it reveals the workaround implementation (selecting the label span and split-deleting), guarantees audio tracks are never selected and nothing shifts in time, and discloses collateral deletion/trimming of overlapping labels. This goes well beyond a typical mutation description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The main action is front-loaded, and each subsequent paragraph covers a necessary behavioral consequence or alternative. Despite its length, every sentence adds information the agent needs to call it safely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive label operation with one parameter, no annotations, and no output schema, the description covers what happens, when it differs from the sibling, and how to verify results via label_list. No critical operational gap remains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the schema only gives type/title, so the description's Args line is essential. 'Flat label index from label_list' clarifies where the index comes from and what kind of index it is, adding real meaning beyond the schema; it just stops short of specifying bounds or 0-based indexing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with 'Delete a single label without touching the audio' — a specific verb, resource, and a key constraint that immediately separates it from label_delete_audio_at. The title/name alone would not convey the no-audio scope, but the description does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs the agent to get the index from label_list and names the sibling label_delete_audio_at for the case where audio should also be deleted. It also warns about overlapping-label collisions and tells the agent to check label_list afterward, which is direct operational guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_delete_audio_atA
Delete the audio under ONE label, picked by index — not label_delete (marker only) or label_delete_regions (every label in the current selection, no index).
This is a custom, composite operation built for podcast/transcript-based editing, not a 1:1 wrapper over a single Audacity scripting command — unlike label_cut_regions/label_delete_regions/label_silence_regions/ label_split_regions/label_join_regions, which each call exactly one Audacity command. Audacity has no "delete this one labeled take" command, so this orchestrates several: SelAllTracks, then SelectTime, then Delete/SplitDelete, then clears the leftover marker.
By default the gap closes and everything after shifts left, exactly as label_delete_regions does. Pass close_gap=False to leave silence of the same length instead, keeping the timeline length and everything after it in place.
All tracks are selected first, so label tracks ripple along with the audio and later labels stay aligned with it.
Deleting the audio does NOT remove the label — it collapses to a zero-length marker sitting where the audio used to be. This tool clears that leftover marker too, matching what clicking a label and pressing Delete does in Audacity: the audio and the label both go. Pass delete_label=False to keep it as a marker of where the cut was made. Use label_delete instead to remove a label without touching any audio.
Args: index: Flat label index from label_list close_gap: Close the gap and shift later audio left. Default: True delete_label: Also remove the label left behind. Default: True
| Name | Required | Description | Default |
|---|---|---|---|
| index | Yes | ||
| close_gap | No | ||
| delete_label | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and excels: it discloses that this is a composite orchestration of multiple Audacity commands, explains the default gap-closing behavior and close_gap=False alternative, states that all tracks are selected so label tracks ripple, and reveals that deleting audio does not remove the label and that the leftover marker is cleared by default. These are non-obvious side effects an agent needs to know.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but structured into focused paragraphs and a clear Args list. Every major sentence adds essential context—scope, sibling differentiation, composite nature, side effects, and parameter behavior. It could be slightly trimmed without losing value, but the length is largely justified for a complex operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a composite mutation tool with no annotations and no output schema, the description covers everything needed to call it correctly: operation semantics, index-based targeting, default and opt-out behaviors, label track alignment, leftover marker handling, and clear alternatives. No critical operational detail is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the Args section fully compensates: index is defined as 'Flat label index from label_list', close_gap explains the exact timeline effect and default True, and delete_label explains that it removes the leftover marker and default True. This adds meaning far beyond the bare schema types and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and resource: 'Delete the audio under ONE label, picked by index'. It immediately distinguishes itself from sibling tools label_delete (marker only) and label_delete_regions (every label in current selection, no index), so an agent can tell exactly what it does and how it differs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly names when to use this tool vs alternatives: 'not label_delete (marker only) or label_delete_regions (every label in the current selection, no index)' and later 'Use label_delete instead to remove a label without touching any audio.' It also clarifies how composite label region tools differ, so the agent has clear routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_delete_regionsA
Delete the audio under every label, closing the gaps.
Label every unwanted stretch — bad takes, dead air, noise bursts — then remove them all in one pass. Use label_delete_audio_at for a single label. Acts on labeled regions within the current selection on the SELECTED AUDIO TRACKS — select the audio tracks and time range first. Because the timeline closes up, the labeled regions collapse rather than surviving unchanged — re-read label_list afterwards to see what remains.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states that audio under labels is deleted, that gaps are closed, that labeled regions collapse rather than survive unchanged, and that the user should re-read label_list to see the result. This goes beyond a simple 'delete' and exposes the side effects and follow-up action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured and front-loaded with the core action in the first sentence, followed by use-case, alternative, prerequisites, and consequences. Every sentence earns its place, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description is fully complete. It covers what it does, when to use it, the alternative, the required setup, the behavioral impact, and a follow-up action. Nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description does not need to explain any parameters, and it adds no irrelevant parameter info. It correctly focuses on the context of use, which is the only relevant semantic here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Delete the audio under every label, closing the gaps') and immediately distinguishes itself from the sibling label_delete_audio_at ('Use label_delete_audio_at for a single label'). The purpose is unambiguous and clearly separated from related label operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use guidance ('Label every unwanted stretch — bad takes, dead air, noise bursts — then remove them all in one pass'), names the alternative for single-label cases, and states the prerequisites ('select the audio tracks and time range first'). Also notes the behavioral consequence of the timeline closing up and advises re-reading label_list afterwards.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_editA
Edit an existing label's text and/or timing. Only the fields you pass are changed.
Get the index from label_list. Renaming a label is label_edit(index, text="..."); moving one of its boundaries is label_edit(index, start=...).
Args: index: Flat label index from label_list text: New label text. Default: unchanged start: New start time in seconds. Default: unchanged end: New end time in seconds. Default: unchanged
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ||
| text | No | ||
| index | Yes | ||
| start | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for disclosing behavior. It explains the default behavior ('Only the fields you pass are changed') and the default for each parameter ('unchanged'). However, it does not mention any side effects, error conditions, or what happens with invalid indexes. It also does not state whether the operation is reversible or if it returns anything. This is a mutation tool with no annotations, so more disclosure would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized with an introductory sentence, a prerequisite note, usage examples, and a clear Args list. It is concise, front-loaded, and every sentence adds value. The structure makes it easy to scan and use.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple edit tool with four parameters and no output schema, this description covers all essential aspects: how to obtain the index, which fields can be changed, and their default semantics. It lacks explicit mention of error handling or whether both start and end can be changed simultaneously, but these are minor given the clear 'fields you pass are changed' statement. The tool is adequately specified for correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides thorough explanations for all four parameters. It details 'index' as a flat label index from label_list, and defines 'text', 'start', and 'end' with units and default behavior. This goes well beyond the bare schema (which has 0% coverage), effectively compensating for the lack of schema-level descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Edit an existing label's text and/or timing.' It specifies the resource (labels) and the actions (text and timing change). It also gives concrete usage examples, making it easy to distinguish from siblings like label_add or label_delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on how to use the tool: 'Get the index from label_list' is a prerequisite, and the examples show how to call it. However, it does not explicitly mention when NOT to use it (e.g., when creating a label), but the context is strongly implied. It offers enough direction for an agent to know it is for editing existing labels.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_exportB
Export all labels to a text file.
Args: path: Absolute path for the output labels file
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the primary action and output, but does not mention whether an existing file is overwritten, whether the file is created if absent, or what the tool returns after export. For a write-oriented tool with zero annotation coverage, this is a meaningful gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with the core action in the first sentence and a terse parameter explanation immediately after. No words are wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool, the description gives the essential information: what is exported, the output format, the required path, and that the path must be absolute. However, the absence of annotations and output schema means the description should also clarify overwrite/create behavior and the return value, both of which are left implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does: the Args section explains that 'path' is an absolute path for the output labels file, adding meaning beyond the schema's bare 'Path' title. For the single required parameter, this is sufficient and helpful.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Export all labels') and a specific output ('a text file'), so an agent can understand the core purpose. However, it does not explicitly distinguish itself from sibling export tools like label_export_chapters or label_export_audio_segments, though the 'all labels' and 'text file' wording provides some implicit differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives such as label_export_chapters, label_export_audio_segments, or project_export_labels. The intended use is only implied by the name and one-line description, with no exclusions, prerequisites, or selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_export_audio_segmentsA
Export the audio under each label as its own file.
Splits a long recording into per-segment audio files, named "01_Segment_Title.wav" and so on from the label text. ALWAYS tell the user which directory the files will be written to BEFORE calling this. Point labels (zero length) have no audio to export and are skipped. Existing files are never overwritten — they are skipped and reported. This can take a while for many or long segments.
Not yet independently live-tested against a running Audacity — verified against the scripting reference and unit tests with mocked responses only.
Args: directory: Absolute path to the output directory format: Audio format — wav, mp3, ogg, flac, aiff, mp4. Default: wav num_channels: 1 for mono, 2 for stereo. Default: 2
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | wav | |
| directory | Yes | ||
| num_channels | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so thoroughly: point labels are skipped, existing files are never overwritten (skipped and reported), performance warning, and an honest note about not being live-tested. These are critical behavioral traits for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with a one-line purpose, then behavioral notes, then an Args section. Every sentence adds value; the front-loaded main action and essential caveats make it efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a file-export tool with no output schema, the description covers key behaviors and parameters. It does not describe the return value (what 'reported' means exactly), but this is minor given the detailed behavioral info. Overall sufficient for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description fully explains all three parameters: directory (absolute path), format (lists options and default), and num_channels (meaning and default). This compensates completely for the missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Export the audio under each label as its own file.' Clearly distinguishes from siblings like label_export and label_export_chapters by focusing on audio segments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context (splitting a long recording into per-segment audio) and a critical prerequisite: 'ALWAYS tell the user which directory the files will be written to BEFORE calling this.' However, it does not explicitly contrast with alternatives or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_export_chaptersA
Export labels as a chapter/marker file.
Turns a label track into a standard marker file — chapter navigation for long-form audio, a track listing for a continuous mix, an index for a lecture or interview recording. Formats: "simple" (HH:MM:SS.mmm Title per line), "cue" (cue sheet), "podlove" (Podlove Simple Chapters JSON). Labels with no text become "Chapter 1", "Chapter 2" and so on.
Not yet independently live-tested against a running Audacity — verified against the scripting reference and unit tests with mocked responses only.
Args: path: Absolute path for the output file (must not already exist) format: Chapter format — simple, cue or podlove. Default: simple
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| format | No | simple |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden and does it well: it discloses the label-to-marker conversion, automatic naming for untitled labels, the non-existing-file constraint, and the important caveat that it is not yet live-tested against Audacity. It could add whether the source label track is modified, but the behavior is conveyed clearly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with purpose, then provides concrete use cases and format examples, a valuable reliability caveat, and a clear Args section. Every sentence earns its place and none is filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter export tool, it covers the output purpose, formats, auto-naming, and path constraints quite completely. The main gap is not specifying which label track is exported if multiple exist or what confirmation/return behavior to expect, but these are minor for this simple operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions are absent, so the Args section fully compensates: path is defined as an absolute output path that must not already exist, and format is defined as one of simple, cue, or podlove with a default. This gives the agent everything needed to invoke the tool correctly despite 0% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Export labels as a chapter/marker file' and immediately clarifies the output type and use cases. Formats such as simple, cue, and podlove further distinguish this from generic label_export or audio-segment export siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear when-to-use contexts: chapter navigation for long-form audio, track listing for a mix, and index for lecture or interview recordings. It does not explicitly name alternative label export tools or state exclusions, so it falls just short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_findA
Find labels whose text contains a search string (case-insensitive).
Useful for locating a specific marker in a long recording without reading through every label.
Args: query: Text to search for within label text
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosure. It reveals that matching is case-insensitive and substring-based, which is useful. However, it does not describe what the tool returns (matching labels, IDs, positions), what happens when no labels match, or whether search covers both point and region labels.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-organized: core purpose first, then a practical use case, then parameter documentation. No redundant or filler sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter search tool, the description covers the main action and parameter well. However, with no output schema, it omits return value details and expected output format. Given the simple scope and sibling context, this is a moderate gap rather than a critical one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate for the bare 'Query' title. It does: 'query: Text to search for within label text' clearly explains the parameter's meaning and scope. A minor example or edge-case note would push it higher, but the single parameter is adequately explained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: 'Find labels whose text contains a search string (case-insensitive).' This clearly names the resource (labels), the operation (find by text), and a distinguishing behavior (case-insensitive substring matching).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when this is useful: 'locating a specific marker in a long recording without reading through every label.' It does not explicitly contrast with alternatives like label_list or label_get_all, but the use case is clear enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_get_allA
Get all labels in the project as Audacity's raw GetInfo response.
Prefer label_list — it returns the same labels already parsed, with the index each one needs for label_edit and label_delete.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and it clarifies that the output is Audacity's raw GetInfo response, implying an unparsed format. It does not explicitly state read-only behavior, but the verb 'Get' and the contrast with the parsed label_list make the operational behavior reasonably clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler; the core purpose is stated first and the routing guidance is a single contrastive second sentence.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, simple getter with no output schema, the description names the resource, the response form, and the preferred sibling alternative. Nothing needed to select or call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and schema coverage is 100%, so there is nothing for the description to add. The description's only relevant semantic claim is that all labels are returned, which is consistent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Get all labels in the project as Audacity's raw GetInfo response.' It also distinguishes itself from label_list by noting this returns raw data, so an agent can tell the two apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly prefers label_list for parsed labels with indices needed for label_edit and label_delete, giving a clear alternative and the reason to choose it. This tells the agent when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_importB
Import labels from a text file.
Args: path: Absolute path to the labels text file
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full responsibility for behavioral disclosure. It says 'Import labels', which implies a project-mutating operation, but it does not state whether existing labels are replaced or appended, what file format is expected, or whether the operation is reversible/only. This is a meaningful gap for an import action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely tight: one sentence states the operation, and the Args section gives exactly one line for the single parameter. There is no redundancy or irrelevant content, and the key action is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter import tool, the description provides a minimally viable call contract: pass an absolute path to a label text file. However, it omits important contextual details such as whether labels are added to the existing project, whether they replace existing labels, what label file syntax is expected, and what response or errors the agent can expect. With no annotations or output schema, this leaves some uncertainty for the calling agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only gives the property title 'Path' with no description, leaving 0% schema coverage. The description's Args section fully compensates by explaining that path must be an absolute path to the labels text file, defining both the required type constraint and the resource it points to.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation ('Import labels') and the input source ('from a text file'), giving an agent a solid grasp of the tool's core purpose. It does not explicitly contrast with sibling label tools such as label_export or label_add_batch, though the file-based import is enough to infer some separation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to choose label_import over alternatives. The sibling list includes many label-related tools, but the description does not mention use cases, exclusions, or related tools, leaving the agent to guess when this import path is the right one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_join_regionsA
Join the audio clips across every labeled region back together.
The inverse of label_split_regions. Acts on labeled regions within the current selection on the SELECTED AUDIO TRACKS — select the audio tracks and time range first. The labels themselves stay where they are.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It usefully notes that 'the labels themselves stay where they are' and positions the tool as the inverse of label_split_regions. However, it does not disclose whether the join is destructive, whether it affects the underlying audio clips permanently, or whether undo is available.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the primary action appears in the first sentence. Every subsequent sentence adds necessary operational detail without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description covers everything needed to invoke it correctly: what it does, the required selection setup, which tracks it applies to, and the behavior of labels. No critical information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema requires no explanation. The description adds meaningful context about selection and scope, going beyond the empty schema. This meets the baseline for a zero-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-resource pair: 'Join the audio clips across every labeled region back together.' It further distinguishes itself by naming the inverse tool, label_split_regions, so an agent can tell this operation apart from its close sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for use: it acts on labeled regions within the current selection on selected audio tracks, and instructs the agent to select tracks and a time range first. It names the inverse relationship with label_split_regions but does not explicitly state 'use this instead of X' or list exclusion scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_listA
List every label with its index, timing and text.
Returns labels sorted by Audacity's own flat index, which is what label_edit and label_delete take. Call this first whenever you need to modify a specific label, rather than guessing an index.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It reveals important behavior beyond a simple 'list': it returns labels sorted by Audacity's flat index and clarifies that this index is what label_edit and label_delete expect. It does not explicitly state that the operation is read-only, but 'List every label' strongly implies that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: it announces the core function in the first sentence, then adds the most useful operational detail (flat index and relationship to editing/deleting) in the next two sentences. Every sentence contributes value with no repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only list tool with no output schema, the description covers the essential ground: what is returned, the sort order, and how the result should be used. The agent has enough context to call the tool correctly and understand the returned data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the baseline is 4. The description does not need to explain parameters because there are none, and it correctly focuses on output and usage context instead.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List'), the resource ('every label'), and the returned fields ('index, timing and text'). It also distinguishes this tool from label_edit and label_delete by explaining that it provides the flat index those tools consume, though it does not explicitly differentiate itself from the similar-sounding sibling label_get_all.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance: 'Call this first whenever you need to modify a specific label, rather than guessing an index.' This tells the agent exactly when to use the tool, how to chain it with label_edit/label_delete, and what mistake to avoid.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_regular_intervalsB
Create labels at regular time intervals across the selection or project.
Args: interval: Time between labels in seconds. Default: 30 adjust: Adjust interval to fit selection evenly. Default: False label_text: Text for each label (labels will be numbered). Default: empty
| Name | Required | Description | Default |
|---|---|---|---|
| adjust | No | ||
| interval | No | ||
| label_text | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description alone must convey behavior. It explains that labels are created at regular intervals and that they will be numbered (via the label_text parameter), but it does not specify how existing labels are handled, whether the selection is used as the range, or if labels are placed on the label track. The description omits side effects and any details about the creation process beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that conveys the core function without any unnecessary words. It is front-loaded with the main action and resource, and the parameter descriptions are compact yet informative. No fluff or redundancy is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks essential contextual details for an agent to use it correctly. It does not specify the label track requirement, the behavior when no selection exists, or how the labels are positioned relative to the selection start/end. There is no mention of output or confirmation, and the description is too sparse to fully guide an agent without additional assumptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaningful context to all three parameters: 'interval' is clarified as time in seconds, 'adjust' is explained as fitting the selection evenly, and 'label_text' notes that labels will be numbered. This goes beyond the schema's type/default information, providing practical understanding. However, it could elaborate on the exact numbering scheme or how 'adjust' interacts with the interval, so it is not perfect.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Create labels at regular time intervals across the selection or project.' It uses a specific verb and resource, and the mention of 'regular time intervals' distinguishes it from other label tools. However, the phrase 'across the selection or project' is ambiguous about whether it applies to the entire project or just the current selection, which slightly reduces clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide any guidance on when to use this tool versus alternatives like label_add_batch or label_add_at. It lacks context on typical use cases, prerequisites, or situations where this tool is preferred. The only implicit hint is that it creates multiple labels at regular intervals, but no explicit usage instructions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_silence_regionsA
Replace the audio under every label with silence, keeping the timeline length.
Use when the material must not get shorter — redacting a name, muting a noise burst in a take that has to stay in sync. Acts on labeled regions within the current selection on the SELECTED AUDIO TRACKS — select the audio tracks and time range first. The labels themselves stay where they are.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behaviors: it replaces audio with silence, preserves timeline length, and does not move labels. However, it does not mention reversibility or undo behavior, but given its edit nature, it's reasonably transparent. Since there are no annotations, the description carries the burden and it covers the main effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: it leads with the core action, then gives the use-case rationale, and finally the operational context (selection and tracks). Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and no parameters, the description provides sufficient context for an agent to invoke it correctly. It explains the effect on audio and labels, and clarifies the required preconditions (selected tracks and time range). No critical information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so there is nothing to explain. The description implicitly conveys that the tool uses the current selection and selected tracks as context, which is not a parameter but contextual information. No parameter explanations are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Replace' and the resource 'audio under every label', with the explicit scope of 'keeping the timeline length'. It also clarifies that it acts on 'labeled regions within the current selection on the SELECTED AUDIO TRACKS', which differentiates it from similar tools like delete or cut.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use it: 'Use when the material must not get shorter' and gives concrete examples (redacting a name, muting a noise burst) that require preserving sync. It also provides preconditions: 'select the audio tracks and time range first'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
label_split_regionsA
Split the audio clips at every label boundary.
Prepares segment boundaries for separate handling without removing anything. Acts on labeled regions within the current selection on the SELECTED AUDIO TRACKS — select the audio tracks and time range first. The labels themselves stay where they are.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the operation is non-destructive ('without removing anything'), that labels remain unchanged ('The labels themselves stay where they are'), and that it acts on selected tracks and time range. This goes beyond the obvious implication of the name, providing useful behavioral detail for a zero-parameter tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a compact paragraph with no fluff. The main action is front-loaded in the first sentence, followed by essential clarifications (non-destructive, scope, preconditions, label behavior). Every sentence adds value and there is no redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (zero params, no output schema) and the presence of many sibling tools, the description covers the key points an agent needs: what it does, that it's non-destructive, that it requires a selection and selected tracks, and that labels persist. It could mention that splitting results in separate clip regions, but that is implied and not critical. Overall, it is sufficiently complete for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the input schema is trivially complete (100% coverage). The description does not need to add parameter-level meaning, and it correctly omits any param details. Baseline for no parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a precise verb+resource: 'Split the audio clips at every label boundary.' It clearly differentiates from sibling edit tools (like edit_split) by specifying the label-driven trigger and the non-destructive nature ('without removing anything'), and from label manipulation tools (e.g., label_cut_regions, label_delete_regions) by the phrase 'without removing anything' and 'labels stay where they are.' The scope is also explicit: acts on labeled regions within the current selection on selected tracks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit preconditions: 'select the audio tracks and time range first.' It also implies when to use it by stating it does not remove anything, which suggests using this tool when you need to split without deletion. However, it does not explicitly name alternative tools for cases where deletion is desired (e.g., label_cut_regions, label_delete_regions), so it lacks full when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
limiterB
Apply a limiter to prevent audio from exceeding a threshold. Use after compression.
Default ceiling is -1.0 dB, the industry standard for streaming platforms.
Args: limit_db: Maximum output level (dB). Default: -1.0 hold_ms: Hold time in milliseconds. Default: 10.0 makeup_gain: Apply makeup gain ("Yes" or "No"). Default: "No" limiter_type: "SoftLimit", "HardLimit", "SoftClip", "HardClip". Default: "SoftLimit" gain_left: Input gain for left channel (dB). Default: 0.0 gain_right: Input gain for right channel (dB). Default: 0.0
| Name | Required | Description | Default |
|---|---|---|---|
| hold_ms | No | ||
| limit_db | No | ||
| gain_left | No | ||
| gain_right | No | ||
| makeup_gain | No | No | |
| limiter_type | No | SoftLimit |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the intended effect and the default ceiling, but omits whether the operation is destructive, whether audio must be selected first, and what happens after processing. For a modifying effect, this leaves important operational behavior undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: one purpose sentence, a useful industry-standard note, then a tight parameter list. The Args block partially duplicates the schema, but since the schema has no descriptions, this duplication earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should clarify application scope and side effects. It does not state whether the limiter applies to selected audio, a whole track, or the entire project, nor does it mention whether the operation can be undone or what result the agent should expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the Args block meaningfully compensates by documenting all six parameters with units, defaults, and allowed values for limiter_type and makeup_gain. It does not explain the acoustic difference between limiter types or precisely how makeup gain is applied, but it gives enough semantic information to invoke the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Apply a limiter to prevent audio from exceeding a threshold.' This makes the core function clear and distinct from generic effects, though it does not explicitly name a sibling like compressor or normalize for contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The instruction 'Use after compression' provides a clear and practical sequencing guideline for when this tool fits in a workflow. It does not mention alternatives or when not to use it, but the context is sufficiently directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
loudness_normalizeA
Normalize audio to a target perceived loudness in LUFS.
DANGER — READ BEFORE USING: This tool can DESTROY audio if used incorrectly. It boosts OR reduces audio to hit the target LUFS. On quiet or poorly recorded audio, it may boost by 20-30 dB, causing severe clipping and distortion that ruins the file.
DO NOT use this tool:
Right after a pipeline (pipelines already handle loudness safely)
On raw/unprocessed audio (clean it up first)
Without first running auto_analyze_audio to check current levels
If the audio peaks below -20 dB (it's too quiet — use normalize first to gently raise levels)
ONLY use this tool when the user EXPLICITLY asks for LUFS normalization AND the audio has already been processed and has healthy levels (peaks between -6 dB and -1 dB).
Targets (only use these values):
-16 LUFS: Podcast, broadcast, Apple Music
-14 LUFS: Spotify, YouTube, most streaming
-11 LUFS: Loud masters (hip-hop/EDM)
Args: lufs_level: Target loudness in LUFS (-50 to -5). Default: -16.0 stereo_independent: Normalize L/R channels independently. Default: False dual_mono: Treat mono as dual-mono for correct LUFS measurement. Default: True
| Name | Required | Description | Default |
|---|---|---|---|
| dual_mono | No | ||
| lufs_level | No | ||
| stereo_independent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully carries the behavioral disclosure burden. It openly warns that the tool can DESTROY audio, boosts or reduces to hit the target LUFS, can apply 20-30 dB of gain causing clipping and distortion, and requires safe peak ranges before use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but appropriately structured and front-loaded: danger warning first, then prohibited use cases, then the only acceptable use, then targets and args. Every section provides operational value, and the critical warnings appear before any parameter detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive audio mutation tool with no annotations and no output schema, the description covers the risk profile, prerequisites, alternatives, valid target values, and parameter behavior. An agent has enough information to decide when to call it and how to invoke it safely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description's Args section gives each parameter meaningful semantics: lufs_level with a valid range and default, stereo_independent explaining L/R channel treatment, and dual_mono explaining correct LUFS measurement. This fully compensates for the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific operation: normalize audio to a target perceived loudness in LUFS. It explicitly distinguishes this from the sibling normalize tool by calling normalize the gentle alternative for quiet audio, and it restricts use to explicit LUFS normalization requests.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-not-to-use guidance: not after a pipeline, not on raw audio, not without auto_analyze_audio, and not when peaks are below -20 dB. It also names the only acceptable condition and points to normalize as the alternative for quiet audio.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
noise_reductionA
Apply noise reduction to the selected audio. You MUST call get_noise_profile first on a region of pure noise, then select the audio you want to clean, then call this.
WARNING: Values above 20 dB risk audible artifacts (warbling, metallic sound). Use 6-12 dB for gentle cleanup, 12-20 dB for moderate noise. Only exceed 20 dB for extremely noisy recordings where some artifact trade-off is acceptable.
Args: noise_reduction_db: Amount of noise reduction in dB (0-48). Default: 12 sensitivity: How sensitive the detection is (0-24). Default: 6 frequency_smoothing: Number of frequency smoothing bands (0-12). Default: 3
| Name | Required | Description | Default |
|---|---|---|---|
| sensitivity | No | ||
| noise_reduction_db | No | ||
| frequency_smoothing | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does warn about audible artifacts above 20 dB and explains parameter trade-offs, which is useful. However, it does not state whether the operation destructively modifies the selected audio, whether it is undoable, or what happens if the required noise profile has not been captured.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured: main action first, mandatory precondition second, risk warning third, and a clean Args list last. Every sentence adds operational value, and the formatting makes the prerequisite and defaults easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-parameter effect tool with no output schema, the description covers invocation order, parameter semantics, defaults, and risk guidance. It is only missing a bit of context about post-conditions, such as whether the selected audio is replaced or rendered and what error occurs if the noise profile precondition is not satisfied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only parameter titles and defaults with zero description coverage. The description's Args block fully compensates by explaining each parameter's meaning, units, allowed range, and default, plus practical guidance for the dB parameter. This is exactly the semantic enrichment the schema lacks.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Apply noise reduction') and the target resource ('the selected audio'), making the tool's purpose obvious. It is easily distinguishable from siblings like click_removal or effect_repair by its name and focus, though it does not explicitly contrast itself with those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit workflow ordering: call get_noise_profile first, select the audio, then call this tool. It also provides practical dB ranges for different cleanup scenarios. It stops short of a 5 because it does not explicitly say when not to use this tool versus alternatives like click_removal or auto_cleanup_audio.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
normalizeA
Normalize the selected audio to a target peak level.
WARNING: This boosts OR reduces audio to hit the target. If audio peaks at -30 dB and you normalize to -1 dB, it will BOOST by 29 dB — potentially blowing out the audio. ALWAYS check current audio levels first (use project_get_info) before normalizing.
Guidelines — choose your target based on what comes next:
-3 dB (default): Safe general-purpose level with headroom for further processing
-6 dB: Conservative, good for unknown or problematic audio
-1 dB: ONLY as a final ceiling on already-mastered audio (never on raw audio)
-12 dB or lower: For very quiet audio that needs gentle boosting
Args: peak_level_db: Target peak level in dB (-60 to 0). Default: -3.0 remove_dc: Remove DC offset before normalizing. Default: True stereo_independent: Normalize L/R channels separately (fixes unbalanced recordings). Default: False
| Name | Required | Description | Default |
|---|---|---|---|
| remove_dc | No | ||
| peak_level_db | No | ||
| stereo_independent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It clearly discloses that normalization can boost or reduce audio, gives a concrete dB example, and warns about potentially blowing out the audio. It could go further by stating whether the operation is destructive or undoable, but the risk warning and dB behavior are strongly transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is longer than average but every section earns its place: one-line function summary, a high-signal warning, actionable target-level guidelines, and parameter details. It is well-structured with bullets and labels, and the most important risk is front-loaded immediately after the summary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with no annotations and no output schema, the description covers operation, risks, preconditions, parameter semantics, and recommended values. It is missing only minor edge-case context such as what happens if no audio is selected or whether the change can be reverted, but it is otherwise complete for safe and correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema_description_coverage is 0%, so the description must fully compensate for the input schema's bare type/default info. It thoroughly explains each parameter: peak_level_db with range, default, and target-selection guidance; remove_dc with its function; and stereo_independent with its purpose. This is excellent parameter documentation beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource pair: 'Normalize the selected audio to a target peak level.' This immediately distinguishes it from related sibling tools like effect_amplify and loudness_normalize by emphasizing peak-level normalization rather than arbitrary gain or loudness matching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit target-selection guidelines based on what processing comes next, and tells the agent to check current audio levels with project_get_info before normalizing. It includes a clear when-not case ('-1 dB only on already-mastered audio, never on raw audio'), though it does not name alternative sibling tools for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_closeB
Close the current Audacity project.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations to cover safety or side effects, so the description carries the full burden. It simply says 'close' without indicating whether the action prompts for saving, discards unsaved changes, or has other destructive consequences. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no superfluous words. It is efficient and front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool that closes a project, the description lacks essential context: what happens to unsaved changes, whether it is reversible, and any side effects. Without an output schema or annotations, this is incomplete for an agent to safely invoke.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is fully covered (100%). The description does not need to explain parameter semantics; the baseline of 4 applies because there is nothing to add.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (close) and the resource (current Audacity project). It is specific enough to distinguish from siblings like project_save, project_new, or project_open, which have different actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites, such as saving before closing, or whether unsaved changes might be lost. The user must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_edit_metadataA
Open the metadata editor dialog to view/edit track metadata (title, artist, etc.). This opens a modal dialog in Audacity — the command waits until the user closes it.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It clearly states the dialog is modal and that the command blocks until the user closes it, an essential scheduling fact. It does not cover save/cancel semantics, but the key blocking trait is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler. The purpose is front-loaded, and the second sentence adds the important blocking behavior without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless dialog-launching tool, the essential operational facts are present: what the dialog is, what it edits, and that invocation blocks until user closure. A note about confirm/cancel outcomes would be nice but is not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the 0-parameter baseline of 4 applies. The description's mention of editable fields is supplementary; there are no schema parameters that need elaboration.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description provides a specific verb and resource: it opens the metadata editor dialog and lists representative fields. It is clear but does not explicitly differentiate itself from sibling tools, and 'track metadata' is slightly imprecise for a project-level metadata dialog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: the tool is for interactively viewing/editing metadata through a dialog. However, there is no explicit when-not-to-use guidance or mention of alternatives such as track_set_properties for programmatic track changes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_export_audioA
Export the project audio to a file. Format is determined by file extension.
MANDATORY: ALWAYS tell the user where the file will be saved BEFORE exporting. Example: "I'll save your audio to C:\Users\Name\Music\file.mp3"
NEVER save directly to the user's home folder (e.g. ~/file.mp3 or C:\Users\Name\file.mp3). ALWAYS save to a subfolder. If the user doesn't specify a path, call get_default_export_folder to get their Music folder and save there. Acceptable locations:
Music folder: ~/Music/file.mp3
Documents folder: ~/Documents/file.mp3
Desktop: ~/Desktop/file.mp3 NEVER save to the home folder root — this clutters the user's home directory.
Args: path: Absolute path for exported file. Extension determines format (wav, mp3, ogg, flac, aiff). num_channels: Number of channels (1=mono, 2=stereo). Default: 2
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| num_channels | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the format-by-extension behavior, the mandatory user-notification, the home-folder prohibition, and the num_channels semantics. It also implies the tool may delegate to get_default_export_folder. This is thorough and honest about side effects and constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is longer than average but each section serves a purpose: the primary action, mandatory user-facing behavior, and param details. The mandatory note is front-loaded, and the argument list is clear. It is not verbose; every sentence adds value, though it could be slightly tightened by moving the home-folder exceptions into a single bulleted list without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a file-export tool with no output schema, this description is complete. It covers the parameters, format determination, folder selection logic, and a cross-reference to a sibling helper (get_default_export_folder). The agent can invoke it correctly without missing critical information. Error handling is not required for completeness here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description fully compensates. 'path' is explained as an absolute path with extension-based format mapping; 'num_channels' is explained with explicit mono/stereo mapping and a default. This gives agents everything they need beyond the raw schema names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Export') and resource ('project audio') with a clear output (a file). It distinguishes itself from siblings like raw_export_audio by specifying 'project' audio, implying the whole project mix rather than raw clips. This is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use instructions: always tell the user the save location, never save to the home folder, and call get_default_export_folder when no path is given. It clearly states acceptable locations and exclusions. However, it does not explicitly compare against alternatives like raw_export_audio, so it lacks a full when-not-to-use statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_export_labelsB
Export all labels to a text file.
Args: path: Absolute path for the exported labels file
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only says labels are exported to a text file; it does not disclose whether the file is overwritten, what format or extension is expected, what happens with no labels, or whether the operation has side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with the core action stated first and a minimal parameter explanation. There is no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool, the essentials are present, but the lack of file-format, overwrite, and alternative-tool guidance leaves ambiguity. The presence of the sibling 'label_export' tool makes this incompleteness more noticeable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no description for the 'path' parameter, so the description's 'Absolute path for the exported labels file' adds meaningful semantics. It clarifies the required input, though it does not mention file extension or directory requirements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action and resource: 'Export all labels to a text file.' This distinguishes it from audio-export and processing tools, though it does not explicitly differentiate it from the similarly named sibling 'label_export'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus label_export, label_export_chapters, or label_export_audio_segments. The description implies a simple export use case but does not state exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_get_infoB
Get information about the current project.
Args: info_type: Type of info to retrieve. One of: Tracks, Clips, Envelopes, Labels, Boxes, Commands
| Name | Required | Description | Default |
|---|---|---|---|
| info_type | No | Tracks |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. The 'Get' verb implies a read-only operation, but there is no mention of what happens if no project is open, whether errors are returned, what the response structure looks like, or how each info_type behaves. An agent has no behavioral guarantees beyond the inferred read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the purpose in the first sentence, followed by a compact parameter definition. It wastes no words. The docstring-style 'Args:' formatting is slightly awkward for an MCP tool description but acceptable and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotation coverage, so the description is the only source of contract information. It lists the six info types but does not describe what data each returns, the output format, or failure behavior. For a multi-mode retrieval tool, this is a significant completeness gap; an agent cannot predict the return shape for Tracks versus Labels, for example.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides zero description coverage and no enum for info_type, so the description must compensate — and it does, by enumerating the six valid values: Tracks, Clips, Envelopes, Labels, Boxes, Commands. This is essential information the structured schema lacks. However, the description stops at listing values and does not explain what each info_type returns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb+resource ('Get information about the current project'), and identifies this as a project-scoped read tool. It is implicitly distinguished from siblings like track_get_info by the project-level scope, though no alternative is named explicitly. Minor gap: 'current project' is not precisely defined, and there is no explicit differentiation from other project_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The info_type list hints at the six retrieval modes but the description never states when this should be called instead of track_get_info or other info-gathering tools, nor does it explain what 'current project' means or whether a project must be open first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_import_audioA
Import an audio file into the current project. Creates a new track.
Args: path: Absolute path to the audio file (wav, mp3, ogg, flac, etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. It does disclose the main side effect ('Creates a new track') and supported formats, which goes beyond the schema. However, it does not mention project-open prerequisites, failure behavior, or whether the file is copied/linked, leaving those behaviors implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences plus a single args line; the essential purpose and side effect are front-loaded, and no words are wasted. The format examples are placed exactly where they are useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter import tool this is largely sufficient: an agent knows what to pass and what will happen. It falls short only in not stating explicit prerequisites (an open project) or what the tool returns/does on failure, which would matter more without annotations or output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema only gives `path` as a string with no explanation, and schema description coverage is 0%. The description compensates by specifying that the path must be absolute and enumerating common audio formats (wav, mp3, ogg, flac, etc.), giving the agent concrete invocation guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Import an audio file'), the target resource ('current project'), and the key side effect ('Creates a new track'), so an agent can distinguish it from unrelated edit/effect/transport tools. It does not explicitly differentiate from the sibling raw_import_audio, though the programmatic path argument and project_ prefix imply the difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case—bring an audio file into the current project as a new track—but gives no explicit guidance about when to choose this over raw_import_audio or project_import_midi, and no 'when not to use' information. This is enough for obvious import requests but not for routing among similar import siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_import_midiA
Import a MIDI file into the current project.
Args: path: Absolute path to the MIDI file (.mid, .midi)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It clearly states the main action, but does not mention resulting project state, whether existing tracks are preserved, failure behavior on invalid paths, or what the tool returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the action, followed by a minimal and clear parameter explanation. Every sentence contributes necessary information with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one parameter and no output schema, the description is largely complete: it names the target project, the file type, and the required path semantics. It could be slightly stronger by noting the expected result, such as tracks being created, but the essential calling context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only the parameter name and type, so the description's 'Absolute path to the MIDI file (.mid, .midi)' adds crucial semantics: it specifies the path format and accepted file extensions. For a single-parameter tool, this fully compensates for the schema's 0% description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Import a MIDI file into the current project.' The file type 'MIDI' and target 'current project' clearly distinguish this from sibling tools like project_import_audio and raw_import_audio.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is clear: use this tool when a MIDI file needs to be imported into the current project. However, it does not explicitly name alternatives or state when not to use it, such as for audio imports.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_newA
Create a new empty Audacity project.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of explaining side effects, but it does not disclose what happens to the current project, unsaved changes, or whether a prompt is shown. 'Create' implies mutation, yet no safety-relevant behavior is described.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single, front-loaded eight-word sentence with no filler or repetition. Every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool the description is minimally viable, but it leaves the project lifecycle unclear—particularly whether creating a new project affects the existing one. The missing side-effect disclosure keeps it from being complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero properties and 100% coverage, so there are no parameters to document. The description adds no parameter detail, but none is needed; this matches the zero-parameter baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Create'), resource ('Audacity project'), and property ('new empty'), which makes it unmistakable and distinct from sibling tools like project_open and project_save. No ambiguity about the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use case is implied by 'new empty'—use it when starting from a blank project—but the description does not explicitly state when to use it versus alternatives, nor does it name exclusions such as project_open or project_save.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_openB
Open an existing Audacity project file (.aup3).
Args: path: Absolute path to the .aup3 project file
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits but only states the action. It does not mention side effects (e.g., replacing current project, prompts to save), error behavior for missing files, or any prerequisites beyond existence.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with a clear purpose statement and a single argument definition. All content earns its place with no unnecessary wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple open operation, the description is minimally adequate but lacks important context such as whether it loads into the current session, interactions with unsaved changes, or return behavior. Given no annotations or output schema, a bit more explanation would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains the parameter meaning beyond the schema: 'Absolute path to the .aup3 project file' adds specificity about path type and file extension, which the schema does not provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool opens an existing Audacity project file (.aup3), with a specific verb and resource. It distinguishes from project_new by using 'existing', though it does not explicitly compare to siblings like raw_open or project_import_audio.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as raw_open or project_import_audio. The description focuses only on the action, not on context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_saveA
Save the current Audacity project. ONLY call this when the user explicitly asks to save. Do NOT auto-save after effects or pipelines — the user controls when to save.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that the user controls when saving happens, which is a useful behavioral trait. However, it does not disclose what happens during the save operation (e.g., whether it overwrites without confirmation, prompts for file path if unsaved, or fails silently if no project is open). This is a notable gap for a mutation-like tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences with no filler. The core action ('Save the current Audacity project') is front-loaded, and the usage guardrail follows immediately. Every sentence earns its place, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description covers the essential elements: what it does and when to call it. It does not mention error handling or return values, but these are often not critical for a simple save command. The description is sufficiently complete for an agent to use this tool correctly in most scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description correctly adds no parameter-specific details. The baseline for 0 parameters is 4, and the description focuses on the tool's purpose and trigger condition rather than redundant parameter info, which is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Save the current Audacity project.' It uses a specific verb and resource, and implicitly distinguishes from sibling save variants like project_save_as or raw_save by emphasizing 'current project'. An agent can tell exactly what this tool does without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage conditions: call 'ONLY when the user explicitly asks to save' and explicitly warns against auto-saving after effects or pipelines. This provides a clear guardrail and effectively differentiates when to use this tool versus not, without needing to name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
project_save_asA
Save the current project to a new .aup3 file. ONLY call when user explicitly asks. Do NOT auto-save after effects or pipelines.
Args: path: Absolute path for the new .aup3 file
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It explains the basic action but does not disclose whether the current project is re-pointed to the new file, whether an existing file at the path would be overwritten, or any permission requirements. The 'new .aup3 file' phrasing hints at non-destructiveness, but consequences remain unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: the purpose appears first, followed by a critical usage guardrail and a single parameter explanation. Every sentence earns its place with no redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool without annotations or an output schema, the description is mostly complete: it states the operation, trigger condition, and parameter semantics. The only notable gap is the lack of detail about side effects on the current project state, which would matter for a save-as operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only defines 'path' as a string with no description. The tool description compensates by specifying 'Absolute path for the new .aup3 file', adding both path type and expected file extension. It could further clarify overwrite or file-existence behavior, but it covers the core meaning well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Save') and resource ('current project') and names the exact target format ('a new .aup3 file'). This clearly differentiates it from sibling tools such as project_save or project_open.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to call ('ONLY call when user explicitly asks') and when not to ('Do NOT auto-save after effects or pipelines'). It does not name an alternative tool, but the when/when-not guidance is strong enough to prevent misuse.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_allA
Select all audio in all tracks. Selects both tracks and time range.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the core behavior (selects both tracks and time range) but omits any mention of side effects, such as whether the selection replaces the current selection or if it affects hidden/locked tracks. For a selection tool, this is adequate but not rich; it does not go beyond the obvious. A 3 reflects that it provides essential behavior but lacks nuance that could matter in edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no redundant wording. The key information is front-loaded ('Select all audio in all tracks') and the clarification about selecting both tracks and time range is concise. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter selection tool, the description is sufficient: it states what is selected (all audio, all tracks, time range). It does not need to describe return values (none) or elaborate on side effects. It is complete enough for an agent to invoke it correctly, though a bit more on whether it replaces existing selection could push it to 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, and schema description coverage is 100% (trivially, since there are no properties). Per the rubric, 0 params receives a baseline of 4. The description adds no parameter information because there are none to explain, and it does not need to compensate for any gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Select all audio in all tracks' and adds 'Selects both tracks and time range.' This is specific and distinguishes it from sibling tools like select_none or select_region, which select only part of the project. The verb and resource are explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage—when you want to select everything—but does not explicitly contrast with alternatives like select_tracks or select_region, nor does it state when not to use it. Given the tool's self-evident purpose, this is an implied usage scenario rather than explicit guidance, so it earns a mid-range score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_clipB
Select the clip under the cursor.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose side effects, such as whether the previous selection is replaced or extended, or whether it affects multiple clips. With no annotations, the agent lacks information about the tool's read/write nature and impact on the project state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. It directly states the action and target without ambiguity, making it easy to read and process.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal and lacks context about the selection behavior (e.g., does it deselect others? Does it work on the active track?). While the tool name provides some hints, the description alone does not fully equip an agent to understand the implications of invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so the description does not need to explain any. It adds no extra meaning beyond the empty schema, but since there are no parameters, this is adequate. The score reflects a neutral baseline without missing parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (select) and the target (clip under cursor), distinguishing it from other selection tools like select_all or select_none. However, it could be more specific about what constitutes a 'clip' in the context of the application, though it is likely understood.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternative selection methods (e.g., select_all, select_region). The description does not mention any preconditions or contexts where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_cursor_to_track_endA
Select from the current cursor position to the end of the track.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of explaining behavior. It discloses the action (selecting a range based on cursor position) and the target (end of track), but it does not mention whether the existing selection is replaced, extended, or how the tool behaves if there is no active cursor position.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no filler. It front-loads the verb and resource, and every word adds meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter command with no output schema, the description is nearly complete: it defines the start point, end point, and action. It could be improved by explicitly noting that it operates on the current track and that the selection replaces the prior selection, but those are minor gaps for this simple operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description does not need to explain parameter details; the phrase 'current cursor position' and 'end of the track' already anchors the semantic context for the no-parameter invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (select), a specific resource (from the current cursor position to the end of the track), and the scope of the selection. It clearly differentiates from siblings like cursor_to_track_end and select_clip by describing the exact range being selected.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied by the phrase 'from the current cursor position to the end of the track,' so an agent can infer when this should be used. However, it does not explicitly mention alternatives or state when not to use it, e.g., when needing to select to the start of the track or select a clip.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_noneA
Deselect all audio.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the main behavior — deselecting all audio — but adds no extra context such as whether the action is undoable or scoped to the current project. For a zero-parameter action, this is minimally suficient but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single declarative sentence with no wasted words. The action verb is front-loaded and every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description is largely complete: it identifies the action and scope. It could nominally mention it applies to the current project or clears selected audio across all tracks, but 'Deselect all audio' conveys the necessary information to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool accepts zero parameters, and the input schema already reflects this with an empty properties object. Since there are no parameters to describe, the baseline for zero-parameter tools applies and the description does not need to add parameter-specific meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Deselect all audio.' uses a specific verb (deselect) and a clear resource (all audio), fully stating the tool's effect. It distinguishes itself from sibling selection tools like select_all and select_region without needing to open their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended usage is implied: call this when you want to clear the current selection across the project. However, the description does not explicitely say when to use it vs. alternatives or provide any context about prerequisites or exclusions. It's inferable from the name but not articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_regionC
Select a time region in the current track(s). Many effects operate on the selection.
Args: start: Start time in seconds end: End time in seconds
| Name | Required | Description | Default |
|---|---|---|---|
| end | Yes | ||
| start | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does not mention that making a new selection replaces any prior selection, that the operation is non-destructive, how the tool handles invalid ranges (end before start), or what state changes occur beyond the selection itself. The minimal prose conveys intent but omits the behavioral context an agent needs to anticipate side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose sentence is front-loaded and the argument block is tight, with every line earning its place given the 0% schema coverage. The Args section slightly duplicates the schema's parameter names but adds necessary units and meaning, so it is justified. Overall it is efficient with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with no output schema and no annotations, the description covers the core invocation adequately. What is missing is the relationship to the many select* siblings and the behavioral consequence that an effect applied afterward will target this region. These gaps are meaningful for correct tool selection and sequencing, so the description is minimally viable rather than complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate — and it does by attaching meaning and units to both parameters ('Start time in seconds', 'End time in seconds'), which the schema properties lack. However, it omits constraints such as whether end must be greater than start, whether values are absolute timeline positions, or how out-of-range values are handled. It provides enough to make a plausible call but not full semantic clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource — 'Select a time region in the current track(s)' — which clearly identifies a timeline-range selection scoped to existing tracks. The time-based nature distinguishes it from track-level siblings like select_tracks and select_clip, though it does not explicitly name those alternatives. Minor deduction because the differentiation relies on inference rather than an explicit contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage hint is 'Many effects operate on the selection,' which weakly implies this tool is a prerequisite before applying effects. There is no explicit guidance about when to choose select_region versus select_all, select_none, select_tracks, select_clip, select_zero_crossing, or cursor_set_position — a decision the agent must make among many closely related siblings. This is effectively no routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_tracksA
Select one or more tracks by index.
Args: track: Starting track index (0-based) count: Number of tracks to select
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| track | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It states the basic selection operation and parameter meaning, but does not disclose whether the selection replaces the existing selection, whether tracks must already exist, or what happens on invalid indices. Silent on side effects beyond the bare selection action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core purpose, followed by a clean Args block. Every sentence contributes necessary information, with no redundant or marketing language.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter selection tool, the description is moderately adequate but not fully complete. It does not explain selection replacement behavior, bounds, invalid track handling, or whether the count selection is contiguous, and there is no output schema or annotations to fill these gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must supply semantics for both parameters. It does: 'track' is clearly the starting index with 0-based convention, and 'count' is identified as the number of tracks to select. This is meaningful beyond the bare schema titles 'Track' and 'Count'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Select'), names the resource ('tracks'), and provides the indexing mechanism ('by index'). This clearly distinguishes it from sibling tools like select_all, select_none, select_region, and select_clip, which operate on different scopes or selection modes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives. There is no mention of selecting all tracks, selecting clips, or using region-based selection, so the agent receives no explicit decision support for choosing among the many sibling selection tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_zero_crossingA
Adjust the current selection boundaries to the nearest zero crossings. Useful before cuts to avoid audible clicks at edit points.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden. It clearly states that selection boundaries are adjusted to zero crossings and why that matters. However, it does not disclose prerequisites (e.g., an existing selection), whether the operation is reversible, or whether it affects only the selection and not the underlying audio.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, no filler, and the core action is front-loaded. The 'useful before cuts' rationale adds purpose without bloating the description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool acting on the current selection, the description is largely complete: it says what it does, why it is useful, and when to use it. The only minor gap is no mention of alternatives or edge cases, but the tool is simple enough that this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema description coverage is 100%, so there is no parameter documentation burden. The description correctly focuses on behavior rather than parameters.This matches the baseline for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Adjust the current selection boundaries') and a clear resource ('current selection boundaries'), and explains its purpose ('nearest zero crossings'). It is clear and distinguishes itself from cut operations, but it does not explicitly differentiate itself from the sibling tool 'nearest_zero_crossing'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context for when to use the tool: 'Useful before cuts to avoid audible clicks at edit points.' This tells an agent the practical scenario, though it does not mention when not to use it or name alternative tools like edit_cut or nearest_zero_crossing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_add_labelA
Add a new empty label track to the project.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It only states the primary effect (creating a label track) without disclosing side effects such as selection changes, undo behavior, or impact on existing tracks. This is the minimum possible for a mutation tool and lacks enrichment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence conveys the entire purpose with no redundant words. It is appropriately sized and front-loaded with the action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple no-parameter mutation tool, the description covers the core function. It does not mention return values or side effects, but given the simplicity and the absence of an output schema, the description is arguably complete enough for an agent to proceed correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is trivially 100%. The description does not need to elaborate on parameter details since there are none. This meets the baseline expectation for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (add), the resource (a new empty label track), and the scope (to the project). It is easily distinguishable from sibling tools like track_add_mono/stereo which create audio tracks, and label_add which likely adds labels to an existing track.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it—when you need to add a label track—but it does not explicitly state when not to use it or mention any alternatives. For a zero-parameter tool with a straightforward purpose, this is adequate though minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_add_monoA
Add a new mono audio track to the project.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the core action but does not mention side effects, whether the new track becomes selected, or whether it is added at the end of the track list. 'Add' implies non-destructive, but the description stops short of explaining any observable outcomes beyond the bare action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no extraneous words. The action, object, and target are all front-loaded and clearly stated. The description earns its place and nothing more is needed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description is nearly complete: an agent knows exactly what action will occur. It does not mention return values or post-conditions, but for a simple 'add track' operation these are largely self-evident. A minor omission is the lack of detail about where the track is added (e.g., end of session), but this does not significantly hinder correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0 parameters and 100% schema description coverage (trivially, since there are no properties), the description does not need to add parameter details. The baseline for 0-parameter tools is 4, and nothing in the description is missing or misleading on this front.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Add'), a specific resource ('mono audio track'), and a clear target ('to the project'). It also differentiates from the sibling `track_add_stereo` by explicitly naming the mono variant, leaving no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool: when a mono track is needed. However, it does not explicitly state when not to use it or reference `track_add_stereo` as the alternative. The distinction is left to inference from the tool name and sibling list, so guidance is adequate but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_add_stereoA
Add a new stereo audio track to the project.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It clearly communicates the mutative outcome (a new stereo track is created), but does not disclose whether the new track becomes selected, how it is positioned, or whether it is undoable. This is adequate but not rich for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes to the meaning, and it is appropriately sized for a zero-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the zero-parameter schema, simple behavior, and low complexity, the description is mostly complete. It covers what the tool does and the resource involved, though it could mention common side effects like selection changes for full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so according to the rubric the baseline is 4. The description adds meaning by specifying the type of track being created ('stereo'), leaving no ambiguity about what is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Add'), a specific resource ('new stereo audio track'), and the destination ('to the project'). It is clear and the word 'stereo' differentiates it from the sibling track_add_mono, though it does not explicitly name that alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as track_add_mono or when a stereo track is preferred. The description only states what it does, not the conditions under which an agent should choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_align_end_to_endB
Align selected tracks end-to-end (sequentially). Select the tracks first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explains the action and the prerequisite but does not state whether the operation is destructive, reversible, how it affects clips outside the selection, or what happens to gaps and timestamps. For a mutating edit tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, with the core action front-loaded and the prerequisite stated immediately after. No filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate for a simple selection-based operation, but because there are no annotations and no output schema, it should also clarify the effect on the rest of the project and whether the operation can be undone. It covers the key precondition but leaves behavioral consequences unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is empty, so there is nothing for the description to explain. The baseline for a no-parameter tool is 4, and the description appropriately emphasizes the selection prerequisite instead.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Align selected tracks end-to-end (sequentially).' The phrase 'sequentially' clarifies the ordering behavior and helps distinguish it from nearby siblings like edit_join or track_mix_and_render. It is clear but not perfectly detailed about what 'align' produces in the timeline.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an explicit prerequisite: 'Select the tracks first.' However, it does not say when to prefer this tool over alternatives such as edit_join, track_mix_and_render, or edit_disjoin, nor does it mention exclusions or conditions under which it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_get_infoA
Get information about all tracks in the project (names, types, rates, etc.).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'Get information' clearly signals a read-only, non-destructive query, and mentioning returned data types adds transparency. It discloses no side effects and is not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word contributes meaning: the verb, resource, scope, and examples all earn their place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, no output schema, and no annotations, the description gives an agent everything needed to invoke the tool and understand the returned scope. Nothing essential is missing for this simple getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is 100%, so there are no undocumented inputs. Per the baseline for zero-parameter tools, the description does not need to add parameter-level detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get'), a clear resource ('tracks in the project'), and a well-defined scope ('all tracks'), plus concrete examples of the information returned ('names, types, rates'). This clearly distinguishes it from sibling mutators like track_set_properties and from project_get_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving track-level information, so an agent seeking track facts would understand its use. However, it does not explicitly state when not to use it or mention alternatives such as project_get_info for project-level metadata.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_mix_and_renderA
Mix and render selected tracks into a single track. Select tracks first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. It explains the core operation but never states whether the original selected tracks are replaced or destroyed, whether the render is in-place, or whether the operation is reversible. Given the sibling `track_mix_and_render_to_new`, this ambiguity is material.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler: the action is front-loaded and the prerequisite follows immediately. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter mutation tool with no annotations and no output schema, the description gives the essential operation and prerequisite. However, it omits the critical distinction from `track_mix_and_render_to_new` and does not disclose whether the original tracks are affected. This is a meaningful gap, though the core behavior is minimally covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is complete (100% coverage), so there are no parameter-level gaps. The description adds useful implicit-state context by requiring that tracks be selected first, but there is no actual parameter documentation needed. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and outcome: 'Mix and render selected tracks into a single track.' This clearly identifies the verb and resource. However, it does not explicitly distinguish itself from the sibling `track_mix_and_render_to_new`, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear, concrete prerequisite: 'Select tracks first.' This is explicit usage guidance about the state required before invoking the tool. It does not mention alternatives or exclusions, such as when `track_mix_and_render_to_new` would be preferable, so it does not reach a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_mix_and_render_to_newA
Mix and render selected tracks into a new track, keeping the originals. Select tracks first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It clearly communicates that the operation creates a new track while preserving original tracks, which is the key safety-relevant behavior. It could mention failure behavior or resulting track properties, but the most important side effect is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no filler. The main action is front-loaded, and the prerequisite is stated immediately after, making it easy for an agent to parse and act on.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with zero parameters and no output schema, the description is complete: it states what happens, the non-destructive nature, and the required user action. An agent has enough information to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema has 100% coverage, so there is no parameter documentation gap. The description appropriately focuses on usage rather than parameters, which do not exist here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the exact verb and resource ('Mix and render selected tracks into a new track') and clearly states the non-destructive outcome ('keeping the originals'). This also distinguishes it from the sibling track_mix_and_render, which likely replaces the originals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit precondition ('Select tracks first'), which is useful guidance. However, it does not state when to prefer this tool over alternatives like track_mix_and_render, nor what happens if no tracks are selected.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_muteB
Mute or unmute a track.
Args: track: Track index (0-based) mute: True to mute, False to unmute
| Name | Required | Description | Default |
|---|---|---|---|
| mute | No | ||
| track | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations and the description only states the action without revealing side effects, reversibility, or impact on other tracks. The description does not disclose any behavioral traits beyond the bare operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and directly to the point, with no unnecessary words or information. It efficiently communicates the purpose and parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple action, the description is adequate. However, it omits any mention of return values, error handling for invalid track indices, or side effects on playback. Given the lack of output schema, it could benefit from a note about expected results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes a clear explanation of both parameters: track index (0-based) and mute boolean (true=mute, false=unmute). This adds meaning beyond the raw schema, which has no field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the specific action (mute/unmute) and resource (track), and distinguishes from siblings like track_mute_all and raw_track_mute by focusing on a single track.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives (e.g., raw_track_mute, track_mute_all). The description implies a single-track operation but doesn't state conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_mute_allA
Mute all tracks in the project.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It clearly states the global mute effect, but it does not mention reversibility, whether existing mute states are toggled or overridden, or that the operation is non-destructive. This is adequate for a simple command but lacks richer context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. Every word contributes the verb, resource, and scope, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless tool with no output schema, the description fully specifies the operation and scope. There is no missing information an agent needs to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema description coverage is complete, so the description does not need to explain parameters. The global scope statement reinforces that no target track parameter is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the exact action ('Mute all tracks') and the scope ('in the project'), which clearly differentiates it from sibling tools like track_mute (single/selected track) and track_unmute_all (the reverse operation). The verb and resource are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The global scope implies when to use it: when all tracks should be muted. However, it does not explicitly contrast with track_mute or point to track_unmute_all as the reverse operation, so the agent must infer the selection boundary from the sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_removeA
Remove the currently selected track(s). Select tracks first with track_select.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the behavioral disclosure burden. 'Remove' clearly signals a destructive action on selected tracks, but the description adds little beyond the tool name and does not mention undoability, confirmation behavior, or consequences for track content. The selection precondition is useful but primarily supports usage rather than behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler. It front-loads the primary action and immediately follows with the only prerequisite. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter destructive tool with no output schema, the description covers the core action and the necessary precondition. It could add a brief note about undoability or permanent deletion, but given the simplicity and sibling context, the definition is nearly sufficient as-is.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema already covers this fully with 100% coverage. The description does not need to explain parameter behavior, and the prerequisite about selecting tracks is the relevant input-state semantics. This aligns with the baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Remove') and a clear resource ('currently selected track(s)'), and differentiates itself from selection tools like track_select by making clear it operates after selection. It also implicitly distinguishes from edit_delete by targeting tracks rather than audio regions or selections.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs the agent to select tracks first with track_select, giving a clear precondition for correct usage. It does not explicitly name alternative deletion tools or state when not to use it, but the zero-parameter, selection-based design makes the usage context mostly unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_resampleA
Resample the selected track to a new sample rate.
Args: rate: Target sample rate in Hz (e.g. 44100, 48000, 96000). Must be > 0.
| Name | Required | Description | Default |
|---|---|---|---|
| rate | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the basic operation but does not explain whether the resampling is destructive, whether the original audio is replaced, whether undo is possible, or what the actual effect on the project state will be beyond changing the sample rate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the primary action, followed by a clearly labeled Args section. Every sentence adds value: the first states what the tool does, and the second documents the parameter with meaning, examples, and validation. There is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter operation, the description is nearly complete: the parameter is fully documented and the target of the operation is clear. The only minor gap is the lack of information about the operation's side effects or return value, but given the simplicity of the tool and the absence of an output schema, this is not a major omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only the parameter name, type, and default value, with 0% schema description coverage. The description fully compensates by explaining that 'rate' is the target sample rate in Hz, offering concrete examples (44100, 48000, 96000), and adding the constraint 'Must be > 0'. This is exactly what an agent needs to invoke the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Resample') applied to a specific resource ('the selected track') and identifies the key operation ('to a new sample rate'). This is sufficiently distinct from sibling tools like effect_change_speed or effect_change_tempo, which change playback characteristics rather than the underlying sample rate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied clearly: use this tool when you need to change the selected track's sample rate. However, the description does not explicitly provide guidance on when not to use it or mention any alternative tools that might be more appropriate for related operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_selectA
Select a track by index. Many operations require selecting a track first.
Args: track: Track index (0-based)
| Name | Required | Description | Default |
|---|---|---|---|
| track | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explains the action and that it is a prerequisite for many operations, but it does not state whether the selection replaces the current selection, how invalid indices are handled, or any other side effects. This is a notable gap for a state-changing command.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences plus a parameter note. It front-loads the purpose, adds a usage hint, and documents the parameter with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter selection command, it provides the necessary parameter semantics and usage context. However, without annotations or an output schema, it omits behavioral details such as selection mode (replace vs. add) and error behavior, leaving some ambiguity for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only declares an integer named 'track' with no description coverage. The description adds the essential meaning: 'Track index (0-based)'. This fully compensates for the schema's silence on the single parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Select a track by index.' The singular 'a track' and the 'by index' mechanism distinguish it from siblings like select_tracks, select_all, and raw_select, making the tool's purpose immediately clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Many operations require selecting a track first' gives a clear context for when to use the tool. However, it does not explicitly mention alternatives or when not to use it, so it falls short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_set_propertiesB
Set properties of a track by index.
Args: track: Track index (0-based) name: New track name gain: Track gain in dB (-36 to 36) pan: Track pan (-1.0=left to 1.0=right) mute: Mute the track solo: Solo the track
| Name | Required | Description | Default |
|---|---|---|---|
| pan | No | ||
| gain | No | ||
| mute | No | ||
| name | No | ||
| solo | No | ||
| track | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says properties are 'set' and does not explain whether null/omitted properties are left unchanged, whether this affects the selected track or only the indexed track, or what happens with an invalid index. As a mutation tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with a one-line summary, followed by a clean Args list. Every line contributes parameter semantics, and there is no filler or repetition of schema data.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter mutation tool with no annotations and no output schema, the description covers parameter meaning well but omits key contextual details: partial-update behavior, null-property semantics, error behavior, and return value. It is adequate for a simple call but leaves meaningful uncertainty for an autonomous agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It gives useful semantics for all six parameters, including 0-based track indexing, gain range in dB (-36 to 36), and pan range (-1.0 left to 1.0 right). However, it does not clarify the meaning of null/omitted optional parameters, which is an important gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Set') and resource ('properties of a track by index'), and enumerates the exact properties: name, gain, pan, mute, and solo. This helps distinguish it from single-property sibling tools like raw_track_gain or track_mute, though it does not explicitly name any alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance about when to use this tool versus alternatives such as track_mute, track_select, or raw_track_pan. The phrase 'by index' implies one differentiator, but no prerequisites, exclusions, or alternative conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_stereo_to_monoA
Convert the selected stereo track to mono. Select the track first.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose whether the operation is destructive (replaces the original track), creates a new track, or how it handles multiple tracks or the undo state. Without annotations, this lack of behavioral detail leaves the agent uncertain about side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and direct, using two short sentences. It states the action and the prerequisite without any fluff, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description gives a necessary precondition (selecting the track) but does not explain the result or any side effects, such as whether the original stereo track is replaced or if a new mono track is created. It is sufficient for a very simple tool but lacks a complete behavioral contract.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so the schema is empty. The description does not need to add parameter details, but it refers to a 'selected track' which is an implicit context rather than a parameter. Since there are no parameters, the description adds no extra meaning beyond what the tool inherently implies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Convert') and a specific resource ('selected stereo track') with a clear outcome ('to mono'). It distinguishes itself from sibling tools like track_add_mono or track_add_stereo, which create new tracks, by targeting an existing selected track.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a precondition ('Select the track first') but does not mention when to use this tool versus other possible alternatives (e.g., effects that convert stereo to mono) or any context where it should not be used. It gives minimal guidance on selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
track_unmute_allA
Unmute all tracks in the project.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of disclosing behavior. It states the scope ('all tracks in the project') and the action (unmute), but adds no detail about edge cases, idempotence, or effects on selection. This is adequate for a simple state-change command but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It front-loads the action and scope efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter command with no output schema, the description provides everything an agent needs to invoke it correctly. It states both the operation and its project-wide scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and 100% schema coverage, so there is no parameter information missing. The baseline of 4 applies as the description need not compensate for any schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Unmute') and resource ('all tracks in the project'), which precisely identifies the operation. It is clearly distinguishable from sibling tools like track_mute_all and track_mute.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the tool should be used when the agent needs to unmute every track in the project. It does not explicitly name alternatives or exclusions, but for a zero-parameter, self-contained command, the context is clear and no conflicting alternatives exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribe_audioA
[EXPERIMENTAL] Transcribe the entire project audio using faster-whisper (local, offline). Requires separate setup — see installation guide. If this fails, tell the user transcription is experimental and point them to the Transcription Setup docs.
Runs in BACKGROUND — returns a job_id immediately. Use check_transcription_status to monitor progress. Poll every 10-15 seconds.
Do NOT call transcription_set_model first — this handles model loading automatically.
After transcription completes, TELL the user where the transcript was saved or offer to save it. Always tell the user the file location so they can find it.
Language auto-detection can occasionally misidentify the language (background
music, noise, a short/ambiguous clip) and transcribe genuinely-English audio
in the wrong script entirely. If you already know the audio's language from
context, pass language explicitly (e.g. "en") instead of relying on
auto-detect, or set task="translate" to force English output regardless of
the spoken language. If a result comes back in an unexpected language/script,
just retry with THIS SAME tool and the corrected language/task.
Args: model_size: Whisper model - "tiny", "base", "small", "medium", "large-v3". Default: "small" language: ISO language code (e.g. "en", "fr") or None for auto-detect task: "transcribe" or "translate" (translate converts any language to English)
| Name | Required | Description | Default |
|---|---|---|---|
| task | No | transcribe | |
| language | No | ||
| model_size | No | small |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden and does so thoroughly. It discloses that the tool is experimental, requires separate setup, runs in the background and returns a job_id, may fail, and can misdetect language. It also explains the expected user-facing behavior and retry strategy, far beyond what any schema or annotation supplies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but information-dense and front-loaded with the core purpose and experimental caveat. The only minor issue is slight redundancy in the post-completion instructions ('TELL the user... Always tell the user...'), which could be tightened without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description is remarkably complete: it covers setup, execution mode, monitoring, failure handling, parameter usage, language pitfalls, and what to do after the job finishes. An agent has enough context to call the tool correctly and respond appropriately to results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides no descriptions (0% coverage), but the description fully compensates by documenting each parameter: model_size with valid values and default, language with ISO examples and None for auto-detect, and task with 'transcribe' vs 'translate' semantics including the English-output behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Transcribe the entire project audio using faster-whisper (local, offline).' It also distinguishes this from related siblings by emphasizing 'entire project' and by explicitly referencing check_transcription_status and transcription_set_model, so an agent can identify the right tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use and when-not-to-use guidance: it tells the agent to monitor progress with check_transcription_status, poll every 10-15 seconds, and warns 'Do NOT call transcription_set_model first.' It also gives post-call instructions for informing the user about the saved transcript and retrying with corrected language/task.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribe_selectionA
[EXPERIMENTAL] Transcribe only the currently selected audio region. Requires separate setup — see installation guide.
Runs in BACKGROUND — returns a job_id immediately. Use check_transcription_status to monitor progress.
Select a region first, then call this tool.
Language auto-detection can occasionally misidentify the language on a short
or ambiguous clip. If you already know the audio's language, pass language
explicitly (e.g. "en"), or set task="translate" to force English output.
Args: model_size: Whisper model - "tiny", "base", "small", "medium", "large-v3" language: ISO language code or None for auto-detect task: "transcribe" or "translate"
| Name | Required | Description | Default |
|---|---|---|---|
| task | No | transcribe | |
| language | No | ||
| model_size | No | small |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does well: it discloses the experimental status, separate setup requirement, background execution with immediate job_id return, and the risk of language auto-detection misidentifying short or ambiguous clips. It does not describe error behavior or what happens if no region is selected, but the disclosed behavior is substantial and useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is longer than average but every sentence delivers critical information: setup, selection prerequisite, async behavior, monitoring path, language caveat, and parameter semantics. It is well-structured with a clear Args block and no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three optional parameters, no output schema, and no annotations, the description covers the prerequisites, execution model, monitoring pattern, failure mode, and all parameter values. An agent has enough context to invoke it correctly and know what to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only provides parameter names, types, and defaults, while the description's Args section adds concrete allowed values for model_size ("tiny", "base", "small", "medium", "large-v3"), the meaning of language (ISO code or None), and valid task values ("transcribe" or "translate"). It also provides practical guidance like passing `language` explicitly to avoid misdetection.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: "Transcribe only the currently selected audio region." The word "only" clearly scopes this tool to selection-based transcription and distinguishes it from broader sibling tools like transcribe_audio or transcribe_to_labels.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: select a region first, call the tool, and use check_transcription_status to monitor progress. It also explains when to pass `language` or `task="translate"`. It does not explicitly name alternative transcription tools or state when not to use them, but the usage context is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribe_to_fileA
[EXPERIMENTAL] Transcribe audio and export to a subtitle or text file. Requires separate setup — see installation guide.
ALWAYS tell the user where the file will be saved BEFORE starting. If user doesn't specify a path, call get_default_export_folder to get a real path. NEVER guess paths like /home/user/... — always use absolute Windows paths like C:\Users\Name\Documents\transcript.srt
Runs in BACKGROUND — returns a job_id immediately. Use check_transcription_status to monitor progress.
Language auto-detection can occasionally misidentify the language (background
music, noise, a short/ambiguous clip) and transcribe genuinely-English audio
in the wrong script entirely. If you already know the audio's language from
context, pass language explicitly (e.g. "en"), or set task="translate" to
force English output regardless of the spoken language. Retry with THIS SAME
tool and the corrected language/task — use a new path since an existing file
at the same path is rejected below.
Args: path: Absolute path for the output file (e.g. "C:/Users/You/Documents/transcript.srt") format: Output format - "srt", "vtt", or "txt" model_size: Whisper model - "tiny", "base", "small", "medium", "large-v3" language: ISO language code (e.g. "en") or None for auto-detect task: "transcribe" (spoken language) or "translate" (always English)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| task | No | transcribe | |
| format | No | srt | |
| language | No | ||
| model_size | No | small |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden, and it delivers: marks itself experimental, requires setup, runs in the background returning a job_id immediately, rejects an existing file at the specified path, and warns that language auto-detection can misidentify language. This is candid about side effects, asynchronous behavior, and known failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but information-dense and front-loaded with purpose, setup, mandatory path behavior, background behavior, and a nuanced language failure mode before the parameter list. Each block carries a distinct instruction; the structure makes the hard rules (ALWAYS, NEVER, BACKGROUND) stand out.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
It covers setup, path resolution, asynchronous execution, monitoring, retry behavior, file conflicts, and all parameter semantics, and references the relevant helper siblings. The main gap is that it never explicitly states which audio source is transcribed (current selection, whole project, or supplied audio), and there is no output schema or job-polling contract beyond pointing at check_transcription_status.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description fully compensates: path is explained as an absolute output path, format gets its allowed values, model_size lists Whisper variants, language is described as ISO code or auto-detect, and task distinguishes transcribe vs translate output. This gives an agent everything needed beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action and deliverable: 'Transcribe audio and export to a subtitle or text file.' This distinguishes it from sibling transcription tools like transcribe_to_labels (labels) and implies file output rather than in-memory/transcript-only results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit operational rules: always reveal save destination first, resolve unspecified paths via get_default_export_folder, never guess paths, monitor progress with check_transcription_status, and retry with a corrected language/task. It does not explicitly name transcribe_audio/transcribe_selection as alternatives or state when not to use them, so it falls just short of full alternative-selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribe_to_labelsA
[EXPERIMENTAL] Transcribe audio and add Audacity labels at each segment timestamp. Requires separate setup — see installation guide.
Runs in BACKGROUND — returns a job_id immediately. Use check_transcription_status to monitor progress.
Language auto-detection can occasionally misidentify the language (background
music, noise, a short/ambiguous clip) and transcribe genuinely-English audio
in the wrong script entirely. If you already know the audio's language from
context (the user said so, or the labels came back in an unexpected script),
don't guess — pass language explicitly (e.g. "en"), or set task="translate"
to force English output regardless of the spoken language. Retry with THIS
SAME tool and the corrected language/task; there's no need to switch to a
different transcription tool to fix a bad language guess.
If labels from a previous attempt need clearing first: track_select the label track, then track_remove, before re-running this.
Args: model_size: Whisper model - "tiny", "base", "small", "medium", "large-v3" language: ISO language code (e.g. "en") or None for auto-detect task: "transcribe" (labels in the spoken language) or "translate" (labels always in English, regardless of the spoken language)
| Name | Required | Description | Default |
|---|---|---|---|
| task | No | transcribe | |
| language | No | ||
| model_size | No | small |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does so thoroughly: it warns the tool is experimental, requires separate setup, runs in the background, returns a job_id immediately, has fallible language auto-detection, and may require clearing existing labels first. These are meaningful behavioral traits beyond what an input schema would convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but well-structured and front-loaded with the core purpose, followed by setup, background behavior, troubleshooting, and parameters. Every section earns its place for an experimental tool with no annotation support.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description is unusually complete: it explains return behavior (job_id), how to monitor progress, how to recover from language misdetection, how to clear old labels, and what each parameter accepts. Nothing critical for invoking the tool correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. The Args section explains each parameter: model_size with accepted Whisper sizes, language with ISO code example and null meaning auto-detect, and task with 'transcribe' vs 'translate' semantics. This adds practical meaning absent from the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: 'Transcribe audio and add Audacity labels at each segment timestamp.' It clearly distinguishes this tool from siblings like transcribe_audio and transcribe_to_file by its label-output behavior and note about 'Runs in BACKGROUND.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit follow-up guidance ('Use check_transcription_status to monitor progress') and explains when to pass language explicitly or set task='translate'. It also advises retrying with this same tool rather than switching to a different transcription tool. It does not, however, explicitly contrast with transcribe_to_file or transcribe_selection for choosing between output destinations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcription_set_modelA
[EXPERIMENTAL] Pre-download a whisper model. ONLY call this if the user explicitly asks to download or change the model. Do NOT call this before transcribe_audio — transcription tools handle model loading automatically. Requires separate setup — see installation guide.
Runs in BACKGROUND — returns a job_id immediately. Use check_transcription_status to monitor progress.
Model sizes:
tiny: ~75MB (fastest, least accurate)
base: ~150MB (good balance for most use cases)
small: ~500MB (better accuracy, recommended)
medium: ~1.5GB (high accuracy)
large-v3: ~3GB (best accuracy, slowest)
Args: model_size: Model to load - "tiny", "base", "small", "medium", "large-v3"
| Name | Required | Description | Default |
|---|---|---|---|
| model_size | No | base |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden. It discloses background execution, immediate job_id return, the need for separate setup, and the experimental status. It does not discuss failure modes, idempotency, or disk-space effects, but the provided behavioral traits are substantive and useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the most critical usage guardrail, then setup and background behavior, then the model-size list. Every section earns its place, and the list format makes the tradeoffs scannable. It is detailed without being bloated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even though there is no output schema and no annotations, the description covers the core operational facts: what the tool does, when to call it, that it returns a job_id immediately, how to monitor it, what setup is needed, and what parameter values mean. For a single-optional-parameter background tool, this is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It lists the allowed model_size values with size, speed, and accuracy tradeoffs, which adds real meaning beyond the input schema. It doesn't explicitly note that omitting the parameter uses 'base' (though the schema default covers that) or how invalid values are handled, so it is strong but not exhaustive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Pre-download a whisper model.' It also distinguishes itself from transcribe_audio by explicitly stating that transcription tools handle model loading automatically, so an agent can tell this tool apart from siblings without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit call condition: 'ONLY call this if the user explicitly asks to download or change the model.' It also says when not to use it ('Do NOT call this before transcribe_audio') and names the alternative monitoring tool, check_transcription_status. This is direct and actionable guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transport_get_play_positionA
Get the current playback position in seconds.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It communicates that the tool reads playback position and returns seconds, but it does not specify behavior when transport is stopped, whether the position is relative to the project or selection, or whether any side effects occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It states exactly what the tool does and the unit of the result, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter getter with no output schema, the description sufficiently explains the return value and its unit. It is slightly incomplete in not addressing edge states like stopped transport, but the low complexity makes this only a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there are no parameter semantics to document. The description's mention of 'in seconds' provides useful return-format context beyond the empty schema, earning the baseline score for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('current playback position in seconds'), making the tool's function immediately clear. Among transport_* siblings such as transport_set_cursor, transport_play, and transport_stop, this read-oriented name and description clearly distinguish it as a position getter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: call this when you need the current playback position in seconds. However, the description does not explicitly state when to prefer it over alternatives or mention any prerequisites such as whether playback must be active.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transport_pauseB
Toggle pause during playback or recording.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It does disclose the key behavior—toggling pause—and restricts it to playback or recording contexts. However, it does not explain what happens when transport is already paused, stopped, or inactive, leaving some behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the action ('Toggle pause') and immediately states the applicable contexts ('during playback or recording'). Every word earns its place; there is no redundant or vague filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter transport toggle, this is minimally adequate, but it leaves out edge-case behavior: what occurs when transport is stopped, whether toggling applies to playback and recording independently or together, and whether position is preserved. With no annotations and no output schema, those gaps are not compensated elsewhere.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has zero parameters, so there is nothing for the description to add beyond the schema. The baseline for a no-parameter tool is 4; no parameter documentation is necessary.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies a concrete transport action—toggle pause—and explicitly scopes it to playback or recording. It is clear enough to be distinguished from sibling tools like transport_play, transport_stop, and transport_record, though the exact state transition (whether it always resumes or only enters pause) is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives such as transport_play, transport_stop, or raw_play_stop. The description does not mention whether the tool is only meaningful while transport is active, nor does it indicate any conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transport_playB
Start playback from the current cursor position.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It states the primary action but does not disclose what happens if playback is already active, whether the cursor is moved, or how this differs from a play/stop toggle like raw_play_stop. This leaves meaningful ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single eight-word sentence that is front-loaded and contains zero filler. For a command of this simplicity, every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the core invocation is adequately described. However, the absence of usage guidance and edge-case behavior leaves the description incomplete for an agent choosing among many playback-related siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is effectively 100%, so the 0-params baseline of 4 applies. No parameter explanation is needed or possible.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Start'), resource ('playback'), and scope ('from the current cursor position'), clearly conveying what the tool does. The cursor-position qualifier implicitly differentiates it from transport_play_region, though it does not explicitly name or distinguish any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus closely related playback siblings such as transport_play_region, raw_play_stop, transport_pause, or transport_record. An agent must infer usage context entirely from the name and the minimal description, with no exclusions or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transport_play_regionB
Play a specific time region.
Args: start: Start time in seconds end: End time in seconds
| Name | Required | Description | Default |
|---|---|---|---|
| end | Yes | ||
| start | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of explaining side effects. It only states that a region is played, but does not clarify whether playback stops automatically, if the current playback is interrupted, or if any selection is modified. This lack of detail could lead to unexpected behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and structured, using only two sentences to state the purpose and parameters. There is no unnecessary information, and it is easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple playback command, the description is fairly complete, but it omits details about return values or side effects. Since there is no output schema, it is not clear if the tool returns any status or error information. Additionally, it does not explain the relationship to the current cursor position or selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds 'time in seconds' to each parameter, which is not present in the schema. It clearly defines start and end as absolute timestamps, though it does not specify whether they are project-relative or selection-relative, which is a minor gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Play') and the resource ('a specific time region'), which distinguishes it from transport_play that plays the whole project. However, it does not explicitly mention that it plays only the given interval and stops at the end, which could be ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like transport_play, transport_stop, or selection-based playback. It does not mention typical use cases, prerequisites, or relationships to other transport commands.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transport_recordB
Start recording on a new track.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It reveals the main action—starting a recording on a new track—but does not explain what happens if recording is already in progress, whether playback is stopped, whether the track is created immediately, or how recording is stopped. For a mutating transport command, this is a meaningful transparency gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly written sentence with no filler or repetition. The verb 'start recording' and object 'new track' are front-loaded and every word contributes to the intent. It is appropriately minimal for a zero-parameter command.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter command with no output schema, the description is nearly sufficient and clearly identifies the action. However, because there are no annotations, it leaves out surrounding behavior such as state changes, how to stop the recording, and how this relates to sibling transport tools. It is adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to add beyond the empty schema. The phrase 'on a new track' adds meaningful context about what the recording action applies to, even though there are no formal parameters. This matches the baseline for a no-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('start recording') and a specific resource ('a new track'), making the tool's core action clear. It stands apart from transport_play, transport_stop, and transport_pause because it is the only one named as recording. It does not explicitly distinguish itself from raw_timer_record or raw_record2nd_choice, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when the user wants to begin recording, which is basic usage guidance. However, it provides no explicit when-to-use vs. alternatives, no prerequisites, and no note that transport_stop would be needed to end the recording. The guidance is purely implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transport_set_cursorB
Set the playback cursor position.
Args: time: Position in seconds
| Name | Required | Description | Default |
|---|---|---|---|
| time | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does state the core side effect: moving the playback cursor to a given position. However, it does not disclose secondary behavior such as whether playback state is changed, whether the timeline bounds are enforced, or whether selection is affected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose sentence is front-loaded and the Args block is compact. There is no filler, and every line contributes either the operation or the required parameter meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter setter with no output schema, the core invocation contract is present. Still, the complete absence of usage guidance and boundary behavior leaves some context gaps that an agent would need to resolve through other tools or trial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate for the bare 'Time' title and number type. It does so by defining the lone parameter as 'Position in seconds,' adding both role and unit. It stops short of clarifying whether the position is absolute from project start or relative, but for one parameter this is solid compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and object: 'Set the playback cursor position.' The qualifier 'playback' helps separate it from selection/navigation concepts, but it does not explicitly distinguish this from the near-identical sibling cursor_set_position or from raw_seek, so it falls just short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool instead of alternatives. With siblings like cursor_set_position, raw_seek, and transport_play present, an agent is left to infer which one matches a user request; the description provides no exclusions or preferred scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transport_stopA
Stop playback or recording.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the obvious halting behavior and does not clarify whether stopping is idempotent, what occurs if nothing is playing or recording, whether transport position resets, or how it differs from pause.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with no filler or redundant wording. It front-loads the action and its target precisely, making it as concise as possible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has no parameters and no output schema, the description provides the core selection criterion needed to invoke it. It omits minor behavioral details like no-op behavior, but for such a simple transport command this is not a serious gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the empty schema is fully described, so the 0-param baseline of 4 applies. There is no parameter detail missing because there is nothing to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb, 'Stop,' and names the resources, 'playback or recording,' leaving no ambiguity about the action. It is clearly distinguished from sibling tools like transport_play, transport_record, and transport_pause by naming the halting behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as transport_pause, transport_play, or raw_play_stop. The agent must infer the usage purely from the tool name and one-line description, with no mention of exclusions, conditions, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
truncate_silenceA
Truncate or compress silence in the selected audio. Great for removing dead air.
Args: threshold_db: Volume below this is considered silence (dB). Default: -40 min_duration: Minimum silence duration to act on (seconds). Default: 0.5 truncate_to: Truncate silence to this duration (seconds). Default: 0.3 compress_percent: Compress silence by this percentage (only for Compress action). Default: 50 action: "Truncate" or "Compress". Default: "Truncate"
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Truncate | |
| truncate_to | No | ||
| min_duration | No | ||
| threshold_db | No | ||
| compress_percent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the core behavior — truncating or compressing silence in the selected audio — and notes that compress_percent only applies to the Compress action. However, with no annotations, a destructive audio edit should more clearly warn that the selected audio is modified, whether the change is undoable, and what happens if no audio selection exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence states purpose and use case, and the parameter list is compact, front-loaded, and free of filler. Repeating defaults from the schema is minor because the Args block is the only per-parameter documentation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All five parameters and both actions are documented, and the target is identified as the selected audio. Given there is no output schema or annotations, a note on return value or undoability would strengthen it, but the information provided is enough for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the Args block fully compensates. It defines every parameter with units, defaults, and action-specific constraints, so an agent can construct valid arguments without any other documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific operation — truncate or compress silence in the selected audio — and adds the clarifying use case of removing dead air. It does not explicitly distinguish itself from sibling tools like edit_silence or edit_trim, but the core purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear usage context: removing dead air, and explains the two operating modes via the action parameter. It does not mention alternatives or when-not-to-use cases, so it misses the top score, but the intended use case is explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
14 tool updates
v0.1.20- Changed
analyze_label_sounds5 fields changed- added
Input schema / properties / label_textAdded value: +{ + "default": "", + "title": "Label Text", + "type": "string" +} - added
Input schema / properties / label_typeAdded value: +{ + "default": "before", + "title": "Label Type", + "type": "string" +} - added
Input schema / properties / measurementAdded value: +{ + "default": "peak", + "title": "Measurement", + "type": "string" +} - added
Input schema / properties / post_offsetAdded value: +{ + "default": 0, + "title": "Post Offset", + "type": "number" +} - added
Input schema / properties / pre_offsetAdded value: +{ + "default": 0, + "title": "Pre Offset", + "type": "number" +}
- Added
label_add_batch - Added
label_cut_regions - Added
label_delete - Added
label_delete_audio_at - Added
label_delete_regions - Added
label_edit - Added
label_export_audio_segments - Added
label_export_chapters - Added
label_find - Added
label_join_regions - Added
label_list - Added
label_silence_regions - Added
label_split_regions
2 tool updates
v0.1.19- Changed
transcribe_to_file1 field changed- added
Input schema / properties / taskAdded value: +{ + "default": "transcribe", + "title": "Task", + "type": "string" +}
- Changed
transcribe_to_labels1 field changed- added
Input schema / properties / taskAdded value: +{ + "default": "transcribe", + "title": "Task", + "type": "string" +}
131 tool updates
v0.1.5- First observed
analyze_beat_finder - First observed
analyze_contrast - First observed
analyze_find_clipping - First observed
analyze_label_sounds - First observed
analyze_plot_spectrum - First observed
analyze_sample_data_export - First observed
auto_analyze_audio - First observed
auto_audiobook_mastering - First observed
auto_cleanup_audio - First observed
auto_cleanup_interview - First observed
auto_cleanup_live - First observed
auto_cleanup_podcast - First observed
auto_cleanup_vocal - First observed
auto_lofi_effect - First observed
auto_master_music - First observed
check_pipeline_status - First observed
check_transcription_status - First observed
click_removal - First observed
compressor - First observed
cursor_set_position - First observed
cursor_to_project_end - First observed
cursor_to_project_start - First observed
cursor_to_track_end - First observed
cursor_to_track_start - First observed
edit_copy - First observed
edit_cut - First observed
edit_delete - First observed
edit_disjoin - First observed
edit_duplicate - First observed
edit_join - First observed
edit_paste - First observed
edit_silence - First observed
edit_split - First observed
edit_split_cut - First observed
edit_split_delete - First observed
edit_split_new - First observed
edit_trim - First observed
effect_adjustable_fade - First observed
effect_amplify - First observed
effect_auto_duck - First observed
effect_bass_and_treble - First observed
effect_change_pitch - First observed
effect_change_speed - First observed
effect_change_tempo - First observed
effect_clip_fix - First observed
effect_crossfade_clips - First observed
effect_crossfade_tracks - First observed
effect_distortion - First observed
effect_echo - First observed
effect_equalization - First observed
effect_fade_in - First observed
effect_fade_out - First observed
effect_high_pass_filter - First observed
effect_invert - First observed
effect_low_pass_filter - First observed
effect_notch_filter - First observed
effect_paulstretch - First observed
effect_phaser - First observed
effect_repair - First observed
effect_repeat - First observed
effect_reverb - First observed
effect_reverse - First observed
effect_sliding_stretch - First observed
effect_studio_fade_out - First observed
effect_tremolo - First observed
effect_vocal_reduction - First observed
effect_wahwah - First observed
generate_chirp - First observed
generate_dtmf - First observed
generate_noise - First observed
generate_rhythm_track - First observed
generate_tone - First observed
get_default_export_folder - First observed
get_default_transcription_folder - First observed
get_noise_profile - First observed
label_add - First observed
label_add_at - First observed
label_export - First observed
label_get_all - First observed
label_import - First observed
label_regular_intervals - First observed
limiter - First observed
loudness_normalize - First observed
noise_reduction - First observed
normalize - First observed
project_close - First observed
project_edit_metadata - First observed
project_export_audio - First observed
project_export_labels - First observed
project_get_info - First observed
project_import_audio - First observed
project_import_midi - First observed
project_new - First observed
project_open - First observed
project_save - First observed
project_save_as - First observed
select_all - First observed
select_clip - First observed
select_cursor_to_track_end - First observed
select_none - First observed
select_region - First observed
select_tracks - First observed
select_zero_crossing - First observed
track_add_label - First observed
track_add_mono - First observed
track_add_stereo - First observed
track_align_end_to_end - First observed
track_get_info - First observed
track_mix_and_render - First observed
track_mix_and_render_to_new - First observed
track_mute - First observed
track_mute_all - First observed
track_remove - First observed
track_resample - First observed
track_select - First observed
track_set_properties - First observed
track_stereo_to_mono - First observed
track_unmute_all - First observed
transcribe_audio - First observed
transcribe_selection - First observed
transcribe_to_file - First observed
transcribe_to_labels - First observed
transcription_set_model - First observed
transport_get_play_position - First observed
transport_pause - First observed
transport_play - First observed
transport_play_region - First observed
transport_record - First observed
transport_set_cursor - First observed
transport_stop - First observed
truncate_silence
TDQS
Scored across 144 tools
Most tools are clearly distinct (project_, track_, label_, effect_ prefixes group by domain). However, there is notable redundancy and overlap: label_delete_audio_at vs label_cut_regions vs label_delete_regions vs label_split_regions vs label_silence_regions all operate on labeled regions with similar purposes. Similarly, cursor_to_track_end and select_cursor_to_track_end, and multiple label export functions (label_export, label_export_audio_segments, project_export_labels) create ambiguity about which to select.
The naming follows a consistent verb_noun or category_verb pattern (project_, track_, label_, effect_, edit_, select_, cursor_, transport_, generate_, auto_). There are a few inconsistencies like 'normalize' and 'compressor' and 'limiter' and 'click_removal' that lack the effect_ prefix used by sibling tools, and 'get_noise_profile'/'noise_reduction' deviate from the pattern, but overall the convention is strong and predictable.
144 tools is an extreme number for an audio editor MCP server. While Audacity is feature-rich, this surface is far beyond what agents can reasonably navigate. Many tools could be consolidated (e.g., the seven separate auto_cleanup_* pipelines, the large effect_* family, and the transcription set). This count will cause selection difficulty and cognitive overload for any agent.
The surface is quite comprehensive, covering project lifecycle (new/open/save/close/import/export), track management, selection, transport, editing, effects, generation, analysis, labeling, noise reduction, pipelines, and transcription. Minor gaps exist (no explicit record control for a specific track, no envelope editing beyond metadata, no undo/redo tools), but overall the domain is well covered for a full audio editing workflow.
Maintenance
Related MCP Connectors
Audio for your agent: transcribe, speak, translate, summarise, plus sound effects and music.
Video, audio, and image processing for AI agents: convert, transcribe, upscale - 150+ operations.
Carbon Voice MCP serves as a bridge that connects AI assistants like ChatGPT, Claude, and Cursor to a user's Carbon Voice account, turning voice messages and conversations into a private, on-demand knowledge base. It provides 28 specialized tools for comprehensive voice messaging management, including creating and sending messages, accessing conversation history with instant transcription, running AI actions (summarization, TLDR generation, meeting notes), and managing workspace collaboration through folders, contacts, and team communications.
Audio AI tools: text-to-speech, voice cloning, music generation, stem separation, transcription.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables advanced audio transcription, text-to-speech generation, and audio processing using OpenAI's Whisper and GPT-4o models with support for multiple audio formats, file management, and parallel processing.821 PyPI60MIT
- AlicenseNot gradedqualityDmaintenanceEnables LLM-driven audio pipelines by controlling Audacity through mod-script-pipe, allowing generative audio, effects, and export via MCP tool calls.MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to programmatically edit, analyze, and export audio projects through MCP tools, including multi-track editing, effects, transcription, and semantic search.1-
- AlicenseBqualityAmaintenanceConnects any MCP-compatible AI assistant to Audacity, providing 132 tools for real-time audio editing, cleanup, mastering, and transcription — all running locally without cloud dependencies.100Apache 2.0