SVG Lab Request access

SVG Lab MCP setup guide

Connect your AI to SVG Lab. About two minutes.

The SVG Lab MCP gives the AI app you already use a design engine. Add one address, sign in to SVG Lab, press Approve, and your assistant can design app screens, icons, illustrations and charts that land in your SVG Lab projects, ready to edit and export.

https://svglab.app/mcp
The only address you need. No key, nothing to install.
Works with
Claude, ChatGPT, Codex, Cursor, VS Code, OpenCode and more
Connection type
Remote MCP over streamable HTTP
Sign-in
OAuth: your app opens SVG Lab, you press Approve
Access
Early access, free until Friday 2 October 2026

Before you start

You need two things, and both are free during early access.

  1. An SVG Lab account. Sign in at svglab.app with Google or an email link.
  2. SVG Lab MCP early access switched on for that account. Request it on the early access page. You get a confirmation email straight away and another one when your account is switched on. Early access is free until Friday 2 October 2026. Pricing will be announced at general release.

Sign in with the same account every time. When your AI app opens the SVG Lab sign-in page, use the account that has early access. Your designs are saved to that account's My Projects.

No SVG Lab tab needs to stay open. SVG Lab runs the design engine on its own servers, so your assistant can work while the site is closed.

Pick your app

Every app below signs in the same way: add the address, and the app opens a Sign in to SVG Lab page. Sign in, check which app is asking, and press Approve.

Claude

claude.ai and Claude Desktop

One connector works in claude.ai on the web and in the Claude Desktop app. Custom connectors are available on the Free, Pro, Max, Team and Enterprise plans; a Free account can add one custom connector.

  1. In Claude, open Customize, then Connectors (on the web: claude.ai/customize/connectors).
  2. Press +, then Add custom connector.
  3. Name it SVG Lab and paste this address as the remote MCP server URL. Leave Advanced settings (OAuth Client ID and Secret) empty.
    Remote MCP server URL
    https://svglab.app/mcp
  4. Press Add, then Connect next to SVG Lab. Sign in to SVG Lab in the window that opens and press Approve.
  5. In a chat, press + at the lower left, open Connectors and make sure SVG Lab is switched on.

On a Team or Enterprise plan, an owner adds the connector once for everyone under Organization settings, then Connectors; each person then presses Connect and signs in with their own SVG Lab account.

Claude's connector form has no field for a key, so Claude always connects by signing in.

Claude Code

terminal
  1. Run this in your terminal:
    Terminal
    claude mcp add --transport http --scope user svglab https://svglab.app/mcp

    --scope user makes SVG Lab available in every project. Leave it out to add it to the current project only.

  2. Start Claude Code, type /mcp, choose svglab and pick Authenticate. Your browser opens the SVG Lab sign-in page; press Approve. From outside a session, claude mcp login svglab does the same.
  3. Back in Claude Code, /mcp should show svglab as connected.

With a key instead of sign-in

Terminal
claude mcp add --transport http --scope user svglab https://svglab.app/mcp --header "Authorization: Bearer svl_YOUR_KEY"

Replace svl_YOUR_KEY with your own key (see Use a key instead). Claude Code saves it in your user settings (~/.claude.json), not in your project folder.

ChatGPT

developer mode

Custom MCP servers need developer mode, available on the web for ChatGPT Plus, Pro, Business, Enterprise and Education. In a Business, Enterprise or Education workspace an admin has to allow developer mode first.

  1. Open Settings, then Security and login, and turn on Developer mode.
  2. Open Plugins and press the + button to create a developer mode app.
  3. Fill it in:
    • Name: SVG Lab
    • Description: Design engine: app screens, icons, illustrations and charts as editable SVG
    • MCP server URL: https://svglab.app/mcp
    • Authentication: OAuth
    MCP server URL
    https://svglab.app/mcp
  4. Create it. When ChatGPT asks you to sign in, sign in to SVG Lab and press Approve.
  5. In a chat, open the + menu, choose Developer mode and select SVG Lab.

ChatGPT renames these menus from time to time. If you cannot find Plugins, look for Apps or Connectors in Settings; the fields are the same.

Codex

desktop app, IDE extension and CLI

The Codex app, the IDE extension and the CLI share one settings file, ~/.codex/config.toml, so you add SVG Lab once.

  1. Run this in a terminal:
    Terminal
    codex mcp add svglab --url https://svglab.app/mcp

    Or add it to ~/.codex/config.toml by hand:

    ~/.codex/config.toml
    [mcp_servers.svglab]
    url = "https://svglab.app/mcp"
  2. Open the Codex app, go to its MCP server settings, find svglab and press Authenticate. Your browser opens the SVG Lab sign-in page; press Approve. No extra feature flag is needed.
  3. Start a new Codex chat so it loads the SVG Lab tools.

Signing in from the terminal. Codex also has codex mcp login svglab. In our testing it sometimes reported success without finishing the sign-in. If that happens, sign in with the app's Authenticate button, or use a key as below.

With a key instead of sign-in

Keep the key in an environment variable so it never sits in the file:

~/.codex/config.toml
[mcp_servers.svglab]
url = "https://svglab.app/mcp"
bearer_token_env_var = "SVGLAB_MCP_KEY"

Then set SVGLAB_MCP_KEY to your svl_ key in your shell before starting Codex.

Cursor

mcp.json
  1. Open ~/.cursor/mcp.json (every project) or .cursor/mcp.json in your project folder (this project only). Create the file if it does not exist, and add:
    ~/.cursor/mcp.json
    {
      "mcpServers": {
        "svglab": {
          "url": "https://svglab.app/mcp"
        }
      }
    }

    If the file already has other servers, add only the "svglab" entry inside the existing "mcpServers".

  2. Open Cursor Settings and find svglab in the MCP list. When Cursor asks you to sign in, your browser opens the SVG Lab sign-in page; press Approve.
  3. Check that svglab shows as connected, then use it from a chat in Agent mode.

With a key instead of sign-in

~/.cursor/mcp.json
{
  "mcpServers": {
    "svglab": {
      "url": "https://svglab.app/mcp",
      "headers": { "Authorization": "Bearer ${env:SVGLAB_MCP_KEY}" }
    }
  }
}

Set the environment variable SVGLAB_MCP_KEY to your svl_ key before starting Cursor.

VS Code

GitHub Copilot agent mode
  1. Create .vscode/mcp.json in your project (or run MCP: Open User Configuration from the Command Palette for every project) and add:
    .vscode/mcp.json
    {
      "servers": {
        "svglab": {
          "type": "http",
          "url": "https://svglab.app/mcp"
        }
      }
    }

    Note the key is "servers" here, not "mcpServers". You can also run MCP: Add Server, choose HTTP and paste https://svglab.app/mcp.

  2. Start the server (the Start link above the entry, or MCP: List Servers). VS Code opens your browser for the SVG Lab sign-in on the first connection; press Approve.
  3. Open Copilot Chat in Agent mode and check that the SVG Lab tools are listed under the tools button.

With a key instead of sign-in

.vscode/mcp.json
{
  "inputs": [
    { "type": "promptString", "id": "svglab-key", "description": "SVG Lab MCP key (svl_...)", "password": true }
  ],
  "servers": {
    "svglab": {
      "type": "http",
      "url": "https://svglab.app/mcp",
      "headers": { "Authorization": "Bearer ${input:svglab-key}" }
    }
  }
}

VS Code asks for the key once and stores it securely.

OpenCode

opencode.json
  1. Open your OpenCode config: ~/.config/opencode/opencode.json for every project (on Windows C:\Users\YOU\.config\opencode\opencode.json), or opencode.json in your project folder. The file may also be named opencode.jsonc; edit the one that exists. Use the global file unless you want SVG Lab in one project only. Add the "svglab" entry inside "mcp":
    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "mcp": {
        "svglab": {
          "type": "remote",
          "url": "https://svglab.app/mcp",
          "enabled": true
        }
      }
    }

    If the file already has an "mcp" section, add only the "svglab" entry to it and keep everything else.

  2. Sign in from a terminal:
    Terminal
    opencode mcp auth svglab

    Your browser opens the SVG Lab sign-in page; press Approve. The command waits until you do. OpenCode also offers the sign-in by itself the first time it connects. In the OpenCode desktop app you can sign in from the MCP list in the session header instead.

  3. Restart OpenCode (or start a new session) and run opencode mcp list to see svglab connected. The SVG Lab design tools then appear in your next session.

With a key instead of sign-in

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "svglab": {
      "type": "remote",
      "url": "https://svglab.app/mcp",
      "enabled": true,
      "oauth": false,
      "headers": { "Authorization": "Bearer {env:SVGLAB_MCP_KEY}" }
    }
  }
}

Set the environment variable SVGLAB_MCP_KEY to your svl_ key before starting OpenCode, so the key never sits in the file. OpenCode writes an environment variable as {env:NAME}, with no $ (Cursor and Windsurf use ${env:NAME}). "oauth": false tells OpenCode to use the key and skip the sign-in.

Windsurf

mcp_config.json

Windsurf's editor is now called Devin Desktop. These steps are for its Cascade panel.

  1. In the Cascade panel, open the ... menu at the top right and choose Open MCP config file. (The file is ~/.config/devin/mcp_config.json on macOS and Linux and %APPDATA%\devin\mcp_config.json on Windows; older Windsurf versions use ~/.codeium/windsurf/mcp_config.json.)
  2. Add the "svglab" entry:
    mcp_config.json
    {
      "mcpServers": {
        "svglab": {
          "serverUrl": "https://svglab.app/mcp"
        }
      }
    }
  3. Save, then refresh the MCP list in Cascade. When it asks you to sign in, sign in to SVG Lab and press Approve.

In a company workspace an admin may need to switch MCP servers on, or add https://svglab.app/mcp to the team's allowed list.

With a key instead of sign-in

mcp_config.json
{
  "mcpServers": {
    "svglab": {
      "serverUrl": "https://svglab.app/mcp",
      "headers": { "Authorization": "Bearer ${env:SVGLAB_MCP_KEY}" }
    }
  }
}

Gemini CLI

settings.json
  1. Run this in your terminal:
    Terminal
    gemini mcp add --transport http --scope user svglab https://svglab.app/mcp

    Or add it to ~/.gemini/settings.json by hand. Use httpUrl, not url: in Gemini CLI, url means the older SSE transport.

    ~/.gemini/settings.json
    {
      "mcpServers": {
        "svglab": {
          "httpUrl": "https://svglab.app/mcp"
        }
      }
    }
  2. Start Gemini CLI. It notices that SVG Lab needs a sign-in and opens your browser; press Approve. To start the sign-in yourself, type /mcp auth svglab.
  3. Type /mcp to check that svglab is connected.

With a key instead of sign-in

Terminal
gemini mcp add --transport http --scope user -H "Authorization: Bearer svl_YOUR_KEY" svglab https://svglab.app/mcp

Any other MCP client

Any app that can add a remote MCP server over streamable HTTP can use SVG Lab. These are the details it will ask for:

  • Server URL: https://svglab.app/mcp
  • Transport: streamable HTTP (sometimes shown as "HTTP" or "remote"). Not SSE, and not a local command.
  • Authentication: OAuth. The app finds everything it needs from the address itself: SVG Lab supports automatic app registration and PKCE, so leave any client ID and secret fields empty.
  • Or a header: Authorization: Bearer svl_YOUR_KEY if the app has no sign-in support.

Most apps that use a JSON file accept this shape:

mcp.json (common shape)
{
  "mcpServers": {
    "svglab": {
      "url": "https://svglab.app/mcp"
    }
  }
}

Use a key instead of signing in

Signing in is the recommended way for every app. A key is useful for command line apps, scripts, or a machine with no browser. It works until you regenerate or revoke it.

  1. Sign in at svglab.app.
  2. Open the account menu (your email, top right) and choose Connect your AI.
  3. Press Generate key and copy it straight away. SVG Lab shows it only once. Keys start with svl_.
  4. Send it as a header with every request:
    HTTP header
    Authorization: Bearer svl_YOUR_KEY

Where an app reads the key from an environment variable such as SVGLAB_MCP_KEY, set it in your system or user environment variables (or your shell profile), so an app started from the desktop sees it too. Treat the key like a password: anyone holding it can use SVG Lab as you. Lost it? Press Regenerate (the old key stops working) and update your apps. Revoke switches it off.

Check it works

Start a new chat in your AI app and paste this prompt:

Test prompt
Use the SVG Lab MCP server (svglab). First check my SVG Lab account status and tell me which account you are connected to and whether design access is on. Then create a new SVG Lab project called "Setup test", design a simple 64 by 64 paper plane icon in it, and give me the link to the project.

What you should see:

  1. Your assistant says it is connected to SVG Lab and names your account.
  2. It designs the icon. The first design step can take 10 to 30 seconds while SVG Lab starts your design engine; later steps are quick.
  3. It gives you a link. The new project is also in My Projects when you open SVG Lab, ready to edit or export as SVG, PNG or PDF.

If your assistant says it has no SVG Lab tools, or that it can only check your account, see Troubleshooting.

Troubleshooting

"Unauthorized", a 401 error, or the app keeps asking me to sign in

Remove SVG Lab from the app, add it again with https://svglab.app/mcp, and sign in with the account that has early access. Leave any client ID, client secret or key fields empty unless you are using a key on purpose.

If you use a key, check that the header reads exactly Authorization: Bearer svl_... and that you have not regenerated or revoked that key since.

The sign-in page says the SVG Lab MCP is in early access

Your account does not have early access yet. Request it on the early access page and wait for the email that says it is on, then connect again. If you requested access with a different email, sign in with that one.

My assistant can only check my account status

The connection works but your account cannot design yet: early access is not switched on, the account is suspended, or the key was replaced. Ask your assistant to check your SVG Lab account status and read out what it says; it tells you exactly what is missing.

The SVG Lab tools are missing, or look out of date

Apps load the list of tools when they start and keep it. Start a new chat, or switch the SVG Lab server off and on in the app's MCP settings, or restart the app. If the app shows SVG Lab as failed, click it to reconnect or restart the app.

The first request is slow

That is normal. The first design step starts your design engine on SVG Lab's servers and can take 10 to 30 seconds. It closes by itself when you stop, and reopens on your next request in the same project with your work saved.

My assistant says the daily allowance is used up

During early access each account has a daily allowance of design engine time. Your assistant tells you when you reach it. It resets at midnight UTC.

Two chats are interrupting each other

Run one AI session per SVG Lab account at a time. You can connect several apps, but two sessions designing on the same account at once can interrupt each other.

The connection dropped after a while

A sign-in lasts for months while you use it, because your app renews it in the background. If it does stop, it is usually because someone pressed Disconnect, or the app lost its saved sign-in. Connect once more and it carries on.

I want to watch my assistant design live

Open SVG Lab, click Connect to AI in the top bar, and give your assistant the code it shows. Its work then appears in that tab as it happens. Always use a tab on svglab.app for this.

Still stuck? Email support@svglab.app with the app you use and the exact message you see.

For AI assistants setting this up

If you are an AI assistant configuring SVG Lab for a user, this section is for you. A plain text copy of this whole page is served to any request with the header Accept: text/markdown on https://svglab.app/mcp-setup.

Facts

SVG Lab MCP: machine summary
name:              svglab
server_url:        https://svglab.app/mcp
transport:         streamable HTTP (remote). Not SSE, not stdio. Nothing to install.
auth:              OAuth 2.1, authorization code with PKCE (S256), dynamic client registration
resource_metadata: https://svglab.app/.well-known/oauth-protected-resource/mcp
auth_server_meta:  https://svglab.app/.well-known/oauth-authorization-server
registration:      https://svglab.app/oauth/register
scope:             mcp
client_id:         not needed; leave client ID and client secret empty
no_credentials:    POST /mcp answers 401 with a WWW-Authenticate header pointing at resource_metadata
key_alternative:   header "Authorization: Bearer svl_KEY" (the user creates the key at svglab.app:
                   account menu, Connect your AI, Generate key). Never invent a key.
access:            the account needs SVG Lab MCP early access: https://svglab.app/mcp-early-access
cost:              early access is free until Friday 2 October 2026; pricing announced at general release
browser_tab:       not needed; the server runs the design engine and saves to the user's My Projects
first_call:        can take 10 to 30 seconds while the design engine starts
sessions:          one AI session per SVG Lab account at a time

Procedure

  1. Find the app. Work out which app the user is in (Claude Code, OpenCode, Codex, Cursor, VS Code, Gemini CLI, Windsurf, Claude, ChatGPT). If you cannot tell, ask once. If the user is not sure their account has access, ask them to open https://svglab.app/mcp-early-access while signed in: it says "MCP is already on for you" when access is on.
  2. Add the server. Use that app's block from this page exactly as written, with the name svglab. Prefer the user level config (every project) unless the user asks for one project. When editing a config file, merge the entry into the existing file and keep every other server and setting. Never put a key in a project file that could be committed to git; use the environment variable form.
  3. Start the sign-in. Run the app's sign-in step (for example opencode mcp auth svglab, or /mcp in Claude Code). It opens the browser and waits until the user signs in to SVG Lab and presses Approve, so either run it and wait, or ask the user to run it in their own terminal. You cannot approve for them; tell them what to expect.
  4. Reload. Restart the app or start a new session so it loads the SVG Lab tools. If you are running inside the app you are configuring, a restart ends your own session: finish the steps above first, then ask the user to restart and paste the test prompt from Check it works into a new session.
  5. Verify. In the new session, check your own tool list for tools from svglab. With access there are dozens of design tools. If there is only one tool, an account status tool, the connection works but the account cannot design yet (access is off, the account is suspended, or a key was replaced): call it and pass its message to the user. With sign-in, an account without early access usually stops earlier: the SVG Lab sign-in page says the MCP is in early access and does not let the user approve.
  6. Test. Run the test prompt from Check it works and give the user the project link it returns. The first design step can take 10 to 30 seconds; that is not a failure.
  7. If access is not granted, tell the user: "SVG Lab is set up, but your SVG Lab account does not have MCP early access yet. Request it at https://svglab.app/mcp-early-access with the same account. You will get an email when it is switched on, and then it works with no more setup."

Config per client

Use the block for the user's app from the sections above, exactly as written. Keep the server name svglab. Never invent a key: if the user has not given you one, use sign-in.

FAQ

Do I need an API key?

No. Every app on this page can sign in: it opens SVG Lab's sign-in page, you press Approve, and you are connected. A key is only an alternative for command line apps where you would rather paste a header than sign in.

Do I need to keep SVG Lab open in a tab?

No. SVG Lab runs the design engine on its own servers, and everything your assistant makes is saved to My Projects. If you would like to watch it work live, open SVG Lab, click Connect to AI in the top bar and give your assistant the code it shows.

How long does the connection stay signed in?

For months while you use it. Your app renews the sign-in in the background. It ends when you press Disconnect in SVG Lab, or after a year with no use at all.

What does it cost?

Early access is free until Friday 2 October 2026. Pricing will be announced at general release.

Which account does my work go to?

The SVG Lab account you signed in with when you pressed Approve. Use the same account that has early access.

Can I connect more than one app?

Yes. Connect as many apps as you like, but run one AI session per SVG Lab account at a time. Two sessions working on one account at once can interrupt each other.

How do I disconnect an app?

Open SVG Lab, open the account menu (your email, top right) and choose Connect your AI. Under Connected apps, press Disconnect next to the app. It stops working straight away.

Is there a package to install or a separate MCP subdomain?

No. There is nothing to install and no mcp.svglab.app. The one and only server address is https://svglab.app/mcp.