SVG.new MCP server

A Model Context Protocol server that gives any MCP client image-to-SVG tools: vectorize, recolor, simplify, remove backgrounds and batch convert. It runs locally with npx and your SVG.new API key.

SVG_NEW_API_KEY=svk_your_key_here npx -y @svgnew/mcp

Set up the SVG MCP server

Works the same way in every client that launches stdio MCP servers.

1

Create an API key

Sign in at svg.new/account and create a key. Keys start with svk_ and are shown once.

2

Add the server to your client

Most clients take the standard mcpServers JSON. Node.js must be installed so npx can run the package.

{
  "mcpServers": {
    "svg-new": {
      "command": "npx",
      "args": ["-y", "@svgnew/mcp"],
      "env": { "SVG_NEW_API_KEY": "svk_your_key_here" }
    }
  }
}
3

Ask your agent to vectorize

Restart or refresh the client, then ask something like “Vectorize logo.png and save it as logo.svg”. The agent discovers the tools on its own.

Tools

Ten tools, all backed by the SVG.new REST API. Image inputs are base64 data URLs; the _file variants take files attached by the client.

vectorize

Input: image

Converts a PNG, JPG or WebP image (base64 data URL) to SVG. Returns the SVG and a vectorization ID.

1 credit
vectorize_file

Input: file

Same as vectorize, for a PNG, JPG or WebP file the client attaches (a download URL), as ChatGPT apps and similar hosts do.

1 credit
recolor_svg

Input: svg, color_map

Replaces colors in an SVG using a map of old to new hex values.

Free
simplify_svg

Input: svg, max_colors

Reduces an SVG to at most max_colors colors (1 to 256).

Free
remove_background

Input: svg, image

Removes the background from an SVG, using the original raster image as reference.

1 credit
remove_background_file

Input: svg, file

Same as remove_background, with the original image supplied as an attached file.

1 credit
batch_vectorize

Input: images

Submits 1 to 10 images for vectorization and returns a batch ID.

1 credit per image
batch_vectorize_files

Input: files

Submits up to 10 attached files for vectorization and returns a batch ID.

1 credit per image
get_batch_status

Input: batch_id

Reports progress and completed items for a batch.

Free
list_vectorizations

Input: none

Lists your 20 most recent vectorizations.

Free

Config for each client

Claude Desktop

Add to claude_desktop_config.json (Settings, Developer, Edit Config), then restart Claude Desktop.

{
  "mcpServers": {
    "svg-new": {
      "command": "npx",
      "args": ["-y", "@svgnew/mcp"],
      "env": { "SVG_NEW_API_KEY": "svk_your_key_here" }
    }
  }
}

Claude Code

Run once in your terminal. See the Claude Code guide for the skill-based plugin.

claude mcp add svg-new \
  -e SVG_NEW_API_KEY=svk_your_key_here \
  -- npx -y @svgnew/mcp

Cursor

Add to ~/.cursor/mcp.json or a project's .cursor/mcp.json. Cursor guide.

{
  "mcpServers": {
    "svg-new": {
      "command": "npx",
      "args": ["-y", "@svgnew/mcp"],
      "env": { "SVG_NEW_API_KEY": "svk_your_key_here" }
    }
  }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json, then refresh MCP servers in Cascade. Windsurf guide.

{
  "mcpServers": {
    "svg-new": {
      "command": "npx",
      "args": ["-y", "@svgnew/mcp"],
      "env": { "SVG_NEW_API_KEY": "svk_your_key_here" }
    }
  }
}

OpenAI Codex

Run once in your terminal; Codex saves it to ~/.codex/config.toml. Codex guide.

codex mcp add svg-new \
  --env SVG_NEW_API_KEY=svk_your_key_here \
  -- npx -y @svgnew/mcp

Authentication and settings

The server reads two environment variables. It exits on start if the key is missing, so a client that shows the server as failed usually means the key was not passed through.

SVG_NEW_API_KEYrequired

Your API key from svg.new/account. Sent to svg.new as a Bearer token.

SVG_NEW_API_URLoptional

API base URL. Defaults to https://svg.new.

Prefer plain HTTP? The same operations are in the REST API docs.

Common questions

What is the SVG.new MCP server?

It is an SVG MCP server published on npm as @svgnew/mcp. It speaks the Model Context Protocol over stdio and exposes ten tools (vectorize, vectorize_file, recolor_svg, simplify_svg, remove_background, remove_background_file, batch_vectorize, batch_vectorize_files, get_batch_status, list_vectorizations) that call the SVG.new API with your key.

How do I vectorize an image over MCP?

Add the server to your MCP client, then ask the agent to vectorize an image. To vectorize an image over MCP, the agent calls the vectorize tool with the image as a base64 data URL (for example data:image/png;base64,...). The tool returns the SVG markup and an ID, and the agent saves the SVG wherever you asked.

Which clients can use the image to SVG MCP server?

Any client that can launch a local stdio MCP server, including Claude Desktop, Claude Code, Cursor, Windsurf and OpenAI Codex. The server needs Node.js so that npx can run it.

How does authentication work?

Create an API key at svg.new/account and pass it to the server as the SVG_NEW_API_KEY environment variable. The server sends it to svg.new as a Bearer token. Keys start with svk_, are shown once, and can be revoked from your account page at any time.

What does the MCP server cost?

The server is free to install. Tool calls use SVG.new credits: vectorize and remove_background cost 1 credit, batch_vectorize costs 1 credit per image, and the editing and status tools are free. A free account includes 3 vectorizations a day; Pro is $9.99 a month for 1,000.

Are there size or rate limits?

Images are sent as base64 and requests are capped at about 4.5 MB, so keep each source image under roughly 3 MB. Vectorize allows 10 requests a minute, and a batch holds up to 10 images.

Connect your agent

Create a free key and add the server to the client you already use.