Token导航 LogoToken导航TokenDH.com
Mural MCP logo
办公协作未说明官方级别未说明来源级核验

Mural MCP

MCP Server

Mural MCP Server是一个专注于可视化协作平台的内容编辑服务,提供多种工具用于创建、更新和管理白板上的各种元素,如便签、文本框、形状和连接线。

工具数

20

提示词数

0

GitHub Stars

1

资源数

0
TypeScriptClaude团队协作ClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

janschmiedgen

提供方

janschmiedgen

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

壁画MCP服务器

MCP服务器 壁画 视觉协作平台——专注于 板内容编辑:便签、形状、文本框、区域、图像和连接器。

模型上下文协议 SDK和TypeScript。跑过 标准 --与任何MCP客户端(Warp、Cursor、Claude Code等)兼容。

特性

20工具 跨越4个模块:

电路板编辑-写入(13个工具)

工具说明
create_sticky_notes批量创建便签(1-1000)
update_sticky_note更新文本、位置、颜色、大小
create_text_boxes批量创建文本框(1-1000)
update_text_box更新文本框
create_shapes批量创建形状——矩形、圆形、菱形、三角形、星形、六边形等50多种
update_shape更新形状
create_area创建分组区域
update_area更新区域
create_image从公共URL添加图像(自动检测尺寸,最大10 MB)
connect_widgets在两个小部件之间绘制一个连接的箭头
connect_widgets_batch在一次通话中连接多个小部件对(最多100个)
create_arrow绘制一个自由形式的箭头(不捕捉到小部件)
delete_widget按ID删除任何小部件

板编辑-读取(2个工具)

工具说明
get_widgets列出小部件(分页,默认50,剥离到关键字段)
get_widget按ID获取单个小部件

导航(4个工具)

工具说明
list_workspaces列出可访问的工作区
list_rooms列出工作区中的房间(默认限制为50)
list_murals列出房间或工作区中的壁画(默认限制为50)
get_mural获取壁画元数据

壁画管理(1个工具)

工具说明
create_mural创建新壁画(默认设置:无限画布,灰色背景)

代币效率

所有工具响应都针对最小的令牌使用进行了优化:

  • 剥离响应 --只返回与决策相关的字段(id、类型、位置、文本、样式要素)
  • 压缩JSON --没有漂亮的印刷,按键短(w/h/bg 而不是 width/height/backgroundColor)
  • 批次摘要 --创建工具返回 {summary, count, ids, preview} 而不是完整对象转储
  • 分页get_widgets 默认为50个基于光标的分页项目
  • 服务器端验证 --在服务器端验证形状类型(模式中没有臃肿的枚举)

先决条件

1.注册壁画应用程序

  1. 首选 app.mural.co → 点击你的头像→ “创建和管理应用程序”
  2. 点击 “新应用程序”
  3. 将重定向URL设置为: http://localhost:9876/callback
  4. 注意你的 客户端ID客户端密钥

2.安装和构建

git clone https://github.com/janschmiedgen/mural-mcp.git
cd mural-mcp
npm install
npm run build

3.一次性OAuth身份验证

export MURAL_CLIENT_ID=your_client_id
export MURAL_CLIENT_SECRET=your_client_secret
npm run auth

这将打开您的浏览器以获取壁画同意。令牌保存到 ~/.mural-mcp/tokens.json 并在运行时自动刷新。

MCP客户端设置

扭曲

在中添加为CLI MCP服务器 设置→ MCP服务器:

{
  "command": "node",
  "args": ["/path/to/mural-mcp/build/index.js"],
  "env": {
    "MURAL_CLIENT_ID": "your_client_id",
    "MURAL_CLIENT_SECRET": "your_client_secret"
  }
}

光标

添加 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "mural": {
      "command": "node",
      "args": ["/path/to/mural-mcp/build/index.js"],
      "env": {
        "MURAL_CLIENT_ID": "your_client_id",
        "MURAL_CLIENT_SECRET": "your_client_secret"
      }
    }
  }
}

克劳德代码

claude mcp add mural -- node /path/to/mural-mcp/build/index.js

MURAL_CLIENT_IDMURAL_CLIENT_SECRET 在您的shell环境中。

配置

工作区允许列表(可选)

通过设置来限制对特定工作区的访问 MURAL_ALLOWED_WORKSPACES 环境变量:

export MURAL_ALLOWED_WORKSPACES="workspace_id_1,workspace_id_2"

如果未设置,则经过身份验证的用户可以访问的所有工作区都可用。

发展

npm install
npm run build    # Compile TypeScript → build/
npm run dev      # Run with tsx (hot reload)
npm run auth     # Re-authenticate with Mural

建筑

src/
├── index.ts                  # Entry point, registers tools, starts stdio transport
├── types.ts                  # TypeScript interfaces (Widget, Mural, Room, etc.)
├── auth/
│   ├── oauth.ts              # OAuth2 + PKCE flow, token refresh
│   ├── token-store.ts        # Token persistence (~/.mural-mcp/tokens.json)
│   └── workspace-guard.ts    # Workspace allowlist guard
├── client/
│   └── mural-api.ts          # HTTP client for Mural Public API v1
├── tools/
│   ├── widgets-write.ts      # 13 write tools (create, update, connect, delete)
│   ├── widgets-read.ts       # 2 read tools (get_widgets, get_widget)
│   ├── navigation.ts         # 4 navigation tools (workspaces, rooms, murals)
│   └── mural-manage.ts       # 1 management tool (create_mural)
└── utils/
    └── strip.ts              # Response strippers for token efficiency
  • 运输: stdio(运行时没有HTTP服务器)
  • 认证: OAuth2+PKCE,令牌存储在 ~/.mural-mcp/tokens.json,自动刷新
  • API 壁画公共API v1(https://app.mural.co/api/public/v1)

API壁画注释

在开发过程中发现的一些怪癖可能对贡献者有所帮助:

  • 箭头语义: 在壁画API中, startRefId 箭头指向的控件是TO吗 endRefId 是尾巴。箭头在 第一点 在点阵列中。
  • 创建时的便签样式:fontSizetextAlign 可以在创建过程中设置。 backgroundColor 必须通过后续的更新调用进行设置。
  • 图片上传: 需要三个步骤的过程:(1)下载图像,(2)通过API创建资产URL,(3)将图像放入blob存储,(4)创建引用资产名称的图像小部件。
  • 垂直箭头: connect_widgets 可能会失败 WIDGET_SIZE_INVALID 当源和目标几乎垂直对齐时(箭头宽度接近零)。使用 create_arrow (自由形式)作为退路。

许可证

麻省理工学院

目录标签

目录标签

TypeScriptClaude团队协作可视化协作本地部署内容编辑白板工具

支持客户端

ClaudeCursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

20

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP