About svg-maker-mcp
svg-maker-mcp is an MCP server in the Social category: create, render, and optimize SVGs with instant PNG previews to verify visual intent. Convert SVGs into React, React Native, PDF, or Data URI formats for easy integration. Validate, format, and extract metadata like dimensions and titles to ensure clean, reliable graphics.
Install
git clone https://github.com/erkamkavak/svg-maker-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about svg-maker-mcp
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
SVG Maker MCP Server (TypeScript)
A robust Model Context Protocol (MCP) server for creating, rendering, converting, and optimizing SVG images.
Features
- Render SVG: Validate and convert SVG code to high-quality PNG images (returned as image content).
- Optimize SVG: Minify and optimize SVG code using
svgo. - Convert to React: Generate React functional components from SVG code using
@svgr/core. - Convert to React Native: Generate React Native SVG components.
- Format SVG: Prettify SVG code.
- Data URI: Convert SVG to base64 Data URI.
- Validate SVG: Check for XML errors and standard SVG compliance.
- Get Metadata: Extract dimensions and title.
Configuration
To use this server with your favorite MCP client (like Claude Desktop, Cursor, Gemini CLI, etc.), use the following settings.
1. Claude Desktop / Gemini CLI
Add this to your configuration file (e.g., ~/.gemini/settings.json or claude_desktop_config.json):
{
"mcpServers": {
"svg-maker": {
"command": "npx",
"args": ["tsx", "/absolute/path/to/svg-mcp-server-ts/src/index.ts"]
}
}
}
2. Cursor
- Go to Settings > Features > MCP.
- Add a new server:
- Name:
svg-maker - Type:
command - Command:
npx tsx /absolute/path/to/svg-mcp-server-ts/src/index.ts
- Name:
Tools
render_svg
- Arguments:
svg_code(str),width(number, opt),height(number, opt) - Returns: Image Content (PNG).
- Description: Renders SVG to PNG. IMPORTANT: Always use this to preview generated SVGs to ensure they match visual intent.
save_svg_to_server
- Arguments:
svg_code(str),filename(str),optimize(boolean) - Returns: Text (Success/Error).
- Description: Saves the SVG to the SERVER'S disk. Only use for local servers.
get_svg_code
- Arguments:
svg_code(str),optimize(boolean) - Returns: String (SVG Code).
- Description: Returns SVG code (optionally optimized) for the AI to save to your local machine.
optimize_svg
- Arguments:
svg_code(str) - Description: Optimizes SVG size using SVGO.
format_svg
- Arguments:
svg_code(str) - Description: Formats SVG with indentation.
svg_to_react
- Arguments:
svg_code(str),component_name(str) - Returns: String (JSX code).
svg_to_react_native
- Arguments:
svg_code(str),component_name(str) - Returns: String (React Native JSX).
svg_to_data_uri
- Arguments:
svg_code(str) - Returns: String (Base64 Data URI).
validate_svg
- Arguments:
svg_code(str) - Returns: JSON object with validation status.
get_svg_metadata
- Arguments:
svg_code(str) - Returns: JSON object with metadata.
Development
-
Install Dependencies:
npm install -
Run Locally:
npm start -
Build:
npm run build
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.