Back to Browse

Canvaskeep MCP Server

Developer ToolsModerate5.3MCP RegistryLocal
Free

Server data from the Official MCP Registry

Create and edit Excalidraw diagrams in your CanvasKeep workspace, with auto-layout and folders.

About

Create and edit Excalidraw diagrams in your CanvasKeep workspace, with auto-layout and folders.

Security Report

5.3
Moderate5.3Moderate Risk

CanvasKeep MCP server authenticates with a bearer API key from environment variables, validates tool inputs as UUIDs, and performs AES-GCM encryption locally with the master key never sent to the server. Its network and env var access matches its stated purpose. The main concerns are that a configurable API URL could leak the API key if misconfigured, decrypted diagram content is passed into the AI context, and destructive tools like save_diagram_scene and delete_diagram can be triggered without confirmation. Supply chain analysis found 4 known vulnerabilities in dependencies (0 critical, 4 high severity). Package verification found 1 issue.

5 files analyzed · 10 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

env_vars

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

API key from your CanvasKeep dashboard (profile menu, API Keys)Required

Environment variable: CANVASKEEP_API_KEY

Needed to read or edit encrypted diagrams. Copy it from canvaskeep.com/dashboard/encryptionRequired

Environment variable: CANVASKEEP_MASTER_KEY

API base URL, override for local developmentOptional

Environment variable: CANVASKEEP_API_URL

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-canvaskeep-canvaskeep-mcp": {
      "env": {
        "CANVASKEEP_API_KEY": "your-canvaskeep-api-key-here",
        "CANVASKEEP_API_URL": "your-canvaskeep-api-url-here",
        "CANVASKEEP_MASTER_KEY": "your-canvaskeep-master-key-here"
      },
      "args": [
        "-y",
        "canvaskeep-mcp"
      ],
      "command": "npx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

CanvasKeep MCP Server

An MCP (Model Context Protocol) server that lets AI tools like Claude Code and Codex generate Excalidraw diagrams and save them directly into your CanvasKeep workspace.

npm license

Setup

1. Get an API key

  1. Log in to CanvasKeep
  2. Click your profile menu (top right) and select API Keys
  3. Generate a new key and copy it immediately (you won't see it again)

2. Install and register

Claude Code:

claude mcp add canvaskeep \
  -e CANVASKEEP_API_KEY=ck_your_key_here \
  -- npx canvaskeep-mcp

Codex / other MCP clients:

{
  "mcpServers": {
    "canvaskeep": {
      "command": "npx",
      "args": ["canvaskeep-mcp"],
      "env": {
        "CANVASKEEP_API_KEY": "ck_your_key_here"
      }
    }
  }
}

3. Environment variables

VariableRequiredDefaultDescription
CANVASKEEP_API_KEYYes-Your API key from the CanvasKeep dashboard
CANVASKEEP_MASTER_KEYNo-Needed to read or edit encrypted diagrams. Copy it from canvaskeep.com/dashboard/encryption (Key for the MCP server)
CANVASKEEP_API_URLNohttps://canvaskeep.comAPI base URL (override for local dev)

Available tools

ToolDescription
list_workspacesList all your workspaces
create_workspaceCreate a new workspace
list_foldersList folders in a workspace
create_folderCreate a new folder, optionally nested
list_diagramsList diagrams in a workspace
create_diagramCreate a diagram, optionally inside a folder
update_diagramRename a diagram
delete_diagramPermanently delete a diagram
get_diagram_summaryGet diagram metadata and element count
get_diagram_sceneRead the full Excalidraw scene of a diagram
save_diagram_sceneWrite a full Excalidraw scene back to a diagram
generate_diagramGenerate a diagram from nodes and edges with auto-layout

Encryption

Diagrams you encrypt in CanvasKeep stay encrypted when an AI tool works with them. When get_diagram_scene or save_diagram_scene touches an encrypted diagram, this server decrypts and re-encrypts it locally (AES-GCM, see src/encryption.ts) using CANVASKEEP_MASTER_KEY. The master key never leaves your machine.

generate_diagram sends the nodes and edges you give it to CanvasKeep, which lays them out on the server, so diagrams generated this way are stored unencrypted.

Example usage

Ask Claude Code something like:

"Draw an architecture diagram of a web app with a React frontend, Node API, PostgreSQL database, and Redis cache"

Claude will use the MCP tools to create a diagram in your CanvasKeep workspace with properly laid-out boxes and labeled arrows.

Development

git clone https://github.com/CanvasKeep/canvaskeep-mcp.git
cd canvaskeep-mcp
npm install
npm run build
CANVASKEEP_API_KEY=ck_... CANVASKEEP_API_URL=http://localhost:3000 node dist/index.js

To run your local build from Claude Code:

claude mcp add canvaskeep \
  -e CANVASKEEP_API_KEY=ck_your_key_here \
  -- node /path/to/canvaskeep-mcp/dist/index.js

License

MIT

Reviews

No reviews yet

Be the first to review this server!