Tunecatalog

io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 7, 2026

Search and browse an AI music catalog by mood or genre; track details and streaming links.

VerifiedSTDIODesktop only

Overview

Tunecatalog's local MCP server; no sign-in required; STDIO; 5 tools.

No AI overview yet: these facts come from the registry entry and the server itself.

Installation

In SourceWeft

  1. Open Tunecatalog in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

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:

bash
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

bash
npx -y @reneturcios/tunecatalog mcp

MCP client config:

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

Docker

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

Development

bash
npm installnpm 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

Source: README.md at commit 238ba6f

Tools

5

search_music

Search the catalog by natural language query, mood, or genre.

Parametersmoodlimitqueryrequired

get_track

Get full details and streaming URL for a specific track.

ParameterstrackIdrequired

browse_artists

Browse AI catalog artists, optionally filtered by genre.

Parametersgenrelimit

get_artist

Get an artist's full profile and discography.

ParametershandleartistId

Version history

1
  1. v0.1.0LatestNov 3, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts