home / mcp / excalidraw mcp server
A Model Context Protocol (MCP) server for Excalidraw
Configuration
View docs{
"mcpServers": {
"andreswebs-public-images-excalidraw-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"--interactive",
"--volume",
"${workspaceFolder}/.excalidraw:/app/storage",
"andreswebs/excalidraw-mcp"
]
}
}
}You can run an MCP server that lets you manage Excalidraw drawings through simple create, read, update, delete operations and export drawings to SVG, PNG, or JSON formats. It uses a lightweight, file-based storage approach and exposes a stdio MCP interface for easy integration with your MCP client.
You will interact with this server through an MCP client by calling the drawing management and export tools. You can create new drawings, retrieve existing ones by ID, update or delete drawings, and list all drawings. You can also export a drawing to SVG, PNG, or JSON for external use or sharing.
Prerequisites: you need Docker installed on your machine to run the MCP server container.
Run the MCP server container and mount a local storage directory to access your drawings.
docker run --rm --interactive --volume "$(pwd)/.excalidraw:/app/storage" andreswebs/excalidraw-mcpCreate a local MCP configuration that points to the Excalidraw MCP server. The following example shows how to set up the MCP client to communicate with the local stdio server using Docker as the runtime.
{
"servers": {
"excalidraw": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"--rm",
"--interactive",
"--volume",
"${workspaceFolder}/.excalidraw:/app/storage",
"andreswebs/excalidraw-mcp"
]
}
}
}The container stores drawings in the local .excalidraw/. You can access and manage drawings from your MCP client once the server is running.
Create a new Excalidraw drawing and store it in the local storage.
Retrieve an existing Excalidraw drawing by its ID from storage.
Update the contents of an existing drawing by its ID and save changes to storage.
Remove a drawing by its ID from storage.
List all drawings currently stored in the local storage.
Export a drawing to SVG format for embedding or sharing.
Export a drawing to PNG format for high-quality images.
Export a drawing to JSON format for archival or reimport.