serato-dj-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SERATO_LIBRARY_PATH | No | The path to the Serato library folder, alternative to --library. |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_librariesA | List the Serato libraries this server can see, with their version, schema and locations. Paths here are NOT redacted: copy one into --library to pin the server to it. |
| list_cratesA | List the crates in the Serato Library space, with their display path and how many distinct tracks each holds. Only crates in that space are listed: smart crates, space roots and Serato's other internal spaces (such as the Prepare panel) are excluded. |
| search_tracksA | Search the Serato library. Free text |
| get_tracksA | Fetch tracks by the ids search_tracks returned. Unknown ids come back in |
| get_crate_tracksA | List the tracks of one crate, in the crate's own order -- the order the DJ arranged, not the order they were added to the library. Only crates in the Serato Library space can be given. Give the crate by id or by exact name; an unknown name comes back with the list of names that exist. Default fields: id, artist, title, bpm, key, key_source, genre, rating, length. Paths are redacted to ~. |
| audit_libraryA | Diagnose the library. All checks run by default: missing_bpm, missing_key, key_unreadable_by_serato, stale, not_in_any_crate, streaming_only, duplicates, broken_paths. broken_paths reads Serato's own missing flag by default and ALSO walks the filesystem with check_filesystem: true -- opt-in because a stat against a disconnected drive blocks for seconds. Each check reports a count and up to 10 example track ids; duplicates reports groups instead, since which track duplicates which is the actionable part. missing_key counts tracks with no key at all, while key_unreadable_by_serato counts tracks whose key this server can read but Serato itself cannot display. |
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 6 tools
Each tool targets a distinct resource and action: crates, libraries, tracks by search, tracks by ID, and diagnostics. No two tools have overlapping purposes.
All tool names follow the same verb_noun snake_case pattern: list_crates, get_tracks, search_tracks, audit_library, etc. The convention is uniform and predictable.
Six tools is well-scoped for a Serato library inspection and audit server. Each tool earns its place and covers a distinct workflow.
The surface fully covers the stated domain: discover libraries, list crates, read crate contents, search tracks, fetch tracks by ID, and run diagnostics. There are no obvious dead ends for the intended read/audit use case.