Claude Media
ClaudeからMuleSoft Platform MCPサーバーを使う — Connected Appと権限の設定

ClaudeからMuleSoft Platform MCPサーバーを使う — Connected Appと権限の設定

MuleSoft Platform MCP Serverは、APIやエージェント、MCPサーバー、LLMをまとめて検索・統制・監視できるリモートMCPサーバーです。Claudeへの接続手順と、権限スコープごとに見える範囲をまとめます。

MuleSoft Platform MCP Serverは、Anypoint Platform上のAPI・エージェント・MCPサーバー・LLMを、MCP対応クライアントから検索・統制・監視するためのリモートMCPサーバーです。Claude Desktopでは「Connectors」から、Claude Codeではclaude mcp addで接続できます。

つまずきやすい点は1つに絞れます。このサーバーは動的クライアント登録(DCR)に対応しておらず、Anypoint Platformで作るConnected Appのクライアント情報を手動で渡す必要があります。以下では、その作成から接続、権限、エージェント統制の見え方までを順に追います。

MuleSoft Platform MCP Serverは何をするサーバーか

MuleSoft Platform MCP Serverは、組織内のサービスを「発見・統制・監視」するための入口です。ドキュメントは、サービスのスキャン、4種類の資産の一元的な発見、PII検出・セマンティックルーティング・トークン制御といったポリシーの適用、トラフィックとコストの監視を主な用途に挙げています。

4種類の資産とは、API、エージェント、MCPサーバー、LLMです。Claudeに「組織のエージェント台帳を読ませる」用途に向きます。

名前の似た製品に、MuleSoft DX MCP Serverがあります。こちらはIDEから、API仕様の作成、アプリの作成と設定、Exchangeへの公開、CloudHub 2.0やRuntime Fabricへのデプロイといった開発ライフサイクルを扱うサーバーです。2026年5月28日にPlatform版が登場した際、従来の「MuleSoft MCP Server」がDX版に改称されました。ツール名は変わっていません。本記事が扱うのは、組織の資産を横断して見るPlatform版です。

接続の前提 — 手動クライアント登録のみ

MuleSoftのリモートMCPサーバーは、アプリ作成による手動クライアント登録だけに対応しています。DCRなどほかの登録方式は使えません。

クライアント側の条件は2つです。

  • Streamable HTTPトランスポートに対応していること
  • OAuthの認可フローを扱えること

エンドポイントは、所属するコントロールプレーンごとに異なります。接続パスは/mcp(Streamable HTTP)で、繋がらない古いクライアントのために/mcp/sse(Server-Sent Events)も用意されています。

コントロールプレーンベースURL
US CloudベースURLhttps://us1.omni.mulesoft.com(https://omni.mulesoft.comは別名)
EU CloudベースURLhttps://eu1.omni.mulesoft.com
Canada CloudベースURLhttps://ca1.omni.mulesoft.com
Japan CloudベースURLhttps://jp1.omni.mulesoft.com
India CloudベースURLhttps://in1.omni.mulesoft.com
Australia CloudベースURLhttps://au1.omni.mulesoft.com

日本のリージョンの組織は、https://jp1.omni.mulesoft.com/mcpが接続先です。以降のコマンド例は、ドキュメントの記載に合わせてomni.mulesoft.comとしています。自分の組織が別リージョンなら、この部分を置き換えてください。

Connected Appを作る

最初にAnypoint Platformで、ユーザーの代理として動くConnected Appを作ります。作成後にクライアントIDとクライアントシークレットを控えます。この2つを後でClaude側に渡すためです。

手順

Connected Appの作成

  1. 1

    ユーザー代理のアプリを作る

    Anypoint Platformで、ユーザーに代わって動作するConnected Appを作成します。

  2. 2

    グラントタイプを選ぶ

    「Authorization Code」と「Refresh Token」の両方を選びます。

  3. 3

    スコープを足す

    「Add Scopes」でfull(Full Access)とoffline_access(Background Access)を追加します。MCPサーバーの利用に必要なスコープです。

  4. 4

    リダイレクトURIを入れる

    使うクライアントのリダイレクトURLを入れます。値はクライアントごとに違うので、次節の表を参照します。

  5. 5

    IDとシークレットを控える

    クライアントIDとクライアントシークレットをコピーします。

スコープfullとoffline_accessは、どのクライアントでも必須です。一方、リダイレクトURLだけはクライアントごとに値が変わります。

ClaudeとClaude Codeに接続する

Claude Desktopの場合

Claude Desktopでは、画面操作だけで追加できます。「Customize」から「Connectors」を開き、追加(+)アイコンの「Browse Connectors」で「MuleSoft」を検索して追加します。続けて、Connected Appで控えたクライアントIDとクライアントシークレットを入力します。

Connected App側の「Redirect URLs」には、https://claude.ai/api/mcp/auth_callbackを入れて「Continue」で反映します。

Claude Codeの場合

Claude Codeでは、固定のコールバックポートを指定してサーバーを追加します。

MCP_CLIENT_SECRET=<クライアントシークレット> claude mcp add \
    --transport http \
    --callback-port 32493 \
    --client-id <クライアントID> \
    --client-secret \
    mulesoft-platform https://omni.mulesoft.com/mcp

32493は例で、空いている任意のポートに替えられます。Connected Appの「Redirect URLs」には、同じポート番号でhttp://localhost:32493/callbackを登録します。

ポートを固定する理由は、Claude Codeの既定の挙動にあります。何も指定しないと認証のたびにランダムなポートが選ばれ、Connected Appが要求するURLの完全一致に失敗します。

Claude Code側の仕様も合わせて確認しておきます。--client-secretだけを渡すとシークレットはマスク入力で聞かれ、環境変数MCP_CLIENT_SECRETを前置すると入力を省けます。シークレットを設定できるのは、サーバーを追加する時点だけです。後から変える場合は、claude mcp remove <名前>で消してから--client-secret付きで追加し直します。

登録できたかは、セッション内で/mcpを実行して確かめます。サーバーが一覧に出て、認証が済んでいれば接続できています。

クライアントごとのリダイレクトURL

Connected Appに登録するURLは、クライアントで次のように異なります。

クライアント登録するリダイレクトURL
Claude Desktop登録するリダイレクトURLhttps://claude.ai/api/mcp/auth_callback
Claude Code登録するリダイレクトURLhttp://localhost:<ポート>/callback
Cursor・Windsurf・VS Code登録するリダイレクトURLhttp://localhost:<ポート>/oauth/callback
ChatGPT登録するリダイレクトURL設定画面でコピーしたCallback URL

Cursor・Windsurf・VS Codeは、mcp-remote経由の設定です。Claude Codeだけ末尾が/callbackになる点に注意してください。複数のクライアントを同じConnected Appで使うなら、それぞれのURLを並べて登録します。

権限スコープ — Claudeに見せる範囲を決める

MuleSoftのドキュメントでは、ツールごとに必要な権限が一覧になっています。Connected Appに必須のfullとoffline_accessとは別に、ツールによって追加の権限が要ります。領域ごとの区分は次のとおりです。

領域閲覧の権限変更の権限変更系ツールの例
Exchange閲覧の権限Exchange Viewer(read:exchange)変更の権限Exchange Contributor(edit:exchange)変更系ツールの例provision_mcp_server、update_mcp_server
API Manager閲覧の権限Environment Viewer(read:api_configuration、read:api_policies)変更の権限Environment Admin(manage:apis)変更系ツールの例apply_policy_to_instance、create_automated_policy_strategy
Governance閲覧の権限Governance Viewer(view:ang_governance_profiles)変更の権限Governance Administrator(admin:ang_governance_profiles)変更系ツールの例create_guardrail、delete_governance_strategy
Anypoint Monitoring閲覧の権限Monitoring Viewer(view:monitoring)変更の権限変更系なし変更系ツールの例—
Runtime Manager閲覧の権限—変更の権限Manage Application Data(manage:application_data)変更系ツールの例create_omni_gateway、create_scanner

Monitoringは閲覧専用です。Runtime Managerの表には、ゲートウェイやスキャナーを作るツールが並びます。

Claudeに任せる範囲は、権限の側だけでなく、Claude Code側の許可設定でも絞れます。変更を伴うツールを毎回の確認対象にする例を挙げます。

{
  "permissions": {
    "ask": [
      "mcp__mulesoft-platform__apply_policy_to_instance",
      "mcp__mulesoft-platform__create_guardrail",
      "mcp__mulesoft-platform__provision_mcp_server",
      "mcp__mulesoft-platform__update_mcp_server"
    ],
    "deny": [
      "mcp__mulesoft-platform__delete_governance_strategy",
      "mcp__mulesoft-platform__delete_automated_policy_strategy"
    ]
  }
}

ルール名はmcp__<サーバー名>__<ツール名>の形で、サーバー名はclaude mcp addで付けたmulesoft-platformです。閲覧系のツールだけを許可し、変更系は都度確認に回す運用になります。

エージェント群のガバナンスで何が見えるか

Platform MCP Serverのうち、エージェントの統制に効くのは次のツール群です。

知りたいことツール必要な権限
登録されたエージェントの一覧ツールlist_agents、view_agent_details必要な権限Exchange Viewer
組織が使うLLMとMCPサーバーツールlist_llms、list_mcp_servers必要な権限Exchange Viewer
資産の依存関係(Beta)ツールget_asset_lineage必要な権限Exchange Viewer
ガバナンスレポートツールview_governance_report、fetch_governance_services必要な権限Governance Viewer
利用状況の監視ツールfetch_monitoring_overview、show_observability_performance必要な権限Monitoring Viewer
コストとモデルごとの予算ツールfetch_cost_overview、fetch_model_wallets必要な権限Cost Managementの各権限

list_agentsは、名前やプロバイダーで絞り込める一覧です。リファレンスの応答例では、各エージェントがアセットID・名前・バージョン・プロバイダー・説明を持ち、全体の件数も返ります。これは例示された応答で、手元の組織で返る内容とは異なります。

get_asset_lineageは2026年8月31日に加わったBetaのツールです。エージェント、MCPサーバー、APIについて、設計時と実行時の関係をContext Catalogから引けます。同じ日に、LLMごとの予算枠を扱うモデルウォレット(create_model_walletなど)と、シークレット管理のツール群も追加されました。

ドキュメントの例示プロンプトは、そのままClaudeに投げられる形です。

  • Show me all payment-related APIs across my organization.
  • Create a governance strategy that applies a PII detection policy to all customer-facing agents.
  • Which LLMs consumed the most requests last week?

1つ目は検索、2つ目は統制、3つ目は監視の例です。2つ目だけは組織に変更を加えるため、先ほどのask設定と組み合わせると、実行前に内容を確認できます。

ポリシー適用の流れ

ポリシーの適用は、ドキュメントでは「Stripe APIにレート制限を付ける」例で説明されています。Claudeは次の順にツールを呼びます。

手順

ポリシー適用でClaudeが呼ぶツール

  1. 1

    候補を取る

    prepare_policy_creationが、対象のAPIインスタンスに適用できるポリシーを返します。

  2. 2

    設定項目を出す

    ユーザーがポリシーを選ぶと、get_policy_template_formが設定項目を提示します。

  3. 3

    適用する

    設定を指定すると、apply_policy_to_instanceが即座にポリシーを適用します。

最後の適用に確認の段が組み込まれているわけではありません。適用前の確認が欲しいなら、Claude Codeのaskルールが実質的な関門になります。

つまずいたときの切り分け

認証の失敗は、原因が3つに絞れます。

切り分け

接続できないときの確認順

  1. QリダイレクトURLは、Connected Appの登録値と完全一致していますか?
    答えがいいえ

    クライアントごとの表に沿って登録し直します。Claude Codeは固定ポートを指定していないと、毎回別のポートになります。

    答えがはい
  2. Qスコープに`full`と`offline_access`が入っていますか?
    答えがいいえ

    2つとも追加します。権限まわりのエラーは、この2つの不足で出ます。

    答えがはい
  3. QクライアントはStreamable HTTPとOAuthに対応していますか?
    答えがいいえ

    接続先を/mcp/sseに替えるか、対応しているクライアントを使います。

    答えがはい

それでも認可エラーが続くとき

Anypoint Platformからログアウトして入り直します。

Claude Codeのバージョンにも注意が要ります。Claude Codeの公式ドキュメントによると、v2.1.229はコールバックにhttp://127.0.0.1:PORT/callbackを使ったため、登録済みURLと完全一致を求めるサーバーで、リダイレクトURIの不一致で失敗しました。v2.1.231でlocalhostの形に戻っています。MuleSoftのConnected Appはlocalhostで登録する手順なので、v2.1.229を使っているなら、Claude Codeを更新するか、127.0.0.1の形も一時的に登録します。

ツール名から機能を決めつけない

ツール名と説明が食い違って見える例が、リファレンスにあります。check_policy_conformanceの説明は「選択したポリシー適用ペイロードをJSON-LDに変換し、バックエンドのログに出力する」で、名前から想像する適合性の検査とは読み取れません。同じページの応答例にはconformantやviolationsの項目が並んでいますが、説明文と応答例の関係はリファレンスに書かれていません。

統制の自動化にこのツールを使うなら、組織の環境で実際の応答を確かめてからにするのが安全です。名前だけで「違反を検出してくれる」と決めると、期待した結果が返らない可能性があります。

MCPサーバーの追加と許可設定の基本は、Claude CodeのMCPサーバー設定にまとまっています。ホスト型の別サービスとの違いを見るなら、認証不要で読み取り専用のTwilio MCPサーバーや、Redis Cloud MCPサーバーと並べると、接続の重さが比べられます。

まとめ

接続の手間は、Connected Appの作成とクライアントごとのリダイレクトURLの登録に集中します。Claudeに渡す前に、fullとoffline_accessのスコープ、固定ポート、地域のエンドポイントの3点を揃えておけば、認証で止まる原因はかなり絞れます。

そのうえで、運用の重心は権限の切り分けです。閲覧中心なら、Viewer系の権限とask・denyルールを組み合わせます。ポリシー適用やMCPサーバーのプロビジョニングまで任せる場合は、Claude側の許可設定を関門として残すのが現実的です。エージェント台帳の確認から始め、問題がなければ統制へ範囲を広げる順序が扱いやすいでしょう。

この記事を共有:XはてブLinkedIn