Decent-Sampler Drums MCP Server
Facilitates the creation of DecentSampler drum kit configurations, supporting WAV file analysis and XML generation to ensure accurate sample lengths and well-structured presets.
dandeliongold
Tools
configure_drum_controls
Configure global pitch and envelope controls for each drum type. This tool will: - Add per-drum pitch controls with customizable ranges - Configure ADSR envelope settings for natural decay control - Generate proper XML structure for global drum controls Error Handling: - Validates pitch range values (min/max must be valid numbers) - Ensures envelope times are positive values - Verifies curve values are within -100 to 100 range - Returns detailed error messages for invalid configurations Success Response: Returns XML structure containing: - Global controls for each drum type - MIDI CC mappings for real-time control - Properly formatted parameter bindings
configure_round_robin
Configure round robin sample playback for a set of samples. This tool will: - Validate sequence positions - Verify sample files exist - Generate proper XML structure for round robin playback Error Handling: - Checks if sample files exist at specified paths - Validates sequence positions are unique and sequential - Ensures mode is one of: round_robin, random, true_random, always - Returns specific error messages for missing files or invalid sequences Success Response: Returns XML structure with: - Configured playback mode - Sample sequence assignments - Proper group organization for round robin playback
analyze_wav_samples
Analyze WAV files to detect common issues in drum kit samples. This tool checks for: - Non-standard WAV headers that may cause playback issues - Metadata inconsistencies that could affect multi-mic setups - Sample rate and bit depth compatibility - Channel configuration issues - File size and format validation Error Handling: - Reports detailed header format issues - Identifies metadata inconsistencies between related samples - Flags potential playback compatibility problems - Returns specific error messages for each issue type Success Response: Returns detailed analysis including: - WAV header information - Sample metadata - Potential compatibility issues - Recommendations for fixes IMPORTANT: Always use absolute paths (e.g., 'C:/Users/username/Documents/Samples/kick.wav') rather than relative paths.
configure_mic_routing
Configure multi-mic routing with MIDI controls for drum samples. This tool will: - Set up individual volume controls for each mic position (close, OH L/R, room L/R) - Route each mic to its own auxiliary output for DAW mixing - Configure MIDI CC mappings for mic volumes - Generate proper XML structure for DecentSampler Error Handling: - Validates mic position assignments - Checks for duplicate MIDI CC assignments - Ensures valid output routing targets - Verifies bus indices are unique and valid - Returns specific errors for routing conflicts Success Response: Returns XML structure containing: - Configured mic bus routing - Volume control mappings - MIDI CC assignments - Complete routing matrix for all samples
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: 1. 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"} ] }] } 2. 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
README
Decent Sampler Drums MCP Server
A Model Context Protocol server for generating Decent Sampler drum kit configurations.
This TypeScript-based MCP server provides specialized tools and prompts for creating DecentSampler drum kit presets, including WAV file analysis and XML generation.
<a href="https://glama.ai/mcp/servers/phypkuqwcn"><img width="380" height="200" src="https://glama.ai/mcp/servers/phypkuqwcn/badge" alt="Decent-Sampler Drums Server MCP server" /></a>
Demo Video
Warning: Creating complex presets may end up exceeding Claude Desktop's maximum message length. We are still working on streamlining this tool to work around this limitation. If you are creating simple presets without a lot of mics or other variations, the xml file should be small enough for Claude to write to a file.
Features
- WAV file analysis and validation
- Global pitch and envelope controls
- Multi-mic routing with MIDI controls
- Round robin sample playback
- Flexible velocity layer handling
- Muting group support
- Auxiliary output routing
Documentation
- How do I use these tools? - Step-by-step workflows with real examples
- Tools Documentation - Detailed information about each available tool
- Input Schemas - TypeScript interfaces and parameter descriptions
Installation
Prerequisites
- Node.js (v14 or higher)
- npm (usually comes with Node.js)
- Claude Desktop app (for use with Claude)
Setup
- Install dependencies:
npm install
- Build the server:
npm run build
- Add to your Claude Desktop config:
Windows: %APPDATA%/Claude/claude_desktop_config.json
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"decent-sampler-drums": {
"command": "npx",
"args": [
"-y",
"@dandeliongold/mcp-decent-sampler-drums"
],
"env": {}
}
}
}
Development
For development with auto-rebuild:
npm run watch
For debugging, use the MCP Inspector:
npm run inspector
Usage Guidelines
When using this MCP server to generate simple presets, you should always reference the simple_preset_guidelines
prompt.
For more complex presets (including sections such as buses, effects, etc.), reference the advanced_preset_guidelines
prompt. Note that creating complex presets with a large number of samples can still be unstable and may exceed Claude Desktop's maximum message length.
Both prompts will ask you to provide a samplesDirectory argument - this should be the absolute path to your drum samples folder (e.g., "C:/Users/username/Documents/DrumSamples"). The prompt will then automatically use this directory in all examples and configurations, making it easier to follow along with the correct paths for your system.
About Decent Sampler
Decent Sampler is a FREE sampling plugin that allows you to play samples in the Decent Sampler format.
Useful Links
Sample Sources
The goal of this MCP server is to make it easier to set up your own presets, whether you're playing your kitchen utensils into your phone, or recording a full kit in a studio. To create your own drum kits, you'll also need samples.
If you don't already have samples ready to go, here are some resources to get started:
Free and Low-Cost Sample Resources
-
99sounds.org
- Drum Samples Collection - Various drum kits and percussion samples
- Dub & Reggae Sounds - Specialized collection of reggae drum sounds
-
Archive.org: Sample Pack Collection - Community-contributed drum samples, sorted by popularity. Includes some cool stuff like vintage drum machines and CMI Fairlight samples.
-
Sample Pack Nation: Oberheim DMX/DX Drumkits - Classic drum machine sounds (Under 10 USD/EUR)
Recommended Servers
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
@kazuph/mcp-fetch
Model Context Protocol server for fetching web content and processing images. This allows Claude Desktop (or any MCP client) to fetch web content and handle images appropriately.
mermaid-mcp-server
A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.
mcp-pinterest
A Pinterest Model Context Protocol (MCP) server for image search and information retrieval
DeepSRT MCP Server
An MCP server that enables users to generate summaries of YouTube videos in multiple languages and formats through integration with DeepSRT's API.
ScreenshotOne MCP Server
An official MCP server implementation that allows AI assistants to capture website screenshots through the ScreenshotOne API, enabling visual context from web pages during conversations.
Glif
Run AI workflows hosted on Glif.app via MCP, including ComfyUI-based image generators, meme generators, selfies, chained LLM calls, and more
WebPerfect MCP Server
An intelligent MCP server with a fully automated batch pipeline for web-ready images. Features include noise reduction, auto levels/curves, JPEG artifact removal, 4K resizing, smart sharpening with shadow/highlight enhancement, and advanced WebP conversion.
Stealth Browser MCP Server
Provides stealth browser capabilities using Playwright with anti-detection techniques, allowing MCP clients to navigate websites and take screenshots while evading common bot detection systems.
MCP-LOGO-GEN
MCP Tool Server for Logo Generation. This server provides logo generation capabilities using FAL AI, with tools for image generation, background removal, and image scaling.