Connect an agent

One URL is all an agent needs. Copy it from Slippy's panel, add it to your agent, and it can work in the app.

Open Illustrator, copy this page's contents, and ask your agent to add Slippy as an MCP server.

Get Slippy's URL

Click Copy connection in Slippy's panel. It copies a URL like this, with your token at the end:

http://127.0.0.1:7331/mcp/<token>    # Illustrator
http://127.0.0.1:7332/mcp/<token>    # Photoshop

That's an MCP server over streamable HTTP, which almost every agent supports. The token keeps other programs out and stays the same across launches, so you add Slippy to an agent once.

The examples below use Illustrator. For Photoshop, add a second entry the same way with its own URL (:7332). With both, an agent can work in Illustrator and Photoshop in one conversation.

At a glance

AgentHow to add Slippy
Claude Codeclaude mcp add --transport http …
Codexcodex mcp add … --url … or ~/.codex/config.toml
Gemini CLIgemini mcp add --transport http …
GitHub Copilot CLIcopilot mcp add --transport http …
OpenCodeopencode.json, "type": "remote"
Ampsettings.json, amp.mcpServers
Goosegoose configure > Remote Extension (Streamable HTTP)
Cursor~/.cursor/mcp.json, "url"
VS Code (Copilot)mcp.json, "type": "http"
Windsurfmcp_config.json, "serverUrl"
Zedsettings.json, context_servers
Clinecline_mcp_settings.json, "type": "streamableHttp"
Roo Codemcp_settings.json, "type": "streamable-http"
Continueconfig.yaml, type: streamable-http
JetBrains AI Assistant / JunieSettings, or .junie/mcp/mcp.json
Kiro~/.kiro/settings/mcp.json
Claude Desktopclaude_desktop_config.json + mcp-remote
LM Studio~/.lmstudio/mcp.json
WarpSettings > Agents > MCP servers
Anything elsethe URL, or npx mcp-remote

Terminal agents

Claude Code

claude mcp add --transport http slippy-illustrator http://127.0.0.1:7331/mcp/<token>
claude mcp add --transport http slippy-photoshop   http://127.0.0.1:7332/mcp/<token>

Add --scope user to have Slippy in every project. Start a new session (or run /mcp) to see its tools.

Codex

codex mcp add slippy-illustrator --url http://127.0.0.1:7331/mcp/<token>

Or in ~/.codex/config.toml:

[mcp_servers.slippy-illustrator]
url = "http://127.0.0.1:7331/mcp/<token>"

On an older Codex without url, use the bridge instead: command = "npx", args = ["-y", "mcp-remote", "<URL>"].

Gemini CLI

gemini mcp add --transport http slippy-illustrator http://127.0.0.1:7331/mcp/<token>

Or in ~/.gemini/settings.json (note: httpUrl, not url):

{
  "mcpServers": {
    "slippy-illustrator": { "httpUrl": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

GitHub Copilot CLI

copilot mcp add --transport http slippy-illustrator http://127.0.0.1:7331/mcp/<token>

Or in ~/.copilot/mcp-config.json: {"mcpServers": {"slippy-illustrator": {"type": "http", "url": "…"}}}.

OpenCode

In opencode.json (the project's, or ~/.config/opencode/opencode.json):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "slippy-illustrator": { "type": "remote", "url": "http://127.0.0.1:7331/mcp/<token>", "enabled": true }
  }
}

Amp

In Amp's settings.json:

"amp.mcpServers": {
  "slippy-illustrator": { "url": "http://127.0.0.1:7331/mcp/<token>" }
}

Goose

Run goose configure, choose Add Extension > Remote Extension (Streamable HTTP), name it, and paste the URL. Or in ~/.config/goose/config.yaml (note: uri, not url):

extensions:
  slippy-illustrator:
    type: streamable_http
    name: slippy-illustrator
    enabled: true
    uri: "http://127.0.0.1:7331/mcp/<token>"
    timeout: 300

Editors

Cursor

In ~/.cursor/mcp.json (or the project's .cursor/mcp.json):

{
  "mcpServers": {
    "slippy-illustrator": { "url": "http://127.0.0.1:7331/mcp/<token>" },
    "slippy-photoshop": { "url": "http://127.0.0.1:7332/mcp/<token>" }
  }
}

VS Code (GitHub Copilot)

Run MCP: Add Server from the Command Palette, pick HTTP, and paste the URL. Or in .vscode/mcp.json (or your profile's mcp.json), which uses servers, not mcpServers:

{
  "servers": {
    "slippy-illustrator": { "type": "http", "url": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

Windsurf

In ~/.codeium/windsurf/mcp_config.json (note: serverUrl, not url):

{
  "mcpServers": {
    "slippy-illustrator": { "serverUrl": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

Zed

In Zed's settings.json. Zed starts an OAuth sign-in when a server has no Authorization header, so pass the token as a header instead of in the URL:

"context_servers": {
  "slippy-illustrator": {
    "url": "http://127.0.0.1:7331/mcp",
    "headers": { "Authorization": "Bearer <token>" }
  }
}

Cline

In Cline's MCP settings (MCP Servers > Configure, cline_mcp_settings.json). Set the type, or Cline assumes the older SSE transport:

{
  "mcpServers": {
    "slippy-illustrator": { "type": "streamableHttp", "url": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

Roo Code

In mcp_settings.json (global) or the project's .roo/mcp.json:

{
  "mcpServers": {
    "slippy-illustrator": { "type": "streamable-http", "url": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

Continue

In Continue's config.yaml:

mcpServers:
  - name: slippy-illustrator
    type: streamable-http
    url: http://127.0.0.1:7331/mcp/<token>

JetBrains AI Assistant and Junie

In Settings > Tools > AI Assistant > Model Context Protocol (MCP), add a server as JSON (IDE 2025.3 or later for URLs). For Junie, use .junie/mcp/mcp.json in the project or ~/.junie/mcp/mcp.json:

{
  "mcpServers": {
    "slippy-illustrator": { "url": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

Kiro

In ~/.kiro/settings/mcp.json (or the project's .kiro/settings/mcp.json):

{
  "mcpServers": {
    "slippy-illustrator": { "url": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

Desktop apps

Claude Desktop

Claude Desktop's Connectors reach servers from the cloud, so they can't see Slippy on your computer. Add it to the config file instead (Settings > Developer > Edit Config, claude_desktop_config.json), through the mcp-remote bridge (needs Node.js):

{
  "mcpServers": {
    "slippy-illustrator": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "http://127.0.0.1:7331/mcp/<token>"]
    }
  }
}

Restart Claude Desktop afterwards.

LM Studio

With a local model, in ~/.lmstudio/mcp.json (Program > Install > Edit mcp.json):

{
  "mcpServers": {
    "slippy-illustrator": { "url": "http://127.0.0.1:7331/mcp/<token>" }
  }
}

Warp

Open Settings > Agents > MCP servers (or Open MCP Servers from the command palette), click Add, and paste:

{
  "mcpServers": {
    "slippy-illustrator": { "url": "http://127.0.0.1:7331/mcp/<token>" }
  }
}
ChatGPT and other web apps can't connect: they reach MCP servers from the internet, and Slippy only answers your own computer. Use a desktop or terminal agent instead.

Any other agent

The terminal in Illustrator's panel

The chevron at the bottom of Illustrator's Slippy panel opens a terminal (macOS). Slippy's URL is already in it, as $SLIPPY_URL, so an agent started there connects with nothing to paste:

claude mcp add --transport http slippy "$SLIPPY_URL"

The tools agents get

Agents see the everyday commands as their own tools (document_info, art_tree, art_transform, layer_set…), plus four of Slippy's own:

ToolWhat it does
slippy_findSearches every command by words (“gradient”, “symbol”, “blur”) and returns their parameters.
slippy_callRuns any command by name.
slippy_batchRuns several commands as one undo step.
slippy_statusChecks the app is there: versions, open documents.

That keeps the tool list short, which every client handles. For clients that do well with hundreds of tools, add ?tools=all to the URL to get every command as its own tool.

Scripts and curl

Slippy also speaks plain JSON-RPC at /rpc/<token>, for scripts:

curl -s http://127.0.0.1:7331/rpc/<token> -d '{"jsonrpc":"2.0","id":1,"method":"document.info"}'

Send an array of calls to run them as one undo step.

If an agent can't connect