A comprehensive Model Context Protocol (MCP) server that enables seamless interaction with Excalidraw diagrams and drawings. This server provides LLMs (Large Language Models) with the ability to create, modify, query, and manipulate Excalidraw drawings through a structured, developer-friendly API.
type, x, y coordinatesid of the element to updateid of the element to deletetype to filter by element type, filter object with key-value pairsresource type (scene, library, theme, elements)elementIds array of element IDs to groupgroupId of the group to ungroupelementIds array and alignment (left, center, right, top, middle, bottom)elementIds array and direction (horizontal or vertical)elementIds array of elements to lockelementIds array of elements to unlockTo use this server with the Claude Desktop application, add the following configuration to the "mcpServers" section of your claude_desktop_config.json:
{
"mcpServers": {
"excalidraw": {
"command": "node",
"args": ["src/index.js"],
"env": {
"LOG_LEVEL": "info",
"DEBUG": "false"
}
}
}
}
To use this server with Cursor, create a .cursor/mcp.json file in your workspace with the following configuration:
{
"mcpServers": {
"excalidraw": {
"command": "node",
"args": ["/path/to/your/directory/mcp_excalidraw/src/index.js"],
"env": {
"LOG_LEVEL": "info",
"DEBUG": "false"
}
}
}
}
Make sure to:
/path/to/your/directory with the actual absolute path to your mcp_excalidraw installation.cursor directory if it doesn't existindex.js is correct and the file exists{
"mcpServers": {
"excalidraw": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/excalidraw"],
"env": {
"LOG_LEVEL": "info",
"DEBUG": "false"
}
}
}
}
# Install dependencies
npm install
# Start the server
npm start
# Build the Docker image
docker build -t mcp/excalidraw .
# Run the container
docker run -i --rm mcp/excalidraw
The server can be configured using the following environment variables:
LOG_LEVEL - Set the logging level (default: "info")DEBUG - Enable debug mode (default: "false")DEFAULT_THEME - Set the default theme (default: "light")Here are some practical examples of how to use the Excalidraw MCP server:
{
"type": "rectangle",
"x": 100,
"y": 100,
"width": 200,
"height": 100,
"backgroundColor": "#ffffff",
"strokeColor": "#000000",
"strokeWidth": 2,
"roughness": 1
}
{
"type": "rectangle",
"filter": {
"strokeColor": "#000000"
}
}
{
"elementIds": ["elem1", "elem2", "elem3"]
}
This Excalidraw MCP server is licensed under the MIT License. You are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
No description, website, or topics provided.
No releases published
No packages published