mcp-design-platform
Enables AI agents to remotely operate visual design tools via MCP protocol, with composable architecture for image processing, file operations, and workflow automation.
README
On-Premise MCP Design Platform
A professional-grade, containerized Model Context Protocol (MCP) server platform designed for visual design tool workflows. This project provides a composable, scalable architecture for integrating multiple specialized tools into a unified AI-accessible interface.
Built for developers who want to "stay frosty" and implement cutting-edge technology patterns while maintaining production-quality standards.
π― Vision
Transform complex, multi-tool visual design workflows into AI-accessible services that can be operated remotely through chat interfaces. This platform serves as a proof of concept for professional MCP server architecture that can scale from hobby projects to enterprise solutions.
Core Philosophy
- Test-Driven Development: Every feature is built with tests first, ensuring reliability and maintainability
- Surgical Precision: Focused, modular components that do one thing exceptionally well
- Container-First: Built for consistent deployment across development, staging, and production
- AI-Native: Designed specifically for AI agent interaction patterns
π Features
Current Capabilities
- Composable MCP Architecture: Multiple specialized FastMCP servers mounted under a unified FastAPI application
- Asynchronous Job Processing: Built-in support for long-running tasks with job queues and progress tracking
- Container-First Deployment: Complete Docker containerization with development and production configurations
- Professional Testing: Comprehensive test suite with near 100% coverage using pytest and TDD patterns
- Modern Python Tooling: Built with
uv,pyproject.toml, and contemporary Python best practices - Plugin Architecture: Tool servers discovered and mounted dynamically
Planned Features
- Visual Design Tool Integration: Seamless interaction with design software APIs
- Multi-Environment Support: Development, staging, and production environment configurations
- Monitoring & Observability: Built-in logging, metrics, and health checks
- Authentication & Authorization: Secure access control for production deployments
ποΈ Architecture
βββββββββββββββββββββββββββββββββββββββββββ
β LM Studio Client β
βββββββββββββββββββ¬ββββββββββββββββββββββββ
β MCP Protocol
βββββββββββββββββββΌββββββββββββββββββββββββ
β FastAPI Main Application β
β βββββββββββββββββββββββββββββββββββ β
β β Image Processing Tools β β
β β (FastMCP Server) β β
β βββββββββββββββββββββββββββββββββββ β
β βββββββββββββββββββββββββββββββββββ β
β β File System Tools β β
β β (FastMCP Server) β β
β βββββββββββββββββββββββββββββββββββ β
β βββββββββββββββββββββββββββββββββββ β
β β Design Workflow Tools β β
β β (FastMCP Server) β β
β βββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββ¬ββββββββββββββββββββββββ
β
βββββββββββββββββββΌββββββββββββββββββββββββ
β Job Queue System β
β (Redis/RabbitMQ + Workers) β
βββββββββββββββββββββββββββββββββββββββββββ
π Requirements
Development Environment
- Python: 3.11+ (managed with
uv) - Docker: Latest stable version
- Container Runtime: Docker Desktop or compatible
Target Deployment
- Windows PC: NVIDIA GPU-enabled workstation for design tools
- macOS Client: i.e. M4 Max with 48GB RAM running LM Studio
π Quick Start
1. Clone and Setup
# Clone the repository
git clone https://github.com/yourusername/mcp-design-platform.git
cd mcp-design-platform
# Create and activate virtual environment with uv
uv venv
source .venv/bin/activate \# On Windows: .venv\Scripts\activate
# Install dependencies
uv pip install -e .
2. Development with Docker
# Build the development image
docker build -f Dockerfile.dev -t mcp-platform:dev .
# Start the Redis service with Docker Compose before running the server
docker-compose -f docker-compose.dev.yml up -d
# The MCP server will be available at http://localhost:8080
3. Configure LM Studio
Add to your mcp.json:
{
"mcpServers": {
"design-platform": {
"command": "docker",
"args": [
"run",
"--rm",
"--interactive",
"-p",
"8080:8080",
"mcp-platform:latest"
]
}
}
}
π Note Management
You can retrieve note contents programmatically using read_note:
from mcp_platform import server
server.notes['welcome'] = 'hello world'
content = server.read_note('welcome')
read_note raises ValueError if the note does not exist.
The server also exposes a read-note tool to fetch a note via the MCP protocol:
await server.handle_call_tool('read-note', {'name': 'welcome'})
π§ͺ Testing
This project follows strict Test-Driven Development practices:
# Run all tests with coverage
pytest --cov=src --cov-report=html --cov-report=term
# Run tests in watch mode during development
pytest-watch
# Run only unit tests
pytest tests/unit/
# Run integration tests
pytest tests/integration/
Coverage Target: >95% line coverage, >90% branch coverage
π Project Structure
mcp-design-platform/
βββ src/
β βββ mcp_platform/
β β βββ main.py \# FastAPI application entry point
β β βββ servers/ \# Individual MCP server modules
β β β βββ image_tools.py
β β β βββ file_tools.py
β β β βββ workflow_tools.py
β β βββ jobs/ \# Asynchronous job processing
β β β βββ queue.py
β β β βββ workers.py
β β β βββ tasks.py
β β βββ config/ \# Configuration management
β β βββ settings.py
β β βββ environments.py
βββ tests/
β βββ unit/ \# Fast, isolated tests
β βββ integration/ \# Component interaction tests
β βββ fixtures/ \# Test data and helpers
βββ docker/
β βββ Dockerfile \# Production image
β βββ Dockerfile.dev \# Development image
β βββ docker-compose.yml \# Multi-service orchestration
βββ docs/ \# Documentation
βββ AGENTS.md \# AI development instructions
βββ README.md \# This file
βββ pyproject.toml \# Modern Python project configuration
πΊοΈ Roadmap
Phase 1: Foundation (Completed)
- [x] Project scaffolding with modern Python tooling
- [x] Basic FastAPI + FastMCP integration
- [x] Docker containerization
- [x] TDD workflow establishment
- [x] Redis job queue integration
- [x] Basic tool implementations
Phase 2: Core Platform (In Progress)
- [ ] Complete asynchronous job processing system
- [ ] Progress tracking and status endpoints
- [ ] Comprehensive error handling and logging
- [ ] Production-ready Docker configurations
- [ ] CI/CD pipeline setup
Phase 3: Design Tool Integration (Following 6-8 weeks)
- [ ] Visual design software API integrations
- [ ] File system operation tools
- [ ] Image processing and manipulation tools
- [ ] Workflow automation capabilities
- [ ] Cross-platform compatibility testing
Phase 4: Production Features (Future)
- [ ] Authentication and authorization
- [ ] Multi-tenant support
- [ ] Monitoring and observability
- [ ] Performance optimization
- [ ] Enterprise deployment guides
π€ Contributing
This project is designed to be developed collaboratively with AI agents using the patterns described in AGENTS.md.
Development Workflow
- Issues First: All work begins with a GitHub issue describing the requirement
- Test-Driven: Write failing tests before implementing features
- Small Increments: Keep changes focused and atomic
- Container Testing: All tests must pass in containerized environments
Getting Started
- Review
AGENTS.mdfor AI development guidelines - Check open issues for current priorities
- Follow the TDD cycle: Red β Green β Refactor
- Submit pull requests with comprehensive tests
π License
MIT License - see LICENSE for details.
π Acknowledgments
Built with inspiration from:
- FastMCP - The foundation for MCP server development
- Model Context Protocol - The protocol specification
- Professional software development practices from the Python and containerization communities
This project represents a commitment to professional-grade software development practices while exploring cutting-edge AI integration patterns. It's designed to be both a learning vehicle and a foundation for production systems.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.