excalidraw-ai
excalidraw-ai — MCPサーバー (ExcalidrawへのAIインターフェース)
AIがライブのExcalidrawルームを読み取り、監視、編集するためのクリーンで非クランキーなインターフェース。ブラウザ自動化(fiber-read + drag-drop + remote browser drops)の代わりに、コラボレーションリレーを介してソケットボットとしてルームに参加し、AES-GCM暗号化されたシーンプロトコルを直接話します——決定論的、ヘッドレス、スケーラブル。
POCステータス: コアブリッジ + MCP stdio サーフェスが、セルフホストの excalidraw-room リレーに対してエンドツーエンドで動作(セルフテスト + MCPスモーク合格)。
なぜ自分たちで制御するリレーなのか
ボットはリレーと通信します。Excalidrawのホストリレー(oss-collab.excalidraw.com)は非ブラウザボットをオリジンガードします(403/400)。そのため、自分たちのルームでは、excalidraw/excalidraw-room(MIT、プロダクションと同じコード)を実行し、VITE_APP_WS_SERVER_URL を介してExcalidraw UIをそのリレーに向けます。
Related MCP server: Excalidraw MCP Server
Architecture
Excalidraw UI (fork) ──socket.io──▶ relay (excalidraw-room) ◀──socket-bot── excalidraw-ai (MCP)
(humans) self-hosted (the AI's interface)ツール
Tool | 説明 |
| 新しいルームID/キーをリレー用に生成 |
| ルームに参加し、シーンを読み取り、リッスンを開始 |
| 切断 |
| ボード要素 + テキスト |
| 前回の呼び出し以降の追加/更新/削除の差分(「ルームを聞く」) |
| 要素を追加(ライブブロードキャスト) |
| 既存要素を移動/リタイトル/色変更(バージョンアップ) |
| 削除済みとしてマーク |
Run
npm install
# relay (one terminal):
cd /tmp/excalidraw-room && PORT=3002 node dist/index.js
# self-test the bridge core:
npm run selftest
# MCP smoke (stdio handshake + join + get_scene):
npm run mcp-smoke
# start the MCP server (stdio) — wire into Hermes/Copilot/Claude:
node src/server.jsHermesへの接続(~/.hermes/config.yaml)
mcp_servers:
excalidraw_ai:
command: "node"
args: ["/root/workspace/mcclawd-org/excalidraw-ai/src/server.js"]Hermesを再起動すると、ツールが mcp_excalidraw_ai_* として表示されます。
レイアウト
src/crypto.js— AES-GCM E2E ヘルパー(Node Web Crypto)src/elements.js— 要素ビルダー + シーンマージ/差分(ID+バージョンセマンティクス)src/room.js— RoomClient: ソケット参加、読み取り、書き込み、変更フィードsrc/server.js— MCPサーバー(stdio)、ツール登録scripts/selftest.mjs,scripts/mcp-smoke.mjs— 検証
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI agents to programmatically generate, edit, and view Excalidraw diagrams with real-time browser synchronization. It provides a suite of tools for adding shapes, text, and arrows to diagrams through natural language interactions.1179798MIT
- Alicense-qualityFmaintenanceEnables AI agents to programmatically control a live Excalidraw canvas through element-level CRUD operations and real-time synchronization. It allows agents to iteratively build, inspect, and refine diagrams while providing visual feedback via screenshots and scene descriptions.1,730MIT
- Alicense-qualityDmaintenanceEnables AI agents to programmatically control a live Excalidraw canvas with element-level CRUD operations and real-time synchronization. It supports iterative diagramming through scene descriptions, screenshots, and advanced layout tools for collaborative AI-human workflows.1,730MIT
- Alicense-qualityCmaintenanceEnables AI agents to collaboratively draw and annotate Excalidraw diagrams in real-time via MCP tools, synced to a browser canvas.5Apache 2.0
Related MCP Connectors
Ephemeral REST chatrooms for AI agents to coordinate. Share a room URL — agents talk live.
Real-time collaborative whiteboard — AI agents and humans edit the same board live over MCP.
Persistent docs and memory for AI agents — read, write, organize & search a shared workspace.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/McClawdDigital/excalidraw-ai'
If you have feedback or need assistance with the MCP directory API, please join our Discord server