Skip to main content
Glama

withPICA Directory

Find recordings by sound

directory_search_recordings
Read-onlyIdempotent

Use when the user asks: 'find upbeat tracks around 120 BPM', 'find instrumental tracks in C minor', 'find energetic music for sync', 'tracks at X BPM in [key]'. AUDIO-FEATURE search only — for name- or title-shaped queries use directory_lookup_work, directory_lookup_isrc, or directory_list_people, NOT this tool. Not for a theme or subject ('a song about love'): search that in directory_list_works q first, then narrow here. Few recordings carry a mood yet, so an empty mood search does not mean the directory has no such song. Find tracks by BPM, key, energy, danceability, duration, mood, and more. The measured filters (BPM, key, energy, …) match analysed audio only; a mood search also returns works whose owner set the mood, marked mood_note "mood set by the owner, not analysed" — say so when you present them. Only returns recordings of works listed on the directory by their owner or a confirmed writer. → then: directory_lookup_work (credits and licensing details for a matched track)

Input Schema

NameRequiredDescriptionDefault
keyNoMusical key (e.g. 'C', 'F#', 'Bb'). Matches the detected key.
moodNoMood — one of: aggressive, ambient, calm, contemplative, dark, dramatic, dreamy, energetic, epic, ethereal, hopeful, intense, melancholic, nostalgic, passionate, playful, romantic, sad, tender, tense, triumphant, uplifting, warm. "happy" is read as "uplifting". Any other word is refused. A mood matches analysed recordings, and also listed songs whose owner set that mood on audio that is not analysed: those carry mood_note "mood set by the owner, not analysed" and no measured values. With a BPM, key, energy or other measured filter, only analysed recordings match.
limitNoMax results to return (default: 20, max: 100).
max_bpmNoMaximum BPM (e.g. 140)
min_bpmNoMinimum BPM (e.g. 100)
key_modeNoKey mode — major or minor
max_energyNoMaximum energy, 0 to 1 (measured loudness).
min_energyNoMinimum energy, 0 to 1 — measured loudness (ITU-R BS.1770 integrated loudness on a quiet-to-loud scale), not a mood. Higher = louder.
vocals_onlyNoIgnored: vocals are not measured and owners do not mark them.
max_durationNoMaximum duration in seconds.
max_dynamicsNoMaximum dynamics, 0 to 1 (see min_dynamics).
min_durationNoMinimum duration in seconds.
min_dynamicsNoMinimum dynamics, 0 to 1 — measured loudness range (EBU R128). Not yet calibrated: accepted and ignored until it is (the result's ignored_filters says so).
max_brightnessNoMaximum brightness, 0 to 1 (measured).
min_brightnessNoMinimum brightness, 0 to 1 — measured high-frequency content (spectral rolloff), not a mood. 0 = the darkest 5% of the directory, 1 = the brightest 5%.
max_danceabilityNoIgnored: danceability is not measured.
min_danceabilityNoIgnored: danceability is not measured. Use min_rhythmic_density or min_energy.
instrumental_onlyNoOnly songs or recordings the OWNER marked instrumental (not a measurement).
max_rhythmic_densityNoMaximum rhythmic density, 0 to 1 (see min_rhythmic_density).
min_rhythmic_densityNoMinimum rhythmic density, 0 to 1 — measured onsets per second. Not yet calibrated: accepted and ignored until it is.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover the safety profile (readOnly, idempotent, non-destructive), and the description adds real behavioral context beyond them: empty mood searches are not evidence of absence, mood matches may be owner-set rather than analysed and must be labelled, and only recordings of works listed by the owner or a confirmed writer are returned. These are non-obvious result-semantics caveats an agent could not infer from the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the trigger examples and the primary exclusion before caveats, and every sentence carries operational information. It is dense and slightly long, and the enumerated user-quote examples could be trimmed, but nothing is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 20-parameter, zero-required tool with no output schema, the description covers coverage limits, mood caveats, and the follow-up tool, which is the important missing context. It stops short of describing result shape or pagination behaviour beyond the limit parameter, which is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already documents filter semantics in depth (including ignored filters and mood_note behaviour), so the description's parameter content is largely duplicative. It adds the useful framing that measured filters match analysed audio only, but it also advertises 'danceability' as a searchable facet even though the schema marks that parameter as ignored — a minor internal inconsistency. Baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('AUDIO-FEATURE search' of recordings by BPM, key, energy, duration, mood) and explicitly distinguishes itself from name/title searches by naming directory_lookup_work, directory_lookup_isrc, and directory_list_people. An agent can route without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete user phrasings that trigger the tool, an explicit exclusion rule for title-shaped queries, an exclusion for theme/subject queries routed to directory_list_works, and a named next step (directory_lookup_work). When-to-use, when-not-to-use, and alternatives are all present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources