mcp-design-platform

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.

Category
Visit Server

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

  1. Issues First: All work begins with a GitHub issue describing the requirement
  2. Test-Driven: Write failing tests before implementing features
  3. Small Increments: Keep changes focused and atomic
  4. Container Testing: All tests must pass in containerized environments

Getting Started

  1. Review AGENTS.md for AI development guidelines
  2. Check open issues for current priorities
  3. Follow the TDD cycle: Red β†’ Green β†’ Refactor
  4. 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

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured