← Back to Manual
MCP Integration Guide World's First
Complete reference for connecting AI assistants to SnappySnap
What is MCP?
MCP (Model Context Protocol) lets AI assistants like Claude control SnappySnap directly.
Think of it like giving Claude a remote control for your plugin.
With MCP enabled, you can say things like:
- "Make the sound warmer"
- "Save this as a snapshot"
- "Blend between my clean and dirty sounds"
- "Randomize everything except the volume"
The AI understands what you want and adjusts the plugin for you.
Why Use MCP?
| Without MCP |
With MCP |
| You adjust every knob manually |
AI adjusts knobs based on your description |
| You need to know parameter names |
Just describe what you want |
| Trial and error to find sounds |
AI suggests and applies changes |
| Complex morph setup |
"Blend between these two sounds" |
Best for: Sound design exploration, quick preset tweaking, learning what parameters do, hands-free adjustments while playing.
Getting Started
Step 1: Enable MCP Server
- Open SnappySnap (standalone or in your DAW)
- Toggle Enable MCP Server ON
- Click the "i" icon (info)
- Find MCP Server section
- You'll see a port number appear (like
52001)
Step 2: Copy Your Security Token
When you enable MCP, a security token is generated. This is like a password that proves you're allowed to control the plugin.
- It appears in the info panel after enabling MCP
- Or find it in:
~/Library/Application Support/SnappySnap/settings.xml
Keep this token private — anyone with it can control your plugin.
Step 3: Connect Your AI Assistant
How you connect depends on which AI you're using:
Claude Desktop / Claude Code
Find and edit the Claude configuration file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows:
%APPDATA%\Claude\claude_desktop_config.json
macOS Configuration
Replace YOUR_TOKEN_HERE with your actual token from SnappySnap:
{
"mcpServers": {
"snappysnap": {
"command": "npx",
"args": [
"mcp-remote",
"http://127.0.0.1:3001/mcp",
"--header",
"Authorization: Bearer YOUR_TOKEN_HERE"
]
}
}
}
Windows Configuration
Prerequisites: You must have
Node.js installed on Windows. Download the LTS version and restart Claude Desktop after installation.
On Windows, use npx.cmd instead of npx:
{
"mcpServers": {
"snappysnap": {
"command": "npx.cmd",
"args": [
"mcp-remote",
"http://127.0.0.1:3001/mcp",
"--header",
"Authorization: Bearer YOUR_TOKEN_HERE"
]
}
}
}
Important: SnappySnap must be running with a plugin loaded before you start Claude Desktop. The MCP server is built into SnappySnap — it needs to be open for Claude to connect.
Other MCP Clients (Cursor, Continue, etc.)
Each client implements their own configuration approach. You'll typically need to provide:
- Server URL:
http://127.0.0.1:PORT/mcp
- Transport type:
streamable-http (Streamable HTTP)
- Auth header:
Authorization: Bearer YOUR_TOKEN
Check your specific client's documentation for the exact configuration format.
What Can the AI Do?
View Plugin Info
The AI can see:
- Which plugin is loaded
- All available parameters and their current values
- Your saved snapshots
- Current morph position
Change Parameters
The AI can:
- Adjust any parameter by name ("turn up the drive")
- Set exact values ("set reverb to 75%")
- Change multiple parameters at once
- Use fuzzy matching ("cut the highs" finds "High Cut Frequency")
Work with Snapshots
The AI can:
- Save the current sound to any of 12 slots
- Load saved snapshots
- Name your snapshots ("save this as Heavy Bass")
- List what's in each slot
Control Morphing
The AI can:
- Set the morph position between snapshots
- Use 1D morphing (simple left-to-right blend)
- Use 2D morphing (XY pad style blending)
- Check current morph state
Explore and Randomize
The AI can:
- List all your installed plugins
- Randomize parameters for happy accidents
- Exclude specific parameters from randomization
- Filter to only "sound design" parameters (skipping UI stuff)
Example Conversations
Sound Design Help
You: "I want this synth to sound more aggressive"
AI: I've increased the drive to 70%, added some saturation, and boosted the filter resonance. How does that sound?
Quick Preset Creation
You: "Save what we have now as 'Warm Pad' in slot 1"
AI: Done! I've saved the current settings as 'Warm Pad' in snapshot slot 1.
Morphing Between Sounds
You: "I want to blend between slot 1 and slot 2, about 30% towards slot 2"
AI: I've set the morph to 30% toward slot 2. You'll hear mostly the slot 1 sound with some slot 2 mixed in.
Controlled Randomization
You: "Randomize everything but keep the volume and effects bypass where they are"
AI: I've randomized 245 parameters while keeping volume and bypass settings unchanged.
Tips for Best Results
Be Specific About What You Want
| Less Effective |
More Effective |
| "Make it better" |
"Make the bass fuller and reduce harshness" |
| "Change the sound" |
"Add more movement and modulation" |
| "Fix it" |
"The high frequencies are too harsh, tame them" |
Use Musical Terms
The AI understands:
- "Warmer" / "Brighter" / "Darker"
- "More attack" / "Softer transients"
- "Tighter bass" / "Looser low end"
- "More presence" / "Cut through the mix"
- "Wet" / "Dry" / "Blend"
Save Before Experimenting
Ask the AI to save your current sound before making big changes:
"Save this to slot 0 as 'Starting Point', then try making it more aggressive"
You can always go back if you don't like the changes.
Check What Changed
After the AI makes adjustments, you can ask:
"What parameters did you just change?"
This helps you learn what affects the sound.
Understanding Parameters
What Are Parameters?
Parameters are all the controls in a plugin — every knob, slider, and button. A simple plugin might have 20 parameters. A complex synth might have 1,000+.
Normalized Values
When the AI sets parameter values, it uses "normalized" values from 0.0 to 1.0:
0.0 = minimum (fully left, off, lowest)
0.5 = middle/default
1.0 = maximum (fully right, on, highest)
You don't need to think about this — just say "set it to 75%" and the AI handles the conversion.
AI-Relevant vs All Parameters
Many plugins have hundreds of parameters, but not all are useful for sound design. Some are:
- Internal UI state
- MIDI learn settings
- Bypass switches
- System controls
The AI can filter to just the "sound design" parameters, making responses faster and more focused.
Troubleshooting
"Connection Refused" or "fetch failed"
Problem: The AI can't connect to SnappySnap.
Solutions:
- SnappySnap must be running first — open it before starting Claude Desktop
- Check MCP Server is enabled in settings
- Verify the port number matches what's shown in SnappySnap (default: 3001)
- If using a DAW, make sure the plugin window is open
- Try opening
http://127.0.0.1:3001/mcp in a browser — if it doesn't load, SnappySnap's MCP server isn't running
Windows: "spawn npx ENOENT"
Problem: Claude Desktop can't find the npx command.
Solutions:
- Install Node.js from nodejs.org (LTS version)
- After installing, restart Claude Desktop completely
- Make sure you're using
npx.cmd (not npx) in your config
- If still failing, verify Node.js is in your PATH by opening PowerShell and running:
where.exe npx
Windows: "'C:\Program' is not recognized"
Problem: Paths with spaces are being split incorrectly.
Solution: Use npx.cmd directly (not the full path). If Node.js is properly installed, the simple config shown above will work.
"Unauthorized"
Problem: The AI's requests are rejected.
Solutions:
- Copy a fresh token from SnappySnap settings
- Make sure you're using the complete token (it's long!)
- Check for extra spaces when you pasted it
- The token format should be:
Authorization: Bearer YOUR_TOKEN (note the space after "Bearer")
"No Plugin Loaded"
Problem: AI says there are no parameters to control.
Solutions:
- Load a plugin in SnappySnap first
- Wait for the plugin to fully initialize
- Try asking "what plugin is loaded?" to verify
"No compatible message available" (Large Plugins)
Problem: Error when working with plugins that have many parameters (500+).
Solutions:
- Use Learn Mode to select only the parameters you want AI to control
- Click "Listen", wiggle the knobs you care about, then stop listening
- This reduces 1000+ parameters down to just the ones you selected
- Ask the AI to use
ai_relevant_only: true when fetching parameters
Changes Not Working
Problem: AI says it changed something but you don't hear a difference.
Possible causes:
- The parameter might not affect the current sound (e.g., changing oscillator 2 when it's off)
- The change might be subtle — try more extreme values
- Some parameters need specific conditions (e.g., filter cutoff matters more with resonance up)
Privacy and Security
Your Token is Your Password
- Never share your MCP token publicly
- Each SnappySnap instance has its own token
- Tokens are stored locally on your computer
Local Connection Only
MCP runs on 127.0.0.1 (localhost) — it only accepts connections from your own computer. Remote connections are not supported by default.
What the AI Can See
When connected, the AI can see:
- Plugin names and manufacturers
- Parameter names and values
- Snapshot names
It cannot see:
- Your audio
- Other applications
- Files on your computer
- Anything outside SnappySnap
Quick Reference
Snapshot Slots
Available: 0-11 (12 total)
Morph Ranges
1D Position: 0.0 to 1.0
2D X/Y: 0.0 to 1.0
Parameter Values
0.0 = Minimum
0.5 = Center
1.0 = Maximum
Common Requests
| What You Want |
How to Ask |
| See current plugin |
"What plugin is loaded?" |
| View all snapshots |
"Show me the snapshots" |
| Save current sound |
"Save this to slot 3 as 'My Sound'" |
| Load a snapshot |
"Load snapshot 2" |
| Blend sounds |
"Set morph to 50%" |
| Adjust a parameter |
"Turn up the filter cutoff" |
| Randomize |
"Randomize the parameters" |
| Check morph state |
"Where is the morph position?" |