cnvs.app について
cnvs.appは、人とAIエージェントがリアルタイムで共同作業できる共有ホワイトボードです。図の作成や編集、更新の確認に使え、ホスト型MCPサーバーはボード操作と購読可能な状態を提供します。
主な機能
- 01ボードの作成と確認
- 02テキスト、リンク、画像、線の編集
- 03カンバンボードとタスクの作成
- 04ボードプレビューの描画
- 05ボードのライブ更新を購読
活用シーン
- 01共有キャンバスでのブレインストーミング
- 02タスクリストをカンバンに変換
- 03ボードを確認してレイアウトを要約
MCP 対応
https://cnvs.app/mcp のホスト型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 の HTTP ヘッダーに `X-Board-Key` を設定するのと同等です。ロックされていないボードでは省略します。POST /api/boards/<id>/lock で取得します。 |
詳細
cnvs-whiteboard-skills
cnvs.app 向けのエージェントスキルと MCP サーバーの検出機能です。無料で、登録不要のリアルタイム共同ホワイトボードです。ホスト型 MCP サーバーまたは REST フォールバックを通じて、あらゆる AI エージェントが共有キャンバスの読み取り、書き込み、描画、図の作成、および人間によるライブ編集の購読を行えます。
Claude Code、Claude Desktop、Cursor、OpenCode / OpenAI Codex、Aider(MCP プラグイン使用時)、その他の MCP 対応クライアント、Hermes ファミリーのエージェントで利用できます。
MCP Server
エンドポイント:https://cnvs.app/mcp(Streamable HTTP、プロトコル 2025-06-18、認証不要。ボード ID がアクセスキーです)。
公式 MCP Registry に app.cnvs/whiteboard として登録されています。
機能
- ツール(25 個):ボードの作成と確認、ビジュアルプレビュー、テキスト・リンク・画像・ストロークの編集、移動と削除、ライブ更新の待機、およびカンバンの列・レーン・タスク・クエリ・エクスポートの一連のワークフローに対応しています。正確な本番環境の一覧は
/.well-known/mcp.jsonで公開されています。状態を変更する操作には、MCP に対応していないランタイム向けにhttps://cnvs.app/api/boards/<id>/…配下の REST ミラーも用意されています。 - リソース(3 個):
cnvs://board/{id}/state.json(完全なスナップショット)、cnvs://board/{id}/preview.svg(ビジュアル表示)、cnvs://board/{id}/tasks.json(カンバンの状態)。いずれも購読できます。 - サブスクリプション:
resources/subscribeに対応しており、アクティビティが落ち着いてから約 3 秒後に、SSE 経由でnotifications/resources/updatedがプッシュされます。 - ライブの機械可読マニフェスト:
/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 クライアント
1 行の設定です。クライアントの 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 ボードを開いてプレビューを確認し、レイアウトを要約してください。
- このリストを、優先度と担当者を設定した共有カンバンボードに変換してください。
含まれるスキル
このリポジトリには、agentskills.io のオープン標準に基づいて公開された、関連する 2 つのエージェントスキルがあり、互換性のあるあらゆるランタイムで動作します。どちらも任意で、ユーザーがインストールします(エージェントは提案のみを行い、独自にインストールしてはいけません)。~/.claude/skills/ にインストールすると、MCP サーバーを効果的に使う方法(JSON を取得する前にプレビューする、書き込みには MCP より REST を使う、作成者タグの規約、サブスクリプション後に応答するループ)をエージェントに教えます。
cnvs-whiteboard/ — PRIMARY
cnvs.app のボードでリアルタイムに協働する方法を AI エージェントに教えます。
- 共有キャンバスの状態を読み取る
- テキスト、リンク、付箋、線、画像、Mermaid 図(フローチャート、シーケンス図/クラス図/ER 図、マインドマップ、ガントチャート、コンセプトマップ)を追加、更新、移動、削除して、描画/図表化/フローチャート作成/注釈付けを行う
- ボードに描画が含まれている場合は、SVG プレビューをレンダリングする
- MCP 経由で人間による編集をサブスクライブし、REST 経由で応答する
cnvs.app のボードへの参照(URL https://cnvs.app/#<id>、cnvs://board/<id>/...、またはボード ID のみ)、あるいは「共有ホワイトボードやキャンバスで協働する/描画する/図表化する/注釈を付ける/変更を見守る」といった表現があると有効になります。
mcp-listen/ — HELPER (v0.4.0)
capabilities.resources.subscribe: true を備えた Streamable-HTTP MCP サーバー向けの、モデルへのプッシュ通知ポンプです。セッションを開き、呼び出し元から渡されたリソース URI をサブスクライブして、notifications/resources/updated イベントごとに 1 行の JSON を stdout に出力します。Claude Code の Monitor ツールでラップすることを想定しており、サーバーからのプッシュ通知をすべてチャット内通知に変換します(ポーリングやログの tail は不要です)。
v0.4 以降、依存関係はありません。 Node.js 18+ の組み込み機能のみを使用する単一の scripts/listen.mjs で構成されています。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 と少なくとも 1 つのリソース 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 を参照してください。それまでは、下記のとおり cnvs.app から curl でインストールするか、このリポジトリを 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/ ディレクトリには、Claude Code が想定する構成に合わせて、cnvs-whiteboard/ と mcp-listen/ 内のファイルを指すシンボリックリンクが含まれています。
仕様への準拠
どちらのスキルもagentskills.io の仕様に準拠しています。
nameは格納先ディレクトリ名と一致していますdescriptionは1024文字未満で、命令形の表現を使い、明示的なトリガーキーワードを含んでいます- バンドルされたコード用に
scripts/サブディレクトリを用意しています(mcp-listen) license: MITとcompatibilityフィールドを宣言し、各スキルの「関連スキル」セクションで相互参照して、アクティベーションの重複を防いでいます
スキルが2つある理由
以前のバージョンには単一のページ(cnvs.app の /skill-cnvs.md。現在はレガシーリダイレクト)しかありませんでした。これを2つのまとまりのある単位に分割することで、仕様のベストプラクティスである「まとまりのある単位を設計する」に従っています。
cnvs-whiteboardは cnvs.app 固有のワークフロー(読み取り/書き込み/レンダリング/注意点)を担当します。mcp-listenは汎用的なモデルへのプッシュパターンを担当します(あらゆる MCP サーバーで使用可能です)。
相互参照によって、これらのスキルを適切に連携させています。cnvs-whiteboard は委任するプッシュチャネルとして mcp-listen に言及し、mcp-listen は cnvs 固有の作業に対応する関連スキルとして cnvs-whiteboard に言及しています。実際の運用でアクティベーションが重複することはありません。
正式なソース
スキルは、次の場所でもライブ配信されています。
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— 2つのスキルへのリンク - cnvs.app
/.well-known/mcp/server.json— 発行元が提供する_meta.skills[]を含む MCP Registry エントリー - cnvs.app
/llms.txt— LLM 向けの完全なリファレンス majiayu000/claude-skill-registry-core—cnvs-whiteboardを掲載(PR #31 は2026-05-04にマージ済み)。mcp-listenは意図的に保留中です。上記のmcp-listen/セクションにある Registry status を参照してください。- Lobehub(Hermes エージェントで使用)— 2つのスキルをインポート済み。MCP サーバーは申請済み
予定/検討中
配布先を今後拡大するためのメモです。まだ実施していません。次回のメンテナンス期間に、配布先を改めて調べなくて済むよう、ここに記載しています。
majiayu000/claude-skill-registry-core— PR #40(ディレクトリのアーカイブと、同梱スクリプトのセキュリティスキャン)がマージされたため、mcp-listenを別の PR として再度提出します。scripts/listen.mjsはテストのアサーションにもハードコードされており、パイプラインですでに当プロジェクトのケースがそのままテストされています。daymade/claude-code-skills(ベンダー取り込み方式) — フォークし、cnvs-whiteboard/とmcp-listen/を直接リポジトリにコピーします(このリポジトリの構成はすでにscripts//references//assets/に対応しています)。marketplace.jsonを更新し、両方のスキルをまとめて 1 件の PR として提出します。ファイルをコピーするため、ファイル同梱に関する懸念はありません。VoltAgent/awesome-agent-skills(厳選された awesome リスト、20k ⭐) — Markdown リンクと、10 語以下の説明を追加します。CONTRIBUTING では、新しいスキルは明確に対象外とされています(「スキルが成熟し、ユーザーを獲得してから提出してください」)。外部での利用実績を記録できるようになってから、改めて検討します。sickn33/antigravity-awesome-skills(36k ⭐) — 手動で追加します。フォークし、skills/<name>/SKILL.mdを追加して、npm run validateを実行します。README の `` ヘッダーは、上流レジストリから自動的に取り込むことを示唆しているため、majiayu000/claude-skill-registry-coreへの登録が成功すれば、別の PR を出さなくてもこちらに反映される可能性があります。二重に提出する前に確認してください。agentskills/agentskills(17.8k ⭐、agentskills.io を支える仕様策定組織) — リファレンス実装を受け入れているか調べます。MCP のresources/subscribeの利用例として、mcp-listenが適している可能性があります。vercel-labs/agent-skills/vercel-labs/skills— おそらく厳選型ですが、対象外と判断する前に CONTRIBUTING を確認します。
意図的に対象外としたもの:anthropics/skills(厳選型で、コミュニティからの PR は受け付けていません)、⭐ 100 未満の個人コレクション、該当する利用者層が見つかるまでは言語別のリスト。
ライセンス
MIT。詳細は LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。