Server Configuration
Describes the environment variables required to run the server.
Name | Required | Description | Default |
---|---|---|---|
No arguments |
Schema
Prompts
Interactive templates invoked by user choice
Name | Description |
---|---|
No prompts |
Resources
Contextual data attached and managed by the client
Name | Description |
---|---|
database_status | Get the current database connection status. |
Tools
Functions exposed to the LLM to take actions
Name | Description |
---|---|
search_tracks | Search tracks in the rekordbox database. Args: query: General search query (searches across multiple fields) artist: Filter by artist name title: Filter by track title genre: Filter by genre key: Filter by musical key (e.g., "5A", "12B") bpm_min: Minimum BPM bpm_max: Maximum BPM rating_min: Minimum rating (0-5) limit: Maximum number of results to return Returns: List of matching tracks with metadata |
get_track_details | Get detailed information about a specific track. Args: track_id: The unique track identifier Returns: Detailed track information including metadata, cue points, and play history |
get_tracks_by_key | Get all tracks in a specific musical key. Args: key: Musical key (e.g., "5A", "12B") Returns: List of tracks in the specified key |
get_tracks_by_bpm_range | Get tracks within a specific BPM range. Args: bpm_min: Minimum BPM bpm_max: Maximum BPM Returns: List of tracks within the BPM range |
get_most_played_tracks | Get the most played tracks in the library. Args: limit: Maximum number of tracks to return Returns: List of most played tracks |
get_top_rated_tracks | Get the highest rated tracks in the library. Args: limit: Maximum number of tracks to return Returns: List of top rated tracks |
get_unplayed_tracks | Get tracks that have never been played. Args: limit: Maximum number of tracks to return Returns: List of unplayed tracks |
get_track_file_path | Get the file system path for a specific track. Args: track_id: The unique track identifier Returns: Dictionary containing file path information |
search_tracks_by_filename | Search for tracks by filename. Args: filename: Filename to search for (partial match) Returns: List of tracks matching the filename |
analyze_library | Analyze library with grouping and aggregation. Args: group_by: Field to group by (genre, key, year, artist, rating) aggregate_by: Aggregation method (count, playCount, totalTime) top_n: Number of top results to return Returns: Analysis results |
validate_track_ids | Validate a list of track IDs and show which are valid/invalid. Args: track_ids: List of track IDs to validate Returns: Validation results with valid and invalid IDs |
get_playlists | Get all playlists from the rekordbox database. Returns: List of playlists with metadata |
get_playlist_tracks | Get all tracks in a specific playlist. Args: playlist_id: The unique playlist identifier Returns: List of tracks in the playlist |
get_library_stats | Get comprehensive library statistics. Returns: Dictionary containing various library statistics |
connect_database | Connect to the rekordbox database. Args: database_path: Optional path to database directory. If not provided, auto-detection is used. Returns: Connection status message |
get_history_sessions | Get DJ history sessions from rekordbox. Args: include_folders: Whether to include folder entries (years/months) limit: Maximum number of sessions to return Returns: List of history sessions with metadata |
get_session_tracks | Get all tracks from a specific DJ history session. Args: session_id: The session's unique identifier Returns: List of tracks in the session with performance context |
get_recent_sessions | Get recent DJ history sessions within the specified number of days. Args: days: Number of days to look back (default: 30) Returns: List of recent history sessions |
get_history_stats | Get comprehensive statistics about DJ history sessions. Returns: Statistics about all history sessions including totals and trends |
search_history_sessions | Search DJ history sessions with various filters. Args: query: Search query for session names year: Filter by year (e.g., "2025") month: Filter by month (e.g., "08" for August) min_tracks: Minimum number of tracks in session limit: Maximum number of results Returns: List of matching history sessions |