excalidraw
Model Context Protocol (MCP) server for Excalidraw - Work in Progress
claude mcp add --transport stdio i-tozer-excalidraw-mcp node dist/index.js \ --env PORT="optional (defaults to server's internal configuration if not set)" \ --env DATA_DIR="path to storage directory for drawings (optional)"
How to use
This MCP server provides a REST-like API for managing Excalidraw drawings. It supports creating, reading, updating, and deleting drawings, as well as exporting them to SVG, PNG, and JSON formats. The server uses a simple file-based storage system to persist drawings locally, making it suitable for lightweight development and testing scenarios. Available drawing operations include create_drawing, get_drawing, update_drawing, delete_drawing, and list_drawings, while export operations include export_to_svg, export_to_png, and export_to_json. Start the server using npm start and interact with the exposed tools to manage your Excalidraw assets programmatically.
How to install
Prerequisites:
- Node.js (≥14) and npm installed on your system
- Git for cloning repositories
Step-by-step installation:
-
Clone the repository git clone https://github.com/yourusername/excalidraw-mcp.git cd excalidraw-mcp
-
Install dependencies npm install
-
Build the project npm run build
-
Run the server npm start
Notes:
- The build step compiles TypeScript sources to JavaScript (commonly into a dist/ folder).
- The start script runs the server (as configured in package.json), typically launching the compiled entry point (dist/index.js).
Additional notes
- The server uses a simple file-based storage under a configured data directory. If DATA_DIR is not set, a default location is used by the server.
- For production deployments, consider configuring PORT, DATA_DIR, and any necessary host binding in environment variables.
- If you modify code, re-run npm run build before starting the server to ensure compiled output is up to date.
- Ensure proper permissions on the storage directory to avoid write errors.
- When exporting drawings, check that the Excalidraw JSON payload is valid and includes all necessary metadata for successful export.
Related MCP Servers
zen
Selfhosted notes app. Single golang binary, notes stored as markdown within SQLite, full-text search, very low resource usage
MCP -Deepseek_R1
A Model Context Protocol (MCP) server implementation connecting Claude Desktop with DeepSeek's language models (R1/V3)
mcp-fhir
A Model Context Protocol implementation for FHIR
mcp
Inkdrop Model Context Protocol Server
mcp-appium-gestures
This is a Model Context Protocol (MCP) server providing resources and tools for Appium mobile gestures using Actions API..
dubco -npm
The (Unofficial) dubco-mcp-server enables AI assistants to manage Dub.co short links via the Model Context Protocol. It provides three MCP tools: create_link for generating new short URLs, update_link for modifying existing links, and delete_link for removing short links.