Supports configuration through environment variables stored in .env files for API keys, rate limits, and base URL settings
Used for package management and running server commands through npm scripts
Enables programmatic generation of SVG images from text prompts with customizable quality and aspect ratio, and saving them to the local filesystem
Provides full type safety with TypeScript support for the MCP server implementation
SVGMaker MCP Server
A powerful MCP server for generating, editing, and converting SVG images using AI
🎨 MCP Server in Action
This very illustration came to life through our own SVGMaker MCP server—a living example of AI assistants and vector graphics working in perfect harmony via the Model Context Protocol.
🌟 Highlights
- 🎨 AI-Powered SVG Generation: Create SVGs from text descriptions
- ✏️ Smart SVG Editing: Edit existing SVGs with natural language
- 🔄 Image-to-SVG Conversion: Convert any image to scalable SVG
- 🔒 Secure File Operations: Built-in path validation and security
- ⚡ Real-Time Progress: Live updates during operations
- 📝 Type Safety: Full TypeScript support with type definitions
📋 Table of Contents
- Requirements
- Installation
- Quick Start
- LLM Integrations
- Available Tools
- Configuration
- Development
- Contributing
💻 Requirements
- Node.js: Minimum version 18.0.0
- npm: Minimum version 7.0.0
- Operating Systems:
- Linux (Ubuntu 20.04+, CentOS 8+)
- macOS (10.15+)
- Windows (10+)
- SVGMaker API key (Get one here)
📦 Package Structure
🚀 Installation
Basic Setup
- Create .env file:
- Start the server:
🔌 LLM Integrations
- Add to claude_desktop_config.json:
- Example Claude prompt:
Or configure manually:
- Configure in cursor settings:
- Example usage in Cursor:
Or configure manually:
- Configure in settings.json:
- Example usage in VS Code:
- Configure in settings:
- Example usage in WindSurf:
- Configure in settings:
- Example usage in Zed:
🛠️ Available Tools
svgmaker_generate
Transform your ideas into stunning SVG artwork using AI-powered creativity.
How we created the header illustration:
svgmaker_edit
Edit existing SVGs or images with natural language.
svgmaker_convert
Convert images to SVG format.
⚙️ Configuration
Environment Variables
Variable | Description | Required | Default |
---|---|---|---|
SVGMAKER_API_KEY | Your SVGMaker API key | ✅ Yes | - |
SVGMMAKER_RATE_LIMIT_RPM | API rate limit (requests per minute) | ❌ No | 2 |
SVGMAKER_BASE_URL | Custom SVGMaker API base URL | ❌ No | https://svgmaker.io/api |
SVGMAKER_DEBUG | Enable debug logging | ❌ No | false |
Debug Logging
The server includes comprehensive logging for debugging and monitoring:
Enable Logging:
Log Files Location:
- macOS/Linux:
~/.cache/svgmaker-mcp/logs/
- Windows:
%LOCALAPPDATA%/svgmaker-mcp/logs/
- Fallback:
./logs/
(in project directory)
Log File Format:
🔍 Development
Local Setup
- Clone and install dependencies:
- Create .env file with your API key
- Run in development mode:
Testing
Use the MCP Inspector for testing:
CI/CD Workflow
This project uses GitHub Actions for continuous integration and deployment:
- Continuous Integration
- Runs on every push to main branch and pull requests
- Performs linting, type checking, and building
- Ensures code quality and consistency
- Releasing a New Version
- To release a patch version (bug fixes):
- To release a minor version (new features):
- To release a major version (breaking changes):
- To release a patch version (bug fixes):
- Publishing
- Automatically publishes to npm when a new version tag is pushed
🔐 Security
- ✅ Path validation prevents directory traversal
- ✅ Input sanitization for all parameters
- ✅ Secure file operation handling
- ✅ Environment variable protection
- ✅ Rate limiting support
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
⭐ Features
Input Format Support
- SVG files (.svg)
- PNG images (.png)
- JPEG images (.jpg, .jpeg)
- Other common image formats
Output Capabilities
- Clean, optimized SVG output
- Multiple aspect ratio options
- Background control (transparent/opaque)
- High-quality vectorization
📝 License
MIT © Genwave AI - see the LICENSE file for details.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Enables LLMs to programmatically generate, edit, and convert SVG images using the SVGMaker API and save them to the local filesystem.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that provides tools for converting SVG code to high-quality PNG and JPG images with detailed customization options.Last updated -234JavaScriptMIT License
- -securityFlicense-qualityA Model Context Protocol server that converts SVG code to PNG images, offering two conversion methods (CairoSVG and Inkscape) with support for custom working directories.Last updated -1Python
- -securityFlicense-qualityProvides tools to interact with RunwayML and Luma AI APIs for video and image generation, including text-to-video, image-to-video, prompt enhancement, and management of generations.Last updated -1TypeScript
- -securityAlicense-qualityMCP server that allows FE/UI/Designers to retrieve SVG icons via the Iconify API by simply asking LLMs rather than manually searching websites.Last updated -101JavaScriptMIT License