Find recordings by sound
directory_search_recordingsUse 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
| Name | Required | Description | Default |
|---|---|---|---|
| key | No | Musical key (e.g. 'C', 'F#', 'Bb'). Matches the detected key. | |
| mood | No | Mood — 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. | |
| limit | No | Max results to return (default: 20, max: 100). | |
| max_bpm | No | Maximum BPM (e.g. 140) | |
| min_bpm | No | Minimum BPM (e.g. 100) | |
| key_mode | No | Key mode — major or minor | |
| max_energy | No | Maximum energy, 0 to 1 (measured loudness). | |
| min_energy | No | Minimum energy, 0 to 1 — measured loudness (ITU-R BS.1770 integrated loudness on a quiet-to-loud scale), not a mood. Higher = louder. | |
| vocals_only | No | Ignored: vocals are not measured and owners do not mark them. | |
| max_duration | No | Maximum duration in seconds. | |
| max_dynamics | No | Maximum dynamics, 0 to 1 (see min_dynamics). | |
| min_duration | No | Minimum duration in seconds. | |
| min_dynamics | No | Minimum 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_brightness | No | Maximum brightness, 0 to 1 (measured). | |
| min_brightness | No | Minimum 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_danceability | No | Ignored: danceability is not measured. | |
| min_danceability | No | Ignored: danceability is not measured. Use min_rhythmic_density or min_energy. | |
| instrumental_only | No | Only songs or recordings the OWNER marked instrumental (not a measurement). | |
| max_rhythmic_density | No | Maximum rhythmic density, 0 to 1 (see min_rhythmic_density). | |
| min_rhythmic_density | No | Minimum rhythmic density, 0 to 1 — measured onsets per second. Not yet calibrated: accepted and ignored until it is. |