P47Phoenix/Svg-Mcp-Server
If you are the rightful owner of Svg-Mcp-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Svg MCP Server is a specialized server designed to handle Model Context Protocol (MCP) requests, facilitating communication and data exchange between different systems and applications.
SVG MCP Server
An RFC 7996 compliant SVG diagram server built with the Model Context Protocol (MCP) for creating technical diagrams, flowcharts, and network topology visualizations.
Features
- RFC 7996 Compliant: Full support for SVG requirements in RFC documents
- Model Context Protocol: Native MCP integration for AI assistant workflows
- Comprehensive Diagram Types: Support for flowcharts, network diagrams, architectural diagrams, and more
- Production Ready: Docker containerization with multi-stage builds and security hardening
- Version Management: Semantic versioning with automated Docker builds
- Cross-Platform: Support for Windows, macOS, and Linux development environments
Quick Start
Using Docker (Recommended)
# Pull and run the latest version
docker run -p 3000:3000 svg-mcp-server:latest
# Or build from source
./scripts/build-docker.sh
docker run -p 3000:3000 svg-mcp-server:1.0.0
From Source
# Clone the repository
git clone https://github.com/P47Phoenix/svg-mcp-server.git
cd svg-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Run tests
npm test
# Start the server
npm start
MCP Configuration for GitHub Copilot
To use this server with GitHub Copilot or other MCP-compatible AI assistants, add the following configuration:
Option 1: Using Node.js directly
{
"mcpServers": {
"svg-mcp-server": {
"command": "node",
"args": ["path/to/svg-mcp-server/dist/index.js"],
"env": {
"NODE_ENV": "production"
}
}
}
}
Option 2: Using Docker
{
"mcpServers": {
"svg-mcp-server": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--network=host",
"svg-mcp-server:1.0.0"
]
}
}
}
Option 3: Using npx (if published to npm)
{
"mcpServers": {
"svg-mcp-server": {
"command": "npx",
"args": ["svg-mcp-server"],
"env": {
"NODE_ENV": "production"
}
}
}
}
Place this configuration in your MCP client's configuration file (typically mcp-config.json
or similar).
Version Management
This project uses semantic versioning with automated Docker builds:
# Check current version
./scripts/version.sh get
# Bump version and build Docker image
./scripts/version.sh bump patch
./scripts/version.sh docker
# Create a release
./scripts/version.sh release
For detailed version management documentation, see .
Documentation
- - Complete API documentation
- - Detailed MCP client configuration
- - Server configuration options
- - Docker deployment and configuration
- - Version control and release workflow
- - Development setup and guidelines
Architecture
The SVG MCP Server is built with:
- TypeScript: Type-safe development with modern ES features
- FastMCP SDK: High-performance Model Context Protocol implementation
- Alpine Linux: Minimal, secure Docker base image
- GitHub Actions: Automated CI/CD pipeline with security scanning
Contributing
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes and test thoroughly
- Bump the version:
./scripts/version.sh bump patch
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
License
This project is licensed under the MIT License - see the file for details.
Support
- 📚
- 🐛 Issue Tracker
- 💬 Discussions
- 🔧 - Detailed integration instructions
Usage Examples
Once configured with your MCP client, you can use natural language to create SVG diagrams:
"Create a flowchart showing the user authentication process"
"Generate a network topology diagram with 3 servers and 2 routers"
"Design an architectural diagram for a microservices system"
The server provides tools for:
- Template-based SVG generation: Pre-built templates for common diagram types
- Dynamic SVG creation: Custom diagrams based on specifications
- RFC 7996 compliance: Standards-compliant SVG output for technical documentation
- Variable substitution: Parameterized templates for reusable diagrams
Version History
Current version: 1.0.0
See for detailed version history and release notes.