mcpField
T
tunecatalog

tunecatalog

Local
github.com/CloudCorpRecordsGames & Entertainment0Updated 1w ago

About tunecatalog

tunecatalog is an MCP server for agents that search and browse an AI music catalog. It provides read-only tools for track details, trends, artists, and streaming links.

Key features

  1. 01Natural-language track search
  2. 02Mood and genre filters
  3. 03Track details and streaming URLs
  4. 04Trending track listings
  5. 05Artist profiles and discographies

Use cases

  1. 01Find music matching a described mood
  2. 02Retrieve a track’s streaming link and details
  3. 03Explore trending tracks or artists

MCP support

Exposes five read-only catalog tools to MCP clients: search_music, get_track, get_trending, browse_artists, and get_artist. Requests require a STARSINGER_API_KEY.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-tunecatalog": {
"command": "npx",
"args": [
"-y",
"@reneturcios/tunecatalog"
]
}
}
}
Run commandnpx -y @reneturcios/tunecatalog

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/tunecatalog0.1.0
ocighcr.io/cloudcorprecords/tunecatalog:0.1.0

Tools

5

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
moodenumNoFilter by mood: purple (chill), red (energetic), blue (emotional), gold (uplifting), green (nature), pink (romantic), dark (intense), rainbow (eclectic)purple | red | blue | gold | green | pink | dark | rainbow
limitnumberNoResults to return (default 10, max 50)
querystringYesNatural language search — "upbeat jazz piano", "sad violin ballad"

Details

From the project README

tunecatalog

Browse an AI music catalog without leaving your agent. tunecatalog searches tracks by natural-language description, mood, or genre, pulls full track details with streaming links, surfaces what is trending, and lets you wander the artist roster and read a full artist profile with its discography.

Labelled subset — 5 of 9 tools. This rebuild builds only the five read-only catalog tools documented below. Four documented upstream tools are omitted: make_song, song_status, my_songs, and wallet. make_song spends a purchased song credit and, with none left, hands back a checkout link and price — a payment funnel — and the four also lack published argument schemas beyond prose, so they are left out and named here rather than silently dropped.

The five tools:

  • search_music — search the catalog by a natural-language query such as "upbeat jazz piano" or "sad violin ballad", optionally filtered by mood (purple chill, red energetic, blue emotional, gold uplifting, green nature, pink romantic, dark intense, rainbow eclectic) and capped with limit (default 10, max 50).
  • get_track — full details and a streaming URL for one track, by the track ID a search returned.
  • get_trending — the currently popular tracks, optionally capped with limit.
  • browse_artists — the catalog's artists, optionally filtered by genre (for example "jazz", "classical", or "pop") and capped with limit.
  • get_artist — an artist's full profile and discography, by artist ID or by handle (for example "miles_rivers"). Both arguments are optional; no at-least-one rule is invented locally.

A successful call returns the upstream JSON body verbatim: track responses carry title, artist, genre, mood, play count, likes, lyrics, cover art, and a streaming URL in the upstream's own shape.

Configuration

  • STARSINGER_API_KEY — required. Sent as Authorization: Bearer <key>. If it is unset, every tool fails with STARSINGER_API_KEY is not set and no request is made (the server still starts and lists tools).
  • STARSINGER_API_URL — optional. Defaults to https://mcp-api.starsinger.ai.

Upstream failures surface as starsinger error: HTTP <status> for a non-2xx reply, or starsinger unreachable when the request itself fails.

Wire paths are documented reconstructions. The upstream README pins the API host and the Bearer auth but not the REST paths, so the paths below are reconstructions and are labelled as such: GET /search, GET /tracks/<trackId>, GET /trending, GET /artists, and GET /artists/<artistId or handle>. The tool schemas themselves are pinned by the README's parameter tables.

CLI

Each tool is a subcommand taking one JSON argument string:

export STARSINGER_API_KEY="<your key>"
npx @reneturcios/tunecatalog search_music '{"query":"upbeat jazz piano","mood":"gold","limit":5}'
npx @reneturcios/tunecatalog get_track '{"trackId":"<track id>"}'
npx @reneturcios/tunecatalog get_trending '{"limit":10}'
npx @reneturcios/tunecatalog browse_artists '{"genre":"jazz"}'
npx @reneturcios/tunecatalog get_artist '{"handle":"miles_rivers"}'
npx @reneturcios/tunecatalog --version

Output is the tool's result text. Exit codes: 0 on success, 1 on a runtime error (including a validation or upstream failure), 2 on a usage error.

MCP server

npx -y @reneturcios/tunecatalog mcp

MCP client config:

{
  "mcpServers": {
    "tunecatalog": {
      "command": "npx",
      "args": ["-y", "@reneturcios/tunecatalog", "mcp"],
      "env": {
        "STARSINGER_API_KEY": "<your key>"
      }
    }
  }
}

Docker

docker run -i -e STARSINGER_API_KEY="<your key>" ghcr.io/cloudcorprecords/tunecatalog
docker run --rm -e STARSINGER_API_KEY="<your key>" ghcr.io/cloudcorprecords/tunecatalog get_trending '{"limit":5}'

Development

npm install
npm run build   # tsc -> dist/
npm test        # tsx --test test/*.test.ts (fake fetch only, no network)
npm run dev     # run the CLI from source

License

MIT — Copyright (c) 2026 Rene Turcios

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.