Search Catalog
search_catalogCALL THIS for explicit lookups: "tracks by X", "downtempo around 90 bpm", "songs titled...". Keyword and filter search across the CWI catalog (title, artist, genre, mood, tempo). Use semantic_search instead if the user describes a feeling. Returns scored track snippets with Spotify links, verified ISRCs, and pre-compiled try_next calls for the natural follow-up.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"q": "<q>"
},
"name": "search_catalog"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search keywords, e.g. "cyberpunk rap" or "dark cinematic". Truncated at 500 characters. | |
| limit | No | Max tracks to return, 1-10 (default 5). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| count | Yes | ||
| limit | No | ||
| query | Yes | ||
| tokens | No | ||
| results | Yes | ||
| _session | No | Chain session: pass _session.session_token back in the next call to continue the chain. | |
| try_next | No | Suggested follow-up calls, each a pre-compiled {tool, arguments, purpose} payload. | |
| generated_at | No | ||
| new_release_spotlight | No | Active pre-release spotlight: title, artist, drop date, presave URL, ISRC. |