Rekordbox Smart MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| library_searchC | Search the music library with optional filters for genre, BPM, key, artist, album, year, rating, comments, hasComments, hasGenre. Returns matching tracks. |
| library_statsB | Get statistics about the loaded library: track count, genre distribution, BPM range, key distribution. |
| library_listPlaylistsA | List all playlists in the library with their track counts. |
| library_loadA | Load a Rekordbox XML file into the library. If xmlPath is omitted, uses the default path set via library_setDefaultPath. Creates a backup before loading. |
| library_findMissingB | Find tracks whose file paths are missing on disk. |
| library_findDuplicatesA | Find potential duplicate tracks by file location and by artist+title. |
| library_fuzzySearchC | Fuzzy-search tracks by title/artist/album/genre. |
| search_keyCompatibleA | Find tracks compatible with a source key using Camelot harmonic mixing rules. |
| library_exportJSONC | Export loaded library tracks and playlists to JSON. |
| track_getB | Get detailed information about a specific track by its ID. |
| track_updateA | Update metadata for a single track. Creates automatic backup. |
| track_playlistsB | Get all playlists that contain a specific track. |
| track_updateBatchA | Update metadata for multiple tracks in one request. Creates automatic backup. |
| audio_bpmGetCachedC | Get cached BPM analysis for an audio file. |
| audio_bpmCacheSetC | Store BPM analysis in cache for an audio file. |
| rekordbox_syncC | Import from or export to Rekordbox. Action: "import" (from XML or DB) or "export" (to XML). Creates backup for import operations. |
| rekordbox_importXmlB | Import library from Rekordbox XML file. Creates backup before loading. |
| rekordbox_exportXmlC | Export library to Rekordbox XML file. Creates automatic backup. |
| dj_getRecentSessionsA | Get recent DJ sessions from Rekordbox history. Requires rekordbox.db_path configured. |
| dj_getSessionTracksB | Get tracks played in a specific DJ session. |
| dj_getHistoryStatsB | Get DJ performance statistics. Requires rekordbox.db_path configured. |
| dj_getPlayCountAnalyticsB | Get play count analytics for tracks from Rekordbox history. |
| dj_getListeningPatternsA | Get listening pattern analysis: average BPM, dominant genres, dominant keys. |
| playlist_createB | Create a new playlist. Creates automatic backup. |
| playlist_addTracksC | Add tracks to a playlist. Creates automatic backup. |
| playlist_removeTracksA | Remove tracks from a playlist. Creates automatic backup. |
| playlist_deleteA | Delete a playlist. DESTRUCTIVE - Creates automatic backup. Set force=true to confirm. |
| playlist_renameA | Rename a playlist. Creates automatic backup. |
| playlist_buildSmartB | Create a playlist using smart composition rules (energy curve, key progression, BPM range, artist diversity). Creates backup. |
| setlist_analyzeC | Analyze a playlist or list of tracks for energy, harmonic compatibility, gaps, and diversity. |
| setlist_suggestTransitionsB | For each track in a playlist, suggest 2-3 possible next tracks with transition tips and compatibility scores. |
| mutation_historyA | List recent mutations from the audit log. Optional filters: limit (default 50), tool, since (ISO timestamp). |
| mutation_rollbackA | Rollback a mutation by its timestamp ID. Creates a pre-rollback backup. Set dryRun=true to preview without applying. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 33 tools
Several tools overlap significantly: rekordbox_importXml, library_load, and rekordbox_sync's 'import' action all load Rekordbox XML files, while library_search, library_fuzzySearch, and search_keyCompatible all provide search functionality with unclear boundaries. This will likely cause an agent to select the wrong tool.
Naming follows a mixed pattern: some tools use verb_noun (playlist_create, library_search), others use noun_verb (track_get, library_load), and camelCase appears inconsistently (buildSmart, keyCompatible, bpmCacheSet). The arbitrary prefixes (dj_, rekordbox_, library_, track_, setlist_) further break predictability.
At 33 tools, the server is over-granular, exceeding the typical recommended range. Many tools could be consolidated (e.g., rekordbox_importXml and library_load are nearly identical), suggesting the count is bloated rather than well-scoped.
The server covers most core workflows: library loading and search, playlist CRUD, track updates, history analytics, and setlist suggestions. However, notable gaps exist—no track deletion, and the import/export paths are redundant and confusing, which may cause dead ends for agents.