excalidraw-mcp-gateway
Provides a gateway/proxy for Excalidraw, enabling reading and writing drawings through official tools, plus persistent server-side library management for .excalidraw files (list, load, save, move, open).
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@excalidraw-mcp-gatewayshow me my saved Excalidraw drawings"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
excalidraw-mcp-gateway
Passerelle OAuth 2.1 + proxy pour le MCP Excalidraw officiel (excalidraw/excalidraw-mcp).
Copie-adaptation du pattern tasks-mcp / calendar-mcp-gateway : serveur
d'autorisation colocalise (SDK python mcp v2, PKCE/DCR, metadata RFC 8414/9728),
page /consentement (phrase de passe, seule l'empreinte PBKDF2 est stockee),
middleware /mcp avec politique d'autorisation outil par outil (fail-closed).
Lecture (
excalidraw:lecture) :read_me,read_checkpoint.Ecriture (
excalidraw:ecriture) :create_view,save_checkpoint,export_to_excalidraw(televerse vers excalidraw.com : sortie de donnee).OAuth seul, pas de Bearer statique.
Bibliotheque distante Excalidraw (persistance serveur)
Les dessins IA et humains sont persistés en .excalidraw standard sous
/srv/excalidraw/data/bibliotheque (racine logique Excalidraw, chemins
relatifs uniquement, ../liens symboliques/traversal refuses, ecriture
atomique). Fichiers re-ouvrables tels quels dans Excalidraw.
Outils MCP servis localement par la passerelle (jamais relayes a l'upstream) :
Lecture :
library_list,library_load.Ecriture :
library_mkdir,library_save(elementsJSON oucheckpoint_id),library_move(renommer/deplacer).create_viewest systematiquement persiste :enregistrer_sous(ex.rag/schema.excalidraw) designe le chemin (prioritaire) ; sans lui, autosave automatique sousExcalidraw/ia/(nom horodate sans collision, confinement inchange). Reponse enrichie defichier+url_ouverture(.../excalidraw/editeur#/<chemin>, editeur principal) +persistance_ok. Le rendu n'est jamais sacrifie : un echec de persistance est signale dans la reponse (persistance_ok: False), rendu preserve. Unenregistrer_sousinvalide reste refuse avant tout relais (fail-closed, upstream jamais contacte pour une demande inexploitable).
Page web : /editeur (editeur principal integre : canvas officiel
plein ecran + feuille de style officielle, actions discretes « Ouvrir » /
« Enregistrer » / « Nouveau » via renderTopRightUI ouvrant la modale
file-browser, deep-link #/<chemin>, puce de statut ; fichiers locaux via
le menu natif Excalidraw) ; /bibliotheque redirige vers /editeur ;
API /api/liste, /api/document (GET/PUT), /api/dossiers,
/api/deplacer (Bearer EXCALIDRAW_BIBLIO_TOKEN exige, jamais en URL).
Editeur + API servis UNIQUEMENT sur le reseau prive (vhost NetBird,
jamais en public) : le proxy prive injecte l'Authorization cote serveur,
le navigateur ne voit aucun secret (ni champ, ni stockage, ni en-tete).
Seul /excalidraw/mcp (+ OAuth/well-known) reste public pour ChatGPT.
Deep-link url_ouverture parametrable via EXCALIDRAW_URL_EDITEUR
(editeur prive, ex. http://10.200.114.203:8130/editeur).
Deploiement : voir l'unite excalidraw-gateway.service et les vhosts
mymcps.duckdns.org / excalidraw-ip versionnes dans
Revens2/vps-etude-infra. Aucun secret dans ce depot (voir .env.example).
This server cannot be deployed
Maintenance
Related MCP Connectors
OAuth-protected, read-only-by-default MCP server for provenance-labeled QuillCaddie project memory.
Render, verify, describe, and safely edit Mermaid diagrams through MCP.
Notes, files, GitHub, and Drive through one MCP connection.
Notes, files, GitHub, and Drive through one MCP connection.
Related MCP Servers
- AlicenseBqualityFmaintenanceSecurity-hardened MCP server for Excalidraw with API key auth, rate limiting, real-time WebSocket sync, and 14 diagramming tools16756 npm3MIT
- FlicenseNot gradedqualityBmaintenanceStandalone backend for a self-hosted Excalidraw fork with per-board access control, providing an MCP remote endpoint that lets AI agents draw on real collaboration boards as specific users.-
- FlicenseNot gradedqualityCmaintenanceMCP server that lets Claude (and other MCP clients) create, list, read, update, and delete drawings in ExcaliDash via its REST API. It allows users to create diagrams directly from natural language commands like 'draw a flowchart'.-
- AlicenseAqualityBmaintenanceAn MCP server for Excalidraw diagram creation and headless rendering, enabling interactive canvas editing and automated SVG/PNG export via Playwright.41MIT