mural-mcp-serveur について
mural-mcp-serveurは、Muralのワークスペース、ルーム、テンプレート、ミューラル、ウィジェットをAIアシスタントから読み書きするホスト型MCPサーバーです。クライアントはリモートHTTPで接続し、ブラウザーでOAuth認証を行うため、ローカルへのインストールは不要です。
主な機能
- 01ワークスペースとルームの閲覧
- 02テンプレート検索とミューラル作成
- 03ミューラルの読取と管理
- 04各種ウィジェットの作成と編集
- 05ページネーションと簡潔な応答
活用シーン
- 01テンプレートからMuralを作成する
- 02付箋や図形を追加、編集、削除する
- 03ミューラルをエクスポートしてURLを取得する
MCP 対応
このホスト型リモートMCPサーバーは、Streamable HTTPとOAuthでクライアントに接続します。Muralのワークスペース、ルーム、テンプレート、ミューラル、ウィジェットを読み書きするツールを提供します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mural-mcp-serveur.vercel.app/mcpclaude mcp add --transport http florentleveque-mural-mcp-serveur https://mural-mcp-serveur.vercel.app/mcp{"mcpServers":{"florentleveque-mural-mcp-serveur":{"type":"http","url":"https://mural-mcp-serveur.vercel.app/mcp"}}}Cursor で開く{"servers":{"florentleveque-mural-mcp-serveur":{"type":"http","url":"https://mural-mcp-serveur.vercel.app/mcp"}}}VS Code で開く{"mcpServers":{"florentleveque-mural-mcp-serveur":{"type":"http","url":"https://mural-mcp-serveur.vercel.app/mcp"}}}{"mcpServers":{"florentleveque-mural-mcp-serveur":{"serverUrl":"https://mural-mcp-serveur.vercel.app/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Mural MCP Serveur
Mural のビジュアルコラボレーションプラットフォーム向けの、リモート Model Context Protocol(MCP)サーバーです。AI アシスタントが、ユーザーに代わってワークスペース、ルーム、テンプレート、ミューラル、ウィジェットの読み取りや書き込みを行えます。
サーバーはホストされているため、インストールするものはなく、お使いのマシンに秘密情報を保存する必要もありません。MCP クライアントは 1 つの URL に接続し、ブラウザーで Mural にサインインします。
https://mural-mcp-serveur.vercel.app/mcp
機能
- ワークスペースとルーム:ワークスペースとルームを一覧表示します(開いているルームも含みます)。ルームを作成します
- テンプレート:ワークスペースのテンプレートを一覧表示または検索し、テンプレートからミューラルを作成します
- ミューラル:ミューラルを作成(空白またはテンプレートから)、読み取り、更新、アーカイブ、削除、複製、エクスポートし、エクスポートのダウンロード URL を取得します
- ウィジェット:付箋、図形、矢印、テキストボックス、タイトル、エリアを読み取り、作成、更新します。ウィジェットを削除します
- ページネーション:一覧表示ツールは API のカーソルに従い、すべての項目を返します
- 簡潔な応答:読み取りツールはコンテキストを節約するため、各オブジェクトの内容を絞り込んで返します。完全な生データを取得するには
verbose: trueを指定します - OAuth サインイン:サーバー自体が認可サーバーであり、クライアント登録(CIMD と DCR)および PKCE に対応しています。その背後で Mural が ID プロバイダーとして機能します
MCP クライアントを接続する
Streamable HTTP 経由のリモートサーバーと OAuth に対応する MCP クライアントであれば、どれでも接続できます。サーバー URL を指定すると、クライアント自身が登録され、ブラウザーでサインインページが開きます。
初回接続の前に、このサーバーの Mural アプリを Mural ワークスペースで有効にする必要があります。Mural へのアクセスを参照してください。
Claude Code
claude mcp add --transport http --scope user mural https://mural-mcp-serveur.vercel.app/mcp
その後、Claude Code で /mcp を実行し、mural を選択してサインインします。
Claude(ウェブ版とデスクトップ版)およびその他のクライアント
カスタムコネクター(またはリモート MCP サーバー)を追加し、URL として
https://mural-mcp-serveur.vercel.app/mcp を貼り付けます。クライアント ID やシークレットは必要ありません。クライアント自身が登録されます。
サインイン時の動作
- ブラウザーでこのサーバーのサインインページが開き、Mural にリダイレクトされます。
- Mural にサインインし、ツールに必要なスコープを承認します。
- クライアントが claude.ai または ChatGPT でない場合、このサーバーはどのアプリケーションにアクセスを許可するか確認します。回答は 90 日間記憶されます。
- クライアントがトークンを受け取り、ツールが表示されます。
クライアントのアクセストークンの有効期間は 10 分で、サイレントに更新されます。Mural が接続を受け入れている限り、接続はサインインから最大 90 日間有効です。その後、クライアントから再度サインインを求められます。clear-auth ツールを使うと接続からサインアウトします。
1.x からのアップグレード
バージョン 1.x は、お使いのマシン上で実行されていました(npx -y @florentleveque/mural-mcp-serveur)。その際には、ご自身の Mural OAuth アプリが必要でした。この npm パッケージは非推奨です。2.0 以降、サーバーはホスト版のみとなります。
- クライアントから古いエントリーを削除します。Claude Code の場合は、付けた名前を指定して
claude mcp remove muralを実行します(複数のスコープに存在する場合は-s local、-s user、または-s projectを追加します)。 - 上記の手順に従ってホスト版サーバーに接続します。
- 1.x で Mural トークンを保存していた
~/.mural-mcp-tokens.jsonを削除します。ご自身の Mural アプリのMURAL_CLIENT_IDとMURAL_CLIENT_SECRETは、以降使用されません。
Mural へのアクセス:非公開アプリ
サーバーは、非公開として公開されている 1 つの Mural OAuth アプリを通じて Mural にサインインします。このアプリは Mural の公開アプリディレクトリには掲載されておらず、掲載ページへのリンクを持つ人だけが表示できます。
掲載ページへのリンク: https://app.mural.co/me/integrations/listing/6ff63b23-e411-4e9a-a4c1-97f68f758474
Mural ワークスペースでサーバーを展開するには:
- ワークスペース管理者が Mural にサインインした状態で掲載ページへのリンクを開き、Enable in admin dashboardを選択します。Mural によって、その管理者のワークスペースでアプリが有効になり、アプリが有効なアプリの下に表示される、ワークスペース設定のアプリが開きます(単一のワークスペースの管理者でテスト済み)。
- 各メンバーが各自の MCP クライアントを接続し(MCP クライアントを接続するを参照)、各自の Mural アカウントでサインインします。
ワークスペース管理者ではありませんか?掲載ページへのリンクをワークスペースの管理者に送り、アプリを有効にしてもらってください。
Mural の説明によると、リンクを持つ管理者は、選択したワークスペースでアプリを有効にできます。ただし、アプリが有効になっていないワークスペースでメンバーが何をできるかについては説明されていません。その場合、サインインまたは API 呼び出しが失敗するかどうかは確認されていません。いずれの場合も、アプリの所有者は、自身が所属するすべてのワークスペースにアクセスできます。
利用可能なツール
認証とユーティリティ
test-connection:Mural API への接続をテストし、認証を確認しますclear-auth:この接続からサインアウトします(トークンと、それらのトークンの背後にある Mural トークンを失効させます。クライアントは再度サインインする必要があります)check-user-scopes:この接続に付与された Mural スコープと、ツールに不足しているスコープを表示しますdebug-api-response:ワークスペース API の生のレスポンスを表示します(トラブルシューティング用)
ワークスペース
list-workspaces:認証済みユーザーがアクセスできるすべてのワークスペースを一覧表示しますget-workspace:特定のワークスペースの詳細情報を取得します
ルーム
list-workspace-rooms:ワークスペースのルームを一覧表示します(openOnlyオプション)list-room-boards:ルーム内の Mural を一覧表示しますcreate-room:ルームを作成します(open/private)
テンプレート
list-workspace-templates:ワークスペースのテンプレート(デフォルトとカスタム)を一覧表示するか、名前で検索しますcreate-mural-from-template:テンプレートからルーム内に Mural を作成します
Mural
list-workspace-boards:ワークスペースの Mural を一覧表示しますget-board:特定の Mural の詳細を取得しますcreate-mural:ルーム内に空の Mural を作成しますupdate-mural:Mural を更新します(タイトル、ステータスactive/archived、サイズ、共有など)delete-mural:Mural を完全に削除します(取り消し不可)duplicate-mural:Mural をルームに複製しますexport-mural:指定した形式で Mural の非同期エクスポートを開始します(exportIdを返します)download-export:エクスポートの署名付きダウンロード URL を取得します(取得時の認証は不要です)。エクスポートの準備ができていない間はready:falseを返すため、準備ができるまで再度呼び出します
ウィジェット
get-mural-widgets:Mural のすべてのウィジェットを取得します(ページネーションあり)get-mural-widget:ID で特定のウィジェットを取得しますcreate-sticky-notes:付箋を作成します(1 回のリクエストにつき最大 1000 個)update-sticky-note:付箋を更新しますcreate-shapes/create-arrows/create-text-boxes/create-titles/create-areas:それぞれに対応するウィジェットを作成しますupdate-widget:種類と ID を指定して任意のウィジェットを更新しますdelete-widget:ID でウィジェットを完全に削除します
書き込みツールには、対応する Mural スコープ(
rooms:write、murals:write、templates:write)が必要です。サインイン時にこれらすべてのスコープが要求されます。
プライバシーとセキュリティ
- Mural のクライアントシークレットはサーバー上のみに保存されます。MCP クライアントが Mural トークンを見ることはありません。クライアントには、このサーバー独自のトークンが暗号化された状態で渡され、
/mcpエンドポイントに紐付けられ、有効期間は 10 分です。 - Mural トークンはサーバー側の Upstash Redis データベースに暗号化して保存されます。このデータベースはフランクフルトにあります。サーバーの関数もフランクフルト(Vercel のリージョン
fra1)で実行されます。 - サーバーは Mural のコンテンツを保存しません。各ツール呼び出しは、お客様自身の Mural トークンを使って Mural API に送信され、応答はクライアントに返されます。
設計とその根拠:
docs/decisions/oauth-authorization-server.md。
トラブルシューティング
- Mural でサインインできない:おそらく、アプリがワークスペースで有効になっていません。Mural へのアクセスを参照してください。
- 「再度サインインしてください」または HTTP 401:接続の有効期限が切れたか、
clear-authでサインアウトしたか、Mural によって取り消されています。クライアント(Claude Code では/mcp)から再接続してください。 - 書き込み時に HTTP 403 が発生する:
check-user-scopesで付与されたスコープを確認してください。また、Mural の無料プランでは作成できるものにも制限があります(例:ワークスペースごとに 3 つのミューラル、オープンルームのみ)。制限に該当する場合は、エラーメッセージに表示されます。
セルフホストと開発
- 独自のインスタンスを Vercel にデプロイする:
docs/http-deployment.md。 - プレビュー環境でブランチを試す:
docs/live-testing.md。 - コントリビュートする:CONTRIBUTING.md。
着想元
このプロジェクトは cogell/mural-mcp に着想を得ています。
ライセンス
MIT License。詳しくは LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。