Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

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

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
mixx_deckA

Comprehensive deck control for Mixxx.

PORTMANTEAU PATTERN: Consolidates all deck playback and transport controls.

SUPPORTED OPERATIONS:

  • play_pause: Toggle play/pause on deck

  • stop: Stop playback completely

  • load: Load a track to deck (requires track_path)

  • cue_set: Set cue point at current position

  • cue_play: Play from cue point

  • loop_activate: Toggle loop on/off (requires enable)

  • loop_beat: Set loop of specified beats (requires beats)

  • beatloop: Same as loop_beat

  • rate_set: Set playback rate/BPM adjustment (requires value, -1.0 to 1.0)

  • rate_temp: Temporary pitch bend (requires value, seconds)

  • sync_enable: Toggle sync lock (requires enable)

  • sync_leader: Set deck as sync leader (requires enable)

  • seek: Seek to position in seconds (requires value)

  • scratch: Enable/disable scratch mode (requires enable)

  • hotcue_activate: Activate hotcue by number (requires hotcue)

  • quantize: Toggle quantize mode (requires enable)

  • keylock: Toggle keylock (requires enable)

  • video_enable: Toggle video playback for deck (requires enable)

  • video_fullscreen: Toggle video fullscreen output (requires enable)

Returns: Dict with operation result

Examples: mixx_deck("play_pause", deck=1) mixx_deck("load", deck=1, track_path="C:/Music/track.mp3") mixx_deck("rate_set", deck=1, value=0.05) mixx_deck("loop_beat", deck=1, beats=8) mixx_deck("sync_enable", deck=2, enable=True) mixx_deck("hotcue_activate", deck=1, hotcue=3)

mixx_controllerB

DJ controller auto-detection and mapping management.

SUPPORTED OPERATIONS:

  • detect: Scan USB for connected DJ controllers

  • install: Install a Mixxx mapping for a detected controller

  • list: List all installed Mixxx controller mappings

  • status: Show current controller configuration

  • download: Download community mappings from GitHub

Returns: Dict with operation result

Examples: mixx_controller("detect") mixx_controller("list") mixx_controller("install", mapping_name="Pioneer-DDJ-400")

mixx_dawA

Cross-connection between Mixx-DJ-MCP and DAWs (Fairlight, Reaper).

PORTMANTEAU PATTERN: Consolidates DAW export operations.

SUPPORTED OPERATIONS:

  • export_stems: Copy stem WAVs to a DAW project directory

  • export_session: Write a session metadata JSON for DAW import

  • send_to_fairlight: Send stems to DaVinci Resolve's Fairlight page via REST API

  • send_to_reaper: Send stems to Reaper via reaper-mcp REST API (POST /api/v1/project/import_media)

  • resolume_sync: Send deck BPM to Resolume via OSC (canonical composition addresses, port 7000)

  • visuals_connect: Start continuous audio-reactive visual sync to Resolume

  • visuals_trigger: Fire a one-shot visual effect (strobe, pulse, color_cycle, wave, particles)

Returns: Dict with export result and file paths

Examples: mixx_daw("export_stems", output_dir="D:/Projects/Gig/Stems") mixx_daw("export_session", session_name="Friday Gig", source_dir="D:/Stems") mixx_daw("send_to_fairlight", source_dir="D:/Stems", session_name="Friday Gig")

mixx_libraryB

Library management for Mixxx.

PORTMANTEAU PATTERN: Consolidates all library browsing and track info tools.

SUPPORTED OPERATIONS:

  • search: Search the library for tracks (requires query)

  • browse_crate: Browse tracks in a crate (requires crate)

  • browse_playlist: Browse tracks in a playlist (requires playlist)

  • load_selected: Load highlighted/selected track to deck

  • get_track_info: Get metadata for current track on deck (requires deck)

  • get_bpm: Get BPM of track on deck (requires deck)

  • get_key: Get musical key of track on deck (requires deck)

  • get_replay_gain: Get replay gain values for track on deck (requires deck)

Returns: Dict with operation result

Examples: mixx_library("search", query="Daft Punk") mixx_library("load_selected", deck=1) mixx_library("get_track_info", deck=1)

mixx_effectsB

Effect chain control for Mixxx.

PORTMANTEAU PATTERN: Consolidates all effect rack and chain operations.

SUPPORTED OPERATIONS:

  • list_effects: List available effects for a rack/unit

  • chain_load: Load an effect chain by name (requires effect)

  • chain_clear: Clear the effect chain on a rack/unit

  • parameter_set: Set a specific effect parameter (requires parameter, value)

  • meta_set: Set meta/param knob value (requires value, 0.0-1.0)

  • quick_effect_set: Set quick effect for deck (requires deck, effect)

  • effect_enable: Enable/disable an effect unit (requires enable)

Returns: Dict with operation result

Examples: mixx_effects("chain_load", rack=1, unit=1, effect="Flanger") mixx_effects("parameter_set", rack=1, unit=1, parameter=2, value=0.75) mixx_effects("effect_enable", rack=1, unit=1, enable=True)

mixx_mixerA

Mixer control for Mixxx.

PORTMANTEAU PATTERN: Consolidates all mixer and channel strip operations.

SUPPORTED OPERATIONS:

  • crossfader_set: Set crossfader position (requires value, -1.0 to 1.0)

  • crossfader_curve: Set crossfader curve (requires value, 0.0-1.0)

  • gain_set: Set deck gain/pregain (requires value, 0.0-5.0)

  • eq_set: Set EQ band for deck (requires eq_band, value 0.0-1.0)

  • volume_set: Set channel volume (requires value, 0.0-1.0)

  • headphone_cue: Toggle headphone cue for deck (requires enable)

  • talkover: Toggle talkover / microphone

  • mic_gain: Set microphone gain (requires value, 0.0-1.0)

Returns: Dict with operation result

Examples: mixx_mixer("crossfader_set", value=0.0) mixx_mixer("gain_set", deck=1, value=0.85) mixx_mixer("eq_set", deck=1, eq_band="low", value=0.5) mixx_mixer("headphone_cue", deck=1, enable=True)

show_deck_status_cardA

Show live deck status as a rich Prefab card.

Displays play state, BPM, key, volume, loop status, and sync state for the specified deck with data-testid attributes for CUA/Playwright testing.

show_mixer_status_cardB

Show live mixer status as a rich Prefab card.

Displays crossfader position, master gain, and per-deck levels with data-testid attributes for automated testing.

Returns: PrefabApp card with mixer KPIs

show_library_status_cardB

Show library connection and search status as a Prefab card.

Reports whether the OSC bridge is connected to Mixxx and any active search or crate context.

Returns: PrefabApp card with library KPIs

mixx_setB

AI-assisted set sequencing and analysis.

PORTMANTEAU PATTERN: Consolidates set planning and analysis.

SUPPORTED OPERATIONS:

  • sequence: Generate an optimized track order from a crate (requires crate) Uses local Ollama (llama3.2:3b) for harmonic mixing, energy curve, and phrase-aligned transitions.

  • record: Start/stop session recording via OSC

  • analyze_set: Analyze a recorded session or mix for BPM transitions, energy, etc.

Returns: Dict with ordered track list and reasoning

Examples: mixx_set("sequence", crate="Peak Time", name="Friday Gig") mixx_set("record") mixx_set("analyze_set", name="Last Saturday", analyze_type="recording")

mixx_skinA

Skin browser and manager for Mixxx.

PORTMANTEAU PATTERN: Consolidates skin discovery and management.

SUPPORTED OPERATIONS:

  • list: List all available skins from the curated manifest

  • search: Search skins by name, author, or tag (requires query or tags)

  • install: Install a skin from the manifest to the Mixxx user skins dir

  • uninstall: Remove an installed skin (requires skin_id)

  • preview: Show information about a skin (requires skin_id)

  • create_video_skin: Copy LateNight and add VideoWidget entries for video-DJ workflows

  • create_skin: Generate a new skin by cloning LateNight and recoloring SVGs via inkscape-mcp (requires name and prompt; optional base_skin defaults to latenight)

  • patch_scheme: Apply a bundled color scheme to Mixxxxx Video Daylight QSS (scheme defaults to daylight-v2; target=installed|source)

Returns: Dict with operation result and list of skins

Examples: mixx_skin("list") mixx_skin("search", tags="video-ready,dark") mixx_skin("install", skin_id="tara") mixx_skin("create_video_skin") mixx_skin("create_skin", name="cyberpunk", prompt="dark purple with cyan accents, neon waveform") mixx_skin("patch_scheme", scheme="daylight-v2", target="installed")

mixx_crateA

Smart crate management for Mixxx.

PORTMANTEAU PATTERN: Consolidates crate creation and management.

SUPPORTED OPERATIONS:

  • create: Create a crate from a natural language prompt (requires name, prompt)

  • list: List all crates in the library

  • delete: Delete a crate by name (requires name)

  • add_track: Add currently playing track on deck to a crate (requires name, deck)

  • create_agentic: Create a self-curating crate with an LLM rule (requires name, rule) Rules: "126-132 BPM, Dm or Em, 4+ stars, genre:tech house" The crate auto-updates based on the rule when the server starts.

Return Format

{"success": bool, "message": str, "data": dict}

Examples

mixx_crate("create", name="Peak Time", prompt="tech house 124-128 BPM D minor")
mixx_crate("list")
mixx_crate("add_track", name="Favorites", deck=1)
mixx_crate("create_agentic", name="Morning Warmup",
           rule="126-132 BPM, Dm or Em, 4+ stars, genre:tech house")
mixx_stemsA

Stem separation and sampler control using Demucs.

PORTMANTEAU PATTERN: Consolidates stem separation, sampler loading, and stem-aware mixing operations for Mixxx.

SUPPORTED OPERATIONS:

  • separate: Run Demucs stem separation. Requires a track loaded on the deck (uses bridge state to detect).

  • status: Check if Demucs is available and list sampler slot assignments.

  • load_stems: Load previously separated stems to Mixxx sampler decks via OSC.

  • transition: Stem-aware crossfader transition - mutes vocals + other on outgoing deck.

  • mute: Mute or unmute a sampler (requires enable).

  • volume: Set sampler volume level (requires value, 0.0-1.0).

Returns: Dict with operation result

Examples: mixx_stems("separate", deck=1, output_dir="C:/stems/out") mixx_stems("status") mixx_stems("load_stems", deck=1) mixx_stems("mute", sampler=1, enable=True) mixx_stems("volume", sampler=2, value=0.5) mixx_stems("transition", deck_a=1, deck_b=2)

mixx_transitionB

AI-powered transitions between decks.

PORTMANTEAU PATTERN: Consolidates creative transition effects.

SUPPORTED OPERATIONS:

  • suggest: Ask LLM to suggest best transition for the two loaded tracks

  • apply: Apply a specific transition effect between decks

  • auto_crossfader: Enable/disable AI-assisted crossfader (auto-picks transitions)

Available effects: echo_out, filter_sweep, stem_swap, hard_cut, spin_back, flanger, reverb_kill, long_blend

Returns: Dict with transition result

Examples: mixx_transition("suggest", deck_a=1, deck_b=2) mixx_transition("apply", deck_a=1, deck_b=2, effect="filter_sweep") mixx_transition("auto_crossfader", enable=True)

mixx_vinylA

Vinyl record catalog and search tool.

PORTMANTEAU PATTERN: Consolidates all vinyl collection management.

SUPPORTED OPERATIONS:

  • catalog: Run OCR pipeline on a directory of vinyl photos (requires directory)

  • search: Search the vinyl database by query, genre, and era

  • gig_pick: Natural language query to pick records for a gig (requires query)

  • crossref: Find matching digital copy in Plex (requires vinyl_id)

  • stats: Summary of the vinyl collection

Return Format

{"success": bool, "message": str, "data": dict}

Examples

mixx_vinyl("catalog", directory="D:/Vinyl/inbox") mixx_vinyl("search", query="techno", genre="techno", limit=10) mixx_vinyl("gig_pick", query="dark warehouse techno set", count=5) mixx_vinyl("crossref", vinyl_id=1) mixx_vinyl("stats")

mixx_analyzeB

Audio analysis engine using librosa.

PORTMANTEAU PATTERN: Consolidates audio analysis operations.

SUPPORTED OPERATIONS:

  • track: Analyze a single audio file. Returns BPM, key, Camelot, energy, structure.

  • batch_status: Show how many tracks are analyzed vs pending.

  • suggest_cues: Suggest hotcue positions based on track structure.

Returns: Dict with analysis results

Examples: mixx_analyze("track", path="C:/Music/track.mp3") mixx_analyze("batch_status")

mixx_recordingA

Record, replay, and export DJ sets.

PORTMANTEAU PATTERN: Consolidates set recording and replay.

SUPPORTED OPERATIONS:

  • start: Begin recording OSC commands (name: set name)

  • stop: Stop recording and save

  • list: List recorded sets

  • replay: Replay a recorded set's OSC commands

  • export: Export set as JSON for external tools

  • status: Show current recording state

Examples: mixx_recording("start", name="Club Night 2026-07-24") mixx_recording("stop") mixx_recording("list") mixx_recording("replay", set_id="...", replay_speed=0.5)

mixx_historyC

DJ play history, analytics, and personal style profiling.

PORTMANTEAU PATTERN: Consolidates analytics and history.

SUPPORTED OPERATIONS:

  • plays: Recent play history

  • transitions: Recent transition log

  • profile: Personal DJ style profile (BPM range, key preferences, transition style)

  • suggest: Tracks you haven't played recently

  • log_play: Manually log a track play (auto-called by deck ops)

  • log_transition: Manually log a transition

Examples: mixx_history("profile") mixx_history("suggest", limit=10) mixx_history("plays", limit=20)

mixx_ai_setB

AI Autonomous Mix Agent using MCP sampling.

Uses ctx.sample() for autonomous reasoning about set structure, track selection, and transition timing. Falls back to rule-based execution when sampling is unavailable.

PORTMANTEAU PATTERN: Consolidates AI set planning and performance.

SUPPORTED OPERATIONS:

  • plan: Generate a structured DJ set plan (BPM curve, energy arc, genre flow)

  • suggest_next: Given current deck state, suggest the next track and transition

  • perform_transition: Execute an AI-chosen transition between two decks

  • review_set: Analyze a completed or hypothetical set for improvement ideas

Examples: mixx_ai_set("plan", style="drum and bass", duration_minutes=30) mixx_ai_set("suggest_next", deck_a=1) mixx_ai_set("perform_transition", deck_a=1, deck_b=2)

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Prefab Renderer (show_deck_status_card)
Prefab Renderer (show_mixer_status_card)
Prefab Renderer (show_library_status_card)

TDQS

B3.4/5.0

Scored across 19 tools

Disambiguation3/5

Most tools are cleanly scoped by domain (deck, mixer, effects, library, crates), but the AI-set trio—mixx_set, mixx_ai_set, and mixx_transition—overlap heavily on set planning and transition suggestion/execution, and mixx_stems also exposes a 'transition' op. mixx_analyze and mixx_library both surface track BPM/key metadata. Descriptions help, but boundaries require careful reading.

Naming Consistency4/5

The bulk of tools follow a consistent 'mixx_<domain>' snake_case pattern that maps cleanly to their domain. The three 'show_<x>_status_card' tools deviate from that prefix convention, introducing a second pattern, but it remains readable and predictable overall.

Tool Count4/5

19 tools is on the higher side, but the portmanteau design means each tool represents a genuine distinct domain (deck, mixer, effects, stems, vinyl, recording, etc.), so each earns its place. Slightly heavy but well justified for a full DJ control surface.

Completeness4/5

Coverage is broad and deep—transport, mixing, effects, library, crates, skins, stems, transitions, recording, history, and even DAW export. Minor gaps exist (e.g., beatgrid/sample editing, finer controller mapping edits), but core workflows and lifecycle operations are well covered.

Maintenance

ActivityActive
ResponsivenessNo issues