JSON Canvas MCP 服务器

JSON Canvas MCP 服务器

实现 JSON Canvas 1.0 规范的 MCP 服务器,用于创建和操作无限画布数据。

快速入门

概述

JSON Canvas MCP 服务器支持创建、修改和验证符合 JSON Canvas 1.0 规范的画布。

使用方法

Docker 配置

claude_desktop_config.json 中添加以下内容:

{
  "mcpServers": {
    "jsoncanvas": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-v",
        "canvas-data:/data",
        "mcp/jsoncanvas"
      ],
      "env": {
        "OUTPUT_PATH": "/data/output"
      }
    }
  }
}

本地构建

  1. 安装 uv 工具: curl -LsSf https://astral.sh/uv/install.sh | sh
  2. 创建虚拟环境并安装依赖: uv venv source .venv/bin/activate uv pip install -e .
  3. 运行测试: pytest

示例代码

创建一个包含节点和边的画布: from jsoncanvas import Canvas, TextNode, Edge

title = TextNode( id="title", x=100, y=100, width=400, height=100, text="# Hello Canvas\n\nThis is a demonstration.", color="#4285F4" ) info = TextNode( id="info", x=600, y=100, width=300, height=100, text="More information here", color="2" ) canvas = Canvas() canvas.add_node(title) canvas.add_node(info) edge = Edge( id="edge1", from_node="title", to_node="info", from_side="right", to_side="left", label="Connection" ) canvas.add_edge(edge) canvas.save("example.canvas")