Decent-Sampler Drums MCP Server
by dandeliongold
Verified
generate_drum_groups
Generate DecentSampler <groups> XML for drum kits.
This tool supports two configuration types:
BasicDrumKitConfig:
- For simple presets with minimal features
- No UI controls, effects, or routing
- Only supports basic sample mapping and optional velocity layers
- Recommended for straightforward drum kits
AdvancedDrumKitConfig:
- For complex setups combining multiple features
- Supports UI controls, effects, and routing
- Integrates with other tools (configure_drum_controls, configure_mic_routing, etc.)
- Use when you need advanced features like round robin or multi-mic setups
Best Practices:
- IMPORTANT: Always use absolute paths (e.g., 'C:/Users/username/Documents/Samples/kick.wav')
- Group all samples for a drum piece into a single group
- When using multiple mic positions, include them all in the same group
- Use velocity layers within a group to control dynamics
Error Handling:
- Validates all sample paths exist
- Checks for valid MIDI note numbers
- Ensures velocity layers don't overlap
- Verifies muting group configurations
- Returns specific errors for any invalid settings
Example Configurations:
- Basic Configuration (simple drum kit): { "globalSettings": { "velocityLayers": [ { "low": 1, "high": 42, "name": "soft" }, { "low": 43, "high": 85, "name": "medium" }, { "low": 86, "high": 127, "name": "hard" } ] }, "drumPieces": [{ "name": "Kick", "rootNote": 36, "samples": [ {"path": "C:/Samples/Kick_Soft.wav"}, {"path": "C:/Samples/Kick_Medium.wav"}, {"path": "C:/Samples/Kick_Hard.wav"} ] }] }
- Advanced Configuration (multi-mic kit with controls): { "globalSettings": { "velocityLayers": [ { "low": 1, "high": 127, "name": "full" } ], "drumControls": { "kick": { "pitch": { "default": 0, "min": -12, "max": 12 }, "envelope": { "attack": 0.001, "decay": 0.5, "sustain": 0, "release": 0.1 } } }, "micBuses": [ { "name": "Close Mic", "outputTarget": "MAIN_OUTPUT", "volume": { "default": 0, "midiCC": 20 } } ] }, "drumPieces": [{ "name": "Kick", "rootNote": 36, "samples": [ { "path": "C:/Samples/Kick_Close.wav", "micConfig": { "position": "close", "busIndex": 0 } } ], "muting": { "tags": ["kick"], "silencedByTags": [] } }] }
Success Response: Returns complete XML structure with:
- Organized sample groups
- Velocity layer mappings
- Muting group configurations
- All sample references and settings
- Advanced features when using AdvancedDrumKitConfig
Input Schema
Name | Required | Description | Default |
---|---|---|---|
drumPieces | Yes | ||
globalSettings | Yes |