Cloudinary

公式

Cloudinaryのメディア管理プラットフォームと自然言語でやり取りできます。

Cloudinary MCPで何ができますか?

  • メディアアセットのアップロードと管理 — アシスタントに画像、動画、または生ファイルをアップロードさせ、Asset Management サーバーを介してフォルダー、タグ、リレーションシップで整理します。
  • アセットの変換と生成 — 画像や動画のその場での変換をリクエストしたり、選択したメディアのアーカイブやダウンロードリンクを生成します。
  • 環境設定の構成 — Environment Config サーバーを使用して、アップロードプリセット、変換のデフォルト、ストリーミングプロファイル、Webhook 通知を設定します。
  • 構造化メタデータフィールドの作成 — 条件付きルールと検証を備えたカスタムメタデータフィールドを定義し、アセットの検索可能性と整理を向上させます。
  • AI を活用したコンテンツ分析の実行 — Analysis サーバーを活用して、自動タグ付け、モデレーション、キャプション生成、オブジェクト検出、画像品質評価を行います。
  • ワークフロー自動化の構築 — MediaFlows を使用して、自然言語によるローコード自動化パイプラインを条件付きロジックや承認ワークフローを含めて作成・管理します。

ホスト型 MCP サーバー

npx add-mcp 'https://asset-management.mcp.cloudinary.com/mcp'

Claude Code、Codex、Cursor などにインストールできます

ドキュメント

Cloudinary MCP サーバー

Model Context Protocol(MCP)は、大規模言語モデル(LLM)と外部システム間のコンテキストを管理するための、新しく標準化されたプロトコルです。このリポジトリは、Cloudinary のメディア管理プラットフォーム向けの包括的な MCP サーバーを提供し、Cursor や Claude などの AI アプリケーションから自然言語でメディアアセットのアップロード、変換、分析、整理を直接行えるようにします。

これらの MCP サーバーを使用すると、会話型 AI を通じてメディアワークフロー全体をシームレスに管理できます。画像や動画のアップロードと変換から、自動処理パイプラインの設定、AI 搭載ツールによるコンテンツ分析、構造化メタデータによるアセット整理まで対応します。メディアリッチなアプリケーションの構築、大規模なアセットライブラリの管理、コンテンツワークフローの自動化など、これらのサーバーは Cloudinary のメディア最適化および管理機能一式への直接アクセスを提供します。

Cloudinary では、以下の MCP サーバーを利用できます。

サーバー名説明リモート MCP サーバー
アセット管理高度な検索および整理機能を使用してメディアアセットをアップロード、管理、変換しますasset-management
環境設定Cloudinary の環境設定、アップロードプリセット、変換を構成および管理しますenvironment-config
構造化メタデータアセットの整理と検索性を高めるための構造化メタデータフィールドを作成、管理、クエリしますstructured-metadata
分析メディアアセット向けの AI 搭載コンテンツ分析、モデレーション、自動タグ付け機能を活用しますanalysis
MediaFlowsAI 搭載アシスタンスを使用して、画像と動画向けのローコードワークフロー自動化を構築および管理しますmediaflows

目次

ドキュメント

Cloudinary の MCP サーバーの使用に関する詳細なガイド、チュートリアル、包括的なドキュメントについては、以下を参照してください。

インストール

リモート MCP サーバー(推奨)

リモート MCP サーバーは Cloudinary がホストし、すぐに使用できます。ローカルへのインストールは不要です。

ローカル MCP サーバー

ローカル MCP サーバーは、npm パッケージを使用してマシン上で実行されます。より詳細な制御やカスタマイズが必要な場合は、このオプションを選択してください。

注: インストール後、環境変数(CLOUDINARY_CLOUD_NAME、CLOUDINARY_API_KEY、CLOUDINARY_API_SECRET)を実際の認証情報で設定する必要があります。

Docker イメージ

Cloudinary MCP サーバーの公式 Docker イメージは Docker Hub で入手でき、ローカルまたはクラウド環境で MCP サーバーを実行するためのコンテナ化されたデプロイオプションを提供します。

Docker Hub で入手可能: Cloudinary MCP Docker イメージ

Docker イメージにはいくつかの利点があります。

  • 分離された環境 - システムの依存関係に影響を与えずに、コンテナ内で MCP サーバーを実行できます
  • 簡単なデプロイ - 最小限の設定で迅速にセットアップできます
  • 一貫したランタイム - 異なるマシンやプラットフォーム間で同じ環境を保証します
  • スケーラビリティ - 複数のインスタンスを簡単にデプロイしたり、コンテナオーケストレーションシステムに統合したりできます

Docker イメージを使用するには、システムに Docker がインストールされていることを確認し、コンテナの実行時に Cloudinary の認証情報を環境変数として渡してください。具体的な使用手順については、Docker Hub の各 Docker イメージのドキュメントを参照してください。

設定例

リモート MCP サーバー設定

リモートサーバーは Cloudinary がホストし、URL 経由でアクセスします。

{
  "mcpServers": {
    "cloudinary-asset-mgmt-remote": {
      "url": "https://asset-management.mcp.cloudinary.com/mcp"
    },
    "cloudinary-env-config-remote": {
      "url": "https://environment-config.mcp.cloudinary.com/mcp"
    },
    "cloudinary-smd-remote": {
      "url": "https://structured-metadata.mcp.cloudinary.com/mcp"
    },
    "cloudinary-analysis-remote": {
      "url": "https://analysis.mcp.cloudinary.com/sse"
    },
    "mediaflows": {
      "url": "https://mediaflows.mcp.cloudinary.com/v2/mcp"
    }
  }
}

トランスポート: リモートサーバーは、/mcp(Streamable HTTP、推奨、ステートレス)と /sse(SSE、非推奨、後方互換性のために維持)の 2 つのエンドポイントをサポートしています。/sse エンドポイントは、/mcp のエイリアスとして POST リクエストも受け付けるため、/sse に Streamable HTTP を送信するクライアントは動作します。新しい設定には /mcp を使用してください。

認証付きリモート MCP サーバー

Cloudinary がホストするリモート MCP サーバーは、デフォルトで認証に OAuth2 を使用します。ヘッダーを介した API キーを使用した認証も可能です。

CLOUDINARY_URL の使用(最も簡単)

{
  "mcpServers": {
    "cloudinary-asset-mgmt-remote": {
      "url": "https://asset-management.mcp.cloudinary.com/mcp",
      "headers": {
        "cloudinary-url": "cloudinary://api_key:api_secret@cloud_name"
      }
    }
  }
}

個別ヘッダーの使用

{
  "mcpServers": {
    "cloudinary-env-config-remote": {
      "url": "https://environment-config.mcp.cloudinary.com/mcp",
      "headers": {
        "cloudinary-cloud-name": "your_cloud_name",
        "cloudinary-api-key": "your_api_key",
        "cloudinary-api-secret": "your_api_secret"
      }
    }
  }
}

カスタム設定を使用する場合

{
  "mcpServers": {
    "cloudinary-smd-remote": {
      "url": "https://structured-metadata.mcp.cloudinary.com/mcp",
      "headers": {
        "cloudinary-url": "cloudinary://api_key:api_secret@cloud_name",
        "cloudinary-region": "api-eu",
        "cloudinary-tools": "list-metadata-fields,get-metadata-field,create-metadata-field"
      }
    }
  }
}

デバッグヘッダーを使用する場合

ツールの結果に API レート制限ヘッダーとリクエスト ID を表示するには、ヘッダー埋め込みを有効にします。

{
  "mcpServers": {
    "cloudinary-asset-mgmt-remote": {
      "url": "https://asset-management.mcp.cloudinary.com/mcp",
      "headers": {
        "cloudinary-url": "cloudinary://api_key:api_secret@cloud_name",
        "cloudinary-embed-headers": "true"
      }
    }
  }
}

各ツールの結果には、レート制限とリクエストトレース情報を含む _headers フィールドが含まれます。

{
  "_headers": {
    "x-featureratelimit-limit": "10000",
    "x-featureratelimit-remaining": "9998",
    "x-featureratelimit-reset": "Thu, 13 Feb 2026 00:00:00 GMT",
    "x-request-id": "bfeaccc60050594832508590a358a1a4"
  }
}

ローカル MCP サーバー設定

ローカルサーバーは、npm パッケージを使用してマシン上で実行されます。

オプション 1: CLOUDINARY_URL 環境変数の使用(推奨)

{
  "mcpServers": {
    "cloudinary-asset-mgmt": {
      "command": "npx",
      "args": ["-y", "--package", "@cloudinary/asset-management-mcp", "--", "mcp", "start"],
      "env": {
        "CLOUDINARY_URL": "cloudinary://api_key:api_secret@cloud_name"
      }
    },
    "cloudinary-env-config": {
      "command": "npx",
      "args": ["-y", "--package", "@cloudinary/environment-config-mcp", "--", "mcp", "start"],
      "env": {
        "CLOUDINARY_URL": "cloudinary://api_key:api_secret@cloud_name"
      }
    },
    "cloudinary-smd": {
      "command": "npx",
      "args": ["-y", "--package", "@cloudinary/structured-metadata-mcp", "--", "mcp", "start"],
      "env": {
        "CLOUDINARY_URL": "cloudinary://api_key:api_secret@cloud_name"
      }
    },
    "cloudinary-analysis": {
      "command": "npx",
      "args": ["-y", "--package", "@cloudinary/analysis", "--", "mcp", "start"],
      "env": {
        "CLOUDINARY_URL": "cloudinary://api_key:api_secret@cloud_name"
      }
    }
  }
}

オプション 2: 個別の環境変数の使用

{
  "mcpServers": {
    "cloudinary-asset-mgmt": {
      "command": "npx",
      "args": ["-y", "--package", "@cloudinary/asset-management-mcp", "--", "mcp", "start"],
      "env": {
        "CLOUDINARY_CLOUD_NAME": "cloud_name",
        "CLOUDINARY_API_KEY": "api_key",
        "CLOUDINARY_API_SECRET": "api_secret"
      }
    }
  }
}

オプション 3: コマンドライン引数の使用

{
  "mcpServers": {
    "cloudinary-asset-mgmt": {
      "command": "npx",
      "args": [
        "-y", "--package", "@cloudinary/asset-management-mcp",
        "--",
        "mcp", "start",
        "--cloud-name", "cloud_name",
        "--api-key", "api_key",
        "--api-secret", "api_secret"
      ]
    }
  }
}

MediaFlows MCP サーバー設定

MediaFlows の場合は、次の設定を使用します。

{
  "mcpServers": {
    "mediaflows": {
      "url": "https://mediaflows.mcp.cloudinary.com/v2/mcp",
      "headers": {
        "cld-cloud-name": "cloud_name",
        "cld-api-key": "api_key",
        "cld-secret": "api_secret"
      }
    }
  }
}

詳細なローカルサーバー設定

各 npm パッケージは、上記の基本的なセットアップ例に加えて、追加の設定オプションをサポートしています。

SSE サーバーとして実行

stdio の代わりに Server-Sent Events(SSE)トランスポートを使用してローカル MCP サーバーを実行するには、次のようにします。

npx -y --package @cloudinary/asset-management-mcp -- mcp start --transport sse

カスタムポートを指定できます(デフォルトは 2718)。

npx -y --package @cloudinary/asset-management-mcp -- mcp start --transport sse --port 3000

利用可能な設定オプション

任意のパッケージで利用可能なすべての設定オプションを確認するには、次のようにします。

npx -y --package @cloudinary/asset-management-mcp -- mcp start --help

利用可能なフラグの完全なリスト:

USAGE
  mcp start [--transport stdio|sse] [--port value] [--tool value]...
            [--scope admin|builder|librarian] [--api-key value]
            [--api-secret value] [--oauth2 value] [--cloud-name value]
            [--server-url value] [--server-index value]
            [--region api|api-eu|api-ap] [--api-host value]
            [--log-level debug|warning|info|error] [--env value]...

FLAGS
  --transport       The transport to use for communicating with the server
                    [stdio|sse, default = stdio]
  --port            The port to use when the SSE transport is enabled
                    [default = 2718]
  --tool...         Specify tools to mount on the server (repeatable)
  --scope           Mount tools/resources that match given scope
                    [admin|builder|librarian]
  --api-key         Sets the apiKey auth field for the API
  --api-secret      Sets the apiSecret auth field for the API
  --oauth2          Sets the oauth2 auth field for the API
  --cloud-name      Allows setting the cloudName parameter for all operations
  --server-url      Overrides the default server URL used by the SDK
  --server-index    Selects a predefined server used by the SDK
  --region          Sets the region variable for url substitution
                    [api|api-eu|api-ap]
  --api-host        Sets the host variable for url substitution
  --log-level       The log level to use for the server
                    [debug|warning|info|error, default = info]
  --env...          Environment variables made available to the server
  -h, --help        Print help information and exit

デバッグ

詳細なネットワークペイロードのデバッグには、CLOUDINARY_DEBUG 環境変数を使用します。

CLOUDINARY_DEBUG=true npx -y --package @cloudinary/asset-management-mcp -- mcp start

デバッグモードは他のオプションと組み合わせて、包括的なトラブルシューティングを行うことができます。

CLOUDINARY_DEBUG=true npx -y --package @cloudinary/asset-management-mcp -- mcp start --transport sse --log-level debug

注: これらの設定オプションは、すべてのローカル MCP パッケージに適用されます。

  • @cloudinary/asset-management-mcp
  • @cloudinary/environment-config-mcp
  • @cloudinary/structured-metadata-mcp
  • @cloudinary/analysis

認証

ローカルで MCP サーバーを実行する場合、認証はいくつかの方法で設定できます。

オプション 1: 個別の環境変数(推奨)

export CLOUDINARY_CLOUD_NAME="cloud_name"
export CLOUDINARY_API_KEY="api_key"
export CLOUDINARY_API_SECRET="api_secret"

オプション 2: CLOUDINARY_URL 環境変数

export CLOUDINARY_URL="cloudinary://api_key:api_secret@cloud_name"

オプション 3: コマンドライン引数

認証情報を直接引数として渡します(上記の設定例を参照)

Cloudinary の認証情報は、Cloudinary コンソールダッシュボードの「設定 > セキュリティ」で確認できます。

サーバー別機能

アセット管理サーバー

  • メディアアセット(画像、動画、生ファイル)のアップロードと管理
  • 高度なフィルタリング機能によるアセットの検索と整理
  • アセット操作と変換の処理
  • フォルダー、タグ、アセット関係の管理
  • アーカイブとダウンロードリンクの生成

環境設定サーバー

  • アップロードプリセットと変換設定の構成
  • ストリーミングプロファイルとウェブフック通知の管理
  • アップロードマッピングの設定

構造化メタデータサーバー

  • 構造化メタデータフィールドの作成と管理
  • 条件付きメタデータルールと検証の構成
  • メタデータ設定の整理と検索
  • メタデータフィールドの関係と順序の処理

分析サーバー

  • タグ付け、モデレーション、キャプション生成を含む AI 搭載コンテンツ分析
  • 複数の AI モデルによるオブジェクト検出と認識
  • 画質分析と透かし検出
  • コンテンツモデレーションと安全性分析
  • ファッション、テキスト、解剖学の検出機能

MediaFlows サーバー

  • 自然言語を使用したワークフロー自動化の構築と管理
  • 環境内の既存の PowerFlow 自動化のクエリ
  • メタデータ、タグ、アセットプロパティに基づく条件ロジックの作成
  • アセットのモデレーション、承認、通知ワークフローの自動化
  • 既存の自動化設定のデバッグと理解

さらに多くの Cloudinary ツールが必要ですか?

これらの MCP サーバーには、今後もさらに多くの機能を追加していく予定です。フィードバックを送信したい場合、バグを報告したい場合、または機能リクエストを提供したい場合は、このリポジトリに issue を開いてください。

トラブルシューティング

「Claude の応答が中断されました...」

このメッセージが表示された場合、Claude がコンテキスト長の制限に達し、応答の途中で停止した可能性があります。これは、アセット管理サーバーで大量のアセットリストを扱う場合など、多数の連鎖ツール呼び出しをトリガーするサーバーで最も頻繁に発生します。

この問題が発生する可能性を減らすには、次のことを行ってください。

  • 具体的に、クエリを簡潔に保つようにしてください。
  • 1 つのリクエストで複数のツールを呼び出す場合は、応答を短く保つために、いくつかの小さなツール呼び出しに分割してみてください。
  • フィルタリングパラメータを使用して、アセット検索とリストの範囲を制限してください。

認証の問題

Cloudinary の認証情報が正しく設定され、実行しようとしている操作に必要な権限があることを確認してください。

有料機能

一部の機能には、有料の Cloudinary プランが必要な場合があります。使用する予定の機能に対して、Cloudinary アカウントが必要なサブスクリプションレベルを持っていることを確認してください。例:

  • 高度な AI 分析機能
  • 大量の API 使用
  • 高度な変換機能

ライセンス

MIT ライセンスの下でライセンスされています。詳細については、LICENSE ファイルを参照してください。