CanvasMCPClient
Canvas MCP Client is an open-source, self-hostable dashboard application built around an infinite, zoomable, and pannable canvas. It provides a unified interface for interacting with multiple MCP (Model Context Protocol) servers through a flexible, widget-based system.
claude mcp add --transport stdio n00bvn-canvasmcpclient docker compose up -d \ --env DOCKER_HOST="unix:///var/run/docker.sock" \ --env COMPOSE_PROJECT_NAME="canvas_mcp_client"
How to use
Canvas MCP Client is a self-hosted, customizable dashboard that integrates multiple MCP (Model Context Protocol) servers into a single workspace. It provides an infinite, pan-and-zoom canvas with a modular widget system, allowing you to configure MCP servers, manage AI providers, and build dashboards that orchestrate tools and services. The MCP integration is handled via the FastMCP library, enabling multiple transport methods and real-time status monitoring. Use it to connect to your MCP servers, organize widgets that display or interact with model contexts, and save your dashboards as templates for reuse or sharing.
Once set up, you can configure MCP servers within the app, test connections, and then add widgets that query or control those servers. The frontend supports a variety of widgets (notes, to-do lists, AI chat, image display, flash cards, Kanban, spreadsheets, markdown, web previews, world clock, weather, and more). You can also configure AI providers (OpenAI, Anthropic, Ollama, Google), set models and parameters, and route outputs to widgets or dashboards. The template system lets you save and reuse widget configurations, while the data persistence stack (local SQLite by default, PostgreSQL production-ready) keeps your workspace and templates intact across sessions.
How to install
Prerequisites:
- Docker and Docker Compose (recommended)
- Alternatively, Node.js 18+ and Python 3.10+ for manual setup
Option A: Docker (Recommended)
- Clone the repository and navigate to the project:
git clone https://github.com/n00bvn/CanvasMCPClient.git
cd CanvasMCPClient
- Start the application with Docker Compose:
docker-compose up -d
- Open the application:
- Frontend: http://localhost:3031
- Backend API: http://localhost:8081
- API Docs: http://localhost:8081/docs
Option B: Manual Setup (Backend + Frontend)
Backend (Python FastAPI):
```bash
# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Prepare data directory and environment
mkdir -p data
export DATABASE_URL="sqlite:///./data/canvas_mcp.db"
export CORS_ORIGINS="http://localhost:3031,http://127.0.0.1:3031"
export SECRET_KEY="your-secret-key-here"
# Run the backend
uvicorn main:app --reload --host 0.0.0.0 --port 8081
Frontend (Next.js):
cd frontend
npm install
export NEXT_PUBLIC_API_URL="http://localhost:8081"
npm run dev
Access the app at http://localhost:3031 once both backend and frontend are running.
Additional notes
Tips and common gotchas:
- If using Docker, ensure Docker daemon is running and you have network access to pull images.
- The Default deployment uses SQLite for development; switch to PostgreSQL in production for better concurrency.
- When configuring MCP Servers, you can mix transport protocols (stdio, HTTP, SSE). Use the UI to test connections and import/export server configurations.
- For AI providers, securely store API keys through the app's AI Config section; keep keys out of your version control.
- The frontend and backend expose API docs; consult them for available endpoints and models.
- If you encounter port conflicts, modify the docker-compose.yml or the FRONTEND/BACKEND port mappings accordingly.
- For manual setup, ensure environment variable values (DATABASE_URL, SECRET_KEY, CORS_ORIGINS) are set correctly to match your deployment.
Related MCP Servers
Remote
A type-safe solution to remote MCP communication, enabling effortless integration for centralized management of Model Context.
pluggedin-app
The Crossroads for AI Data Exchanges. A unified, self-hostable web interface for discovering, configuring, and managing Model Context Protocol (MCP) servers—bringing together AI tools, workspaces, prompts, and logs from multiple MCP sources (Claude, Cursor, etc.) under one roof.
mcp
🤖 A Model Context Protocol (MCP) library for use with Agentic chat bots
docmole
Dig through any documentation with AI - MCP server for Claude, Cursor, and other AI assistants
obsidian
MCP server for Obsidian vault management - enables Claude and other AI assistants to read, write, search, and organize your notes
driflyte
The Driflyte MCP Server exposes tools that allow AI assistants to query and retrieve topic-specific knowledge from recursively crawled and indexed web pages.