Excalidraw MCP
Excalidraw MCP App Server
MCP server that draws hand-drawn Excalidraw diagrams inside the chat: streaming render, fullscreen editing, export
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- Talks to a remote server and sends diagram content over the network
- The local variant runs a Node server on the user's machine
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/excalidraw-mcp-app-serverDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Run in a terminal
claude mcp add --transport http excalidraw-mcp-app-server https://mcp.excalidraw.comOr add to the file .mcp.json, in the project
{
"mcpServers": {
"excalidraw-mcp-app-server": {
"type": "http",
"url": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the mcpServers key.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"excalidraw-mcp-app-server": {
"url": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Run in a terminal
code --add-mcp '{"name":"excalidraw-mcp-app-server","type":"http","url":"https://mcp.excalidraw.com"}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"excalidraw-mcp-app-server": {
"type": "http",
"url": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the servers key.
Run in a terminal
codex mcp add excalidraw-mcp-app-server --url https://mcp.excalidraw.comOr add to the file ~/.codex/config.toml, for all projects
[mcp_servers.excalidraw-mcp-app-server]
url = "https://mcp.excalidraw.com"If the file already exists, append the block to the end.
Run in a terminal
gemini mcp add -s user -t http excalidraw-mcp-app-server https://mcp.excalidraw.comOr add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"excalidraw-mcp-app-server": {
"httpUrl": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the mcpServers key.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"excalidraw-mcp-app-server": {
"serverUrl": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"excalidraw-mcp-app-server": {
"type": "streamableHttp",
"url": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"excalidraw-mcp-app-server": {
"type": "streamable-http",
"url": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the mcpServers key.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"excalidraw-mcp-app-server": {
"type": "remote",
"url": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the mcp key.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"excalidraw-mcp-app-server": {
"url": "https://mcp.excalidraw.com"
}
}
}If the file already exists, add the server inside the context_servers key.
Add the remote excalidraw server at https://mcp.excalidraw.com to the MCP configuration as a custom connector. Before calling create_view, first request the read_me tool with the element format reference.
Other ways from the author
git clone https://github.com/excalidraw/excalidraw-mcp.git
cd excalidraw-mcp
pnpm install && pnpm run buildBuilds the local server from source. Node 18 is required. After the build, add node dist/index.js --stdio to the MCP configuration.
This is third-party code. Review the repository files before installing.
What it does
The server lets an agent draw diagrams in the recognizable Excalidraw hand-drawn style and show them right in the chat. Rendering streams with draw-on animation, with smooth viewport panning, label binding and fullscreen interactive editing with export to excalidraw.com. It supports checkpoints for iterative edits and sends a screenshot of the result back to the model. The server is built on the MCP Apps extension and exposes two tools: read_me with the element format reference and create_view to render a diagram.
Who it is for. For anyone who needs quick diagrams and sketches from an agent right in the chat.
Good fit when
- You need an architecture or flow diagram from a description
- You want a whiteboard-style sketch right in the conversation
- You want to edit a diagram iteratively and export it to excalidraw.com
Not a fit when
- The client does not support the MCP Apps extension and interactive panels
- You need a precise vector editor rather than a quick sketch
Example request
Draw a diagram: a user hits an API server which talks to a databaseLimitations
Interactive rendering and editing depend on MCP Apps support in the client; Claude, ChatGPT, VS Code, Goose and other compatible clients work. A hosted remote endpoint is available, and a local run needs Node 18 with a build from source or the extension from a release. No key is required for the remote server.
How to disable. Remove the excalidraw entry from the client's MCP configuration. If you installed the mcpb extension in Claude Desktop, remove it in the extensions settings.
MCP
- Transport
- http, stdio
- Authentication
- not required
Security check
- Talks to a remote server and sends diagram content over the network
- The local variant runs a Node server on the user's machine
README in short
The README describes an MCP server that renders Excalidraw diagrams with streaming draw-on rendering, panning, fullscreen editing and export. It works with clients that support the MCP Apps extension. The hosted endpoint https://mcp.excalidraw.com is recommended; for local use you can download the mcpb extension from releases and open it in Claude Desktop, or build the server from source with pnpm and add it to the configuration. You can deploy your own copy on Vercel with no environment variables. MIT license.
FAQ
Do I need to install anything locally?
No, a hosted endpoint at https://mcp.excalidraw.com is available. A local build is only needed if you want to host the server yourself.
Which clients does it work in?
Clients that support the MCP Apps extension: Claude, ChatGPT, VS Code, Goose and other compatible ones.
Related
A self-hosted knowledge base with block-level references and a built-in MCP server for connecting AI agents to your notes
A CLI for every Google Workspace API with JSON output and agent skills: Drive, Gmail, Calendar, Sheets and more
Local search over Markdown notes, docs and meeting transcripts: keywords, semantic search and reranking, with an MCP server
A task manager for AI-driven development: breaks a PRD into dependent tasks and guides the agent through them via MCP or CLI