← 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:

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

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.

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:

Check your specific client's documentation for the exact configuration format.

What Can the AI Do?

View Plugin Info

The AI can see:

Change Parameters

The AI can:

Work with Snapshots

The AI can:

Control Morphing

The AI can:

Explore and Randomize

The AI can:

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:

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:

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:

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:

Windows: "spawn npx ENOENT"

Problem: Claude Desktop can't find the npx command.

Solutions:

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:

"No Plugin Loaded"

Problem: AI says there are no parameters to control.

Solutions:

"No compatible message available" (Large Plugins)

Problem: Error when working with plugins that have many parameters (500+).

Solutions:

Changes Not Working

Problem: AI says it changed something but you don't hear a difference.

Possible causes:

Privacy and Security

Your Token is Your Password

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:

It cannot see:

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?"