关于 cnvs.app
cnvs.app 是供人和 AI Agent 实时协作的共享白板,可用于绘图、编辑内容和跟进变更。其托管 MCP 服务提供白板操作及可订阅的实时状态,也支持通过 REST 端点备用访问。
主要功能
- 01创建和查看白板
- 02编辑文本、链接、图片和笔迹
- 03创建看板及任务
- 04渲染白板预览
- 05订阅白板实时更新
适用场景
- 01在共享画布上协作构思
- 02将任务列表转换为看板
- 03查看白板并概述其布局
MCP 相关
托管 MCP 服务 https://cnvs.app/mcp 提供白板创建、查看、编辑和看板工作流工具,以及可订阅的白板状态和预览。状态变更操作也提供 REST 端点作为备用方式。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://cnvs.app/mcpclaude mcp add --transport http app-cnvs-whiteboard https://cnvs.app/mcp{"mcpServers":{"app-cnvs-whiteboard":{"type":"http","url":"https://cnvs.app/mcp"}}}在 Cursor 中打开{"servers":{"app-cnvs-whiteboard":{"type":"http","url":"https://cnvs.app/mcp"}}}在 VS Code 中打开{"mcpServers":{"app-cnvs-whiteboard":{"type":"http","url":"https://cnvs.app/mcp"}}}{"mcpServers":{"app-cnvs-whiteboard":{"serverUrl":"https://cnvs.app/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
25| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| url_or_id | string | 是 | 完整画板 URL(https://cnvs.app/#<id>)或 UUID。 |
| access_key | string | 否 | 画板已锁定时使用的 8 位小写字母数字访问密钥(也接受旧版 6 位小写字母数字密钥)。等同于在 JSON-RPC POST 请求中设置 `X-Board-Key` HTTP 标头。未锁定的画板请省略。通过 POST /api/boards/<id>/lock 获取。 |
详细介绍
cnvs-whiteboard-skills
面向 cnvs.app 的 Agent Skills 和 MCP 服务发现——这是一个免费、无需注册的实时协作白板。任何 AI Agent 都可以通过托管的 MCP 服务或 REST 备用方式,在共享画布上读取、写入、绘制、绘制图表,并订阅人类用户的实时编辑。
支持 Claude Code、Claude Desktop、Cursor、OpenCode / OpenAI Codex、Aider(搭配 MCP 插件)、其他任何支持 MCP 的客户端,以及 Hermes 系列 Agent。
MCP 服务
端点:https://cnvs.app/mcp(Streamable HTTP,协议 2025-06-18,无需身份验证——白板 ID 即访问密钥)。
已在官方 MCP Registry 中注册,名称为 app.cnvs/whiteboard。
功能
- 工具(25 个):创建和检查白板;生成视觉预览;编辑文本、链接、图像和笔画;移动和删除;等待实时更新;以及完整的看板列、泳道、任务、查询和导出工作流。生产环境中的确切工具列表发布于
/.well-known/mcp.json。对于无法使用 MCP 的运行时,修改状态的操作也有对应的 REST 接口,路径为https://cnvs.app/api/boards/<id>/…。 - 资源(3 个):
cnvs://board/{id}/state.json(完整快照)、cnvs://board/{id}/preview.svg(视觉渲染)和cnvs://board/{id}/tasks.json(看板状态)。三者均可订阅。 - 订阅:支持
resources/subscribe,通过 SSE 推送notifications/resources/updated,并在活动结束后约 3 秒进行防抖处理。 - 实时机器可读清单:
/quotas.json、/openapi.json、/llms.txt、/.well-known/mcp.json、/.well-known/mcp/server.json。
安装
Codex / ChatGPT 和 Cursor 插件包
本仓库是这两个市场集成的公开源代码包:
.codex-plugin/plugin.json和.mcp.json描述 Codex / ChatGPT 插件。.cursor-plugin/plugin.json和mcp.json描述 Cursor 插件。SUBMISSION.md和CURSOR-MARKETPLACE.md包含准备好的上架文案、披露信息、审核流程和提交检查清单。
这两个插件包都只连接托管的生产环境端点;无需配置本地服务进程或密钥。
Claude Desktop / Cursor / 任意 MCP 客户端
单行配置——将以下内容添加到客户端的 mcpServers 对象中:
{
"mcpServers": {
"cnvs": {
"type": "http",
"url": "https://cnvs.app/mcp"
}
}
}
Claude Code CLI
claude mcp add --transport http cnvs https://cnvs.app/mcp
仅使用 REST(无 MCP 客户端)
# Create a board
curl -X POST https://cnvs.app/api/boards
# Add text
curl -X POST https://cnvs.app/api/boards/<id>/texts \
-H 'Content-Type: application/json' \
-d '{"x":100,"y":200,"content":"# Hello","author":"ai:myagent"}'
# Long-poll for live changes
curl "https://cnvs.app/api/boards/<id>/wait?timeout_ms=25000"
完整 REST 参考:/llms.txt、/openapi.json。
访问模式
无需账号或 OAuth 流程。白板 URL 或白板 ID 是持有者式访问凭证:任何知道未锁定白板 URL 的人都可以打开白板。白板可以选择要求提供 8 位小写字母数字访问密钥,以便写入或同时进行读写;仍接受旧版 6 位密钥。密钥只能通过 MCP 工具的 access_key 参数或 HTTP 标头 X-Board-Key 传递。
请勿将私人白板 URL 或访问密钥粘贴到公开问题、日志或代码仓库中。
实用提示词
- 为我们的头脑风暴会议创建一个新的白板,并返回其 URL。
- 打开这个 cnvs.app 白板,检查预览并总结布局。
- 将此列表转换为包含优先级和负责人的共享看板。
包含的技能
此仓库中包含两个相关的 Agent Skills,按 agentskills.io 开放标准发布,因此可在任何兼容的运行时中使用。两者均为可选技能,由用户自行安装(Agent 只能建议安装,绝不能自行安装)。安装到 ~/.claude/skills/ 后,它们会教会 Agent 如何充分使用 MCP 服务(先预览再输出 JSON、写入时优先使用 REST 而非 MCP、作者标签约定、先订阅再响应的循环)。
cnvs-whiteboard/ — 主要技能
教会 AI Agent 如何实时协作处理 cnvs.app 画板:
- 读取共享画布状态
- 绘图/制作示意图/流程图/添加注释——添加、更新、移动和删除文本、链接、便利贴、笔迹、图片和 Mermaid 图表(流程图、时序图/类图/ER 图、思维导图、甘特图、概念图)
- 画板包含绘图时,渲染 SVG 预览
- 通过 MCP 订阅实时人工编辑,并通过 REST 响应
当出现任何 cnvs.app 画板引用(URL https://cnvs.app/#<id>、cnvs://board/<id>/... 或单独的画板 ID),或出现“协作处理/绘图/制作示意图/添加注释/查看共享白板或画布”等短语时激活。
mcp-listen/ — 辅助技能(v0.4.0)
面向具有 capabilities.resources.subscribe: true 的 Streamable-HTTP MCP 服务的推送到模型泵。它会建立会话,订阅调用方提供的资源 URI,并在 stdout 上为每个 notifications/resources/updated 事件输出一行 JSON——设计为由 Claude Code 的 Monitor 工具封装,使每次服务推送都成为聊天内通知(无需轮询,也无需持续读取日志)。
自 v0.4 起无需依赖。 单个 scripts/listen.mjs 仅使用 Node.js 18+ 内置功能——无需 package.json、无需 npm install、无需安装脚本。发行版本通过不可变的版本化 URL 提供(https://cnvs.app/mcp-listen/v<version>/…),并附带 SHA256SUMS 文件。零安装替代方案:REST 长轮询 GET https://cnvs.app/api/boards/<id>/wait?timeout_ms=25000(或 wait_for_update MCP 工具)。
自 v0.3 起仅作为辅助技能激活。 仅当调用方(用户或其他技能)提供了 MCP 服务 URL 和至少一个资源 URI 时才会触发。不会因“查看此文件”或“随时关注”等通用表述而自动激活。cnvs-whiteboard 是规范的调用方,并将其推送通道委托给此处。
自 v0.3 起拆分输出。 默认情况下,只有可执行操作的 resource_updated 事件会输出到 stdout。连接/订阅/心跳/临时错误事件会输出到 stderr,因此封装它的 Monitor 不会因监听器自身的记录操作而触发。传入 --verbose(或 -v)可将所有内容合并到 stdout,便于调试或进行单通道日志记录(旧版 v0.2 的行为)。
注册状态。 目前有意不将其列入集中式技能注册表。现有注册表流水线(例如截至 2026-05-03 的 majiayu000/claude-skill-registry-core)只会归档 SKILL.md 和生成的元数据;它们不会镜像打包的 scripts/**,因此收录 mcp-listen 会发布一个无法正常工作的技能。待核心注册表支持目录式技能归档、打包文件镜像和安全扫描后,将重新提交此技能——详见 PR majiayu000/claude-skill-registry-core#40,其中介绍了刚合并的目录归档原语,以及有关打包脚本扫描的未决问题。在此之前,请通过 curl 从 cnvs.app 安装(如下),或 git clone 此仓库。
安装技能(请自行运行这些命令)
# cnvs-whiteboard (SKILL.md only — no code)
mkdir -p ~/.claude/skills/cnvs-whiteboard && cd ~/.claude/skills/cnvs-whiteboard
curl -fsSLO https://cnvs.app/cnvs-whiteboard/SKILL.md
# mcp-listen (pinned version, no npm, Node.js 18+). Files are downloaded into a
# staging dir and only moved into ~/.claude/skills/mcp-listen if every checksum
# matches. On Linux replace `shasum -a 256 -c` with `sha256sum -c`.
stage="$(mktemp -d)" && cd "$stage" && mkdir scripts \
&& curl -fsSLO https://cnvs.app/mcp-listen/v0.4.0/SKILL.md \
&& curl -fsSLO https://cnvs.app/mcp-listen/v0.4.0/SHA256SUMS \
&& curl -fsSL -o scripts/listen.mjs https://cnvs.app/mcp-listen/v0.4.0/scripts/listen.mjs \
&& shasum -a 256 -c SHA256SUMS \
&& mkdir -p ~/.claude/skills && rm -rf ~/.claude/skills/mcp-listen \
&& mv "$stage" ~/.claude/skills/mcp-listen && cd ~/.claude/skills/mcp-listen \
&& node scripts/listen.mjs --version # 0.4.0
面向用户的相同步骤说明:https://cnvs.app/docs/mcp#listen。
或者,git clone 此仓库,运行 cd mcp-listen && shasum -a 256 -c SHA256SUMS 检查,然后运行 cp -r .claude/skills/* ~/.claude/skills/——.claude/skills/ 目录中包含指向 cnvs-whiteboard/ 和 mcp-listen/ 的符号链接,以符合 Claude Code 预期的目录布局。
规范合规性
两个技能都遵循 agentskills.io 规范:
name与所在目录名称一致description不超过 1024 个字符,采用祈使语气,并明确列出触发关键词- 使用
scripts/子目录存放捆绑代码(mcp-listen) - 声明
license: MIT和compatibility字段,并在每个技能的“相关技能”部分交叉引用,以防止激活重叠
为什么拆分为两个技能
早期版本只有一个页面(cnvs.app 上的 /skill-cnvs.md,现已重定向到旧版页面)。拆分为两个职责清晰的单元,遵循规范中“设计职责清晰的单元”这一最佳实践:
cnvs-whiteboard负责 cnvs.app 特定的工作流(读取 / 写入 / 渲染 / 注意事项)。mcp-listen负责通用的推送至模型模式(可用于任何 MCP 服务)。
交叉引用让它们保持紧密配合:cnvs-whiteboard 将 mcp-listen 列为其委派的推送渠道;mcp-listen 将 cnvs-whiteboard 列为处理 cnvs 特定任务的配套技能。实际使用中不会出现激活重叠。
规范来源
技能也通过以下地址实时提供:
https://cnvs.app/cnvs-whiteboard/SKILL.mdhttps://cnvs.app/mcp-listen/SKILL.mdhttps://cnvs.app/mcp-listen/scripts/listen.mjshttps://cnvs.app/mcp-listen/v0.4.0/SHA256SUMS— 固定版本发布(同一前缀下也提供SKILL.md、scripts/listen.mjs)
此仓库是 cnvs.app 源代码中 public/ 的镜像;带版本号的 cnvs.app URL 是规范的安装目标;此 GitHub 仓库则供聚合器爬取公开来源(skills.sh 等)时参考,也方便偏好通过 git clone 获取内容的用户使用。
发现入口
实时
- 官方 MCP Registry:
app.cnvs/whiteboard— 浏览 - cnvs.app
/.well-known/mcp.json— 链接到两个技能 - cnvs.app
/.well-known/mcp/server.json— MCP Registry 条目,包含发布者提供的_meta.skills[] - cnvs.app
/llms.txt— 适合大模型使用的完整参考资料 majiayu000/claude-skill-registry-core— 已列出cnvs-whiteboard(PR #31 于 2026-05-04 合并)。mcp-listen暂不列入;请参阅上方mcp-listen/部分中的Registry status。- Lobehub(Hermes Agent 使用)— 已导入两个技能;已提交 MCP 服务
计划中 / 考虑中
未来扩展分发渠道的备注。目前尚未启动——先记录在这里,避免下次维护时重新摸索整个生态。
majiayu000/claude-skill-registry-core— 现在 PR #40(目录归档和捆绑脚本安全扫描)已合并,可以重新提交mcp-listen,作为单独的 PR。他们的测试断言中甚至硬编码了scripts/listen.mjs,因此流水线已经覆盖了我们的具体情况。daymade/claude-code-skills(供应商内置模式)— Fork 后,直接将cnvs-whiteboard/和mcp-listen/复制到他们的仓库中(他们的目录结构已经包含scripts/、references/和assets/),更新marketplace.json,为两个技能提交一个 PR。文件是直接复制进去的,因此无需担心捆绑文件问题。VoltAgent/awesome-agent-skills(精选列表,20k ⭐)— 添加 Markdown 链接和不超过 10 个词的描述。他们的 CONTRIBUTING 明确排除全新技能(“先让你的技能成熟并积累用户,再提交”);等有了外部使用记录后再考虑。sickn33/antigravity-awesome-skills(36k ⭐)— 手动提交:Fork,添加skills/<name>/SKILL.md,运行npm run validate。他们 README 中的 `` 标题暗示会从上游注册表自动拉取,因此成功收录到majiayu000/claude-skill-registry-core后,可能无需单独提交 PR 就会同步到这里——重复提交前先确认。agentskills/agentskills(17.8k ⭐,agentskills.io 背后的规范组织)— 调查他们是否接受参考实现;mcp-listen可作为 MCPresources/subscribe用法的完整示例,或许适合收录。vercel-labs/agent-skills/vercel-labs/skills— 几乎可以肯定是精选列表,但在排除之前先阅读 CONTRIBUTING。
有意跳过:anthropics/skills(精选列表,不接受社区 PR);星标数低于约 100 ⭐ 的个人收藏;除非出现相关受众,否则不考虑特定语言的列表。
许可证
MIT。参见 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。