Search royalty-free cinematic and production music for videos, films, trailers, ads and games.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Full details of one track (by its url or slug) with the one-time licence options and their prices.
Track url like https://tvmusicstore.com/track/1042-name, or its slug
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http music-search https://tvmusicstore.com/mcp
Full details of one track (by its url or slug) with the one-time licence options and their prices.
| Argument | Type | Description |
|---|---|---|
| track* | string | Track url like https://tvmusicstore.com/track/1042-name, or its slug |
{
"type": "object",
"required": [
"track"
],
"properties": {
"track": {
"type": "string",
"description": "Track url like https://tvmusicstore.com/track/1042-name, or its slug"
}
}
}How licensing works: one-time licences, subscriptions, what covers films/TV/streaming, YouTube Content ID claims and channel whitelisting.
No arguments.
{
"type": "object",
"properties": {}
}The tag vocabulary of the catalogue: every mood, genre and use case a track can have.
No arguments.
{
"type": "object",
"properties": {}
}Search TV Music Store's catalogue of cinematic and production music for videos, films, trailers, ads, games and podcasts. Returns tracks with a page url (where the person licenses it), an MP3 preview, length, BPM, genre, mood and use case. Tip: call list_tags first and use those exact words for mood / genre / use_case.
| Argument | Type | Description |
|---|---|---|
| mood | string | One mood from list_tags |
| genre | string | One genre from list_tags |
| limit | number | 1 to 25, default 10 |
| query | string | Free words, e.g. 'epic trailer drums' or 'calm travel vlog' |
| max_bpm | number | |
| min_bpm | number | |
| use_case | string | One use case from list_tags, e.g. Trailer, Vlog |
| max_seconds | number | Longest track length in seconds |
| min_seconds | number | Shortest track length in seconds |
{
"type": "object",
"properties": {
"mood": {
"type": "string",
"description": "One mood from list_tags"
},
"genre": {
"type": "string",
"description": "One genre from list_tags"
},
"limit": {
"type": "number",
"description": "1 to 25, default 10"
},
"query": {
"type": "string",
"description": "Free words, e.g. 'epic trailer drums' or 'calm travel vlog'"
},
"max_bpm": {
"type": "number"
},
"min_bpm": {
"type": "number"
},
"use_case": {
"type": "string",
"description": "One use case from list_tags, e.g. Trailer, Vlog"
},
"max_seconds": {
"type": "number",
"description": "Longest track length in seconds"
},
"min_seconds": {
"type": "number",
"description": "Shortest track length in seconds"
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 9, 2026.
No readOnlyHint / destructiveHint annotations, so clients can't tell a read from a write without asking.
Fix: Add annotations to each tool, e.g. { readOnlyHint: true } for tools that only read.