MCP for Royalty-Free Music and Sound Effects

tunetank1 pts0 comments

GitHub - tunetank/tunetank-mcp · GitHub

/" data-turbo-transient="true" />

Skip to content

Search or jump to...

Search code, repositories, users, issues, pull requests...

-->

Search

Clear

Search syntax tips

Provide feedback

--><br>We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

-->

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

{{ message }}

tunetank

tunetank-mcp

Public

Notifications<br>You must be signed in to change notification settings

Fork

Star

main

BranchesTags

Go to file

CodeOpen more actions menu

Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit

History<br>2 Commits<br>2 Commits

.gitignore

.gitignore

LICENSE

LICENSE

README.md

README.md

server.json

server.json

View all files

Repository files navigation

Tunetank MCP Server

The Tunetank music & sound‑effects catalog as an MCP server — so any AI assistant (Claude, ChatGPT, Cursor, …) can find the right royalty‑free track or SFX for a video, ad, podcast or stream.

Ask things like “find an energetic rock track around 60 seconds for a YouTube intro” or “a whoosh SFX under 2 seconds” and the assistant searches Tunetank's real catalog and hands back a preview link plus the track page on tunetank.com.

🎵 Search music by mood, genre, theme, artist, name and target length (± tolerance)

🔊 Search sound effects (SFX) by category and length

📚 Browse genres, moods, themes and curated playlists

▶️ Every result includes an audio preview URL and the canonical track page (https://tunetank.com/track/-/)

🆓 Completely free — no API key, no auth, no rate‑limit sign‑up. Read‑only.

Server

Endpoint<br>https://mcp.tunetank.com

Transport<br>Streamable HTTP (JSON‑RPC 2.0)

Auth<br>None (public, read‑only)

Cost<br>Free

Setup

Point any MCP‑capable client at the endpoint above. Examples for common clients:

Claude Desktop / Claude.ai (Connectors)

Add a Custom Connector with the URL:

https://mcp.tunetank.com

Or, via the config file (claude_desktop_config.json) using the mcp-remote bridge:

"mcpServers": {<br>"tunetank": {<br>"command": "npx",<br>"args": ["-y", "mcp-remote", "https://mcp.tunetank.com"]

Cursor

~/.cursor/mcp.json:

"mcpServers": {<br>"tunetank": {<br>"url": "https://mcp.tunetank.com"

VS Code / other clients

Any client that supports remote (HTTP) MCP servers — just use the URL https://mcp.tunetank.com. For clients that only speak stdio, bridge with npx -y mcp-remote https://mcp.tunetank.com.

Tools

Tool<br>Arguments<br>Returns

search_music<br>query, name, artist, genre, mood, theme, duration, tolerance, limit<br>Tracks: name, artist, duration, bpm, preview URL, track page URL, genres/moods/themes

search_sfx<br>query, category, duration, tolerance, limit<br>Sound effects: name, duration, preview URL, waveform

list_genres<br>All music genres (id, name, alias)

list_moods<br>All music moods (id, name, alias)

list_themes<br>All music themes (id, name, alias)

list_playlists<br>limit<br>Curated playlists (name, description, track count)

Argument notes

query (search_music) — free text; matches the track name or the artist name .

genre / mood / theme — accept either a name/alias (e.g. "rock", "happy") or a numeric id (from the list_* tools).

duration — target length in seconds .

tolerance — allowed ± seconds around duration (default 5). Example: duration: 60, tolerance: 10 → tracks between 50s and 70s.

category (search_sfx) — SFX category name or id.

limit — max results (default 20, max 50; playlists default 50, max 200).

All string filters are partial, case‑insensitive matches. Only published tracks/SFX are returned.

Examples

“Energetic rock, ~60s, for an intro”

"name": "search_music",<br>"arguments": { "genre": "rock", "mood": "energetic", "duration": 60, "tolerance": 10, "limit": 5 }

“A short whoosh sound effect under 2 seconds”

"name": "search_sfx",<br>"arguments": { "query": "whoosh", "duration": 1.5, "tolerance": 1.5 }

Sample track result

"id": 2270,<br>"name": "Adventures",<br>"artist": "A Himitsu",<br>"duration": 138,<br>"bpm": 120,<br>"url": "https://tunetank.com/track/2270-adventures/",<br>"preview": "https://…/preview.mp3",<br>"genres": ["Pop"],<br>"moods": ["Happy", "Inspiring"],<br>"themes": ["Vlog"]

Try it (raw JSON‑RPC)

The transport is spec‑strict, so include both Content-Type and Accept headers:

# List available tools<br>curl -s https://mcp.tunetank.com \<br>-H 'Content-Type: application/json' \<br>-H 'Accept: application/json, text/event-stream' \<br>-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

# Search...

tunetank name track https duration search

Related Articles