Cloudinary MCP Server
Cloudinary MCP サーバー
この MCP サーバーは、Claude Desktop および互換性のある MCP クライアントを介して Cloudinary に画像やビデオをアップロードするためのツールを提供します。
インストール
要件: Node.js
nodejs.orgから Node.js (バージョン 18 以上) と npm をインストールします。
インストールを確認します:
node --version npm --version
npx を使用してインストールする (推奨)
Claude 構成ディレクトリに移動します。
Windows:
C:\Users\NAME\AppData\Roaming\ClaudemacOS:
~/Library/Application Support/Claude/
Claude Desktop アプリ内にも以下のディレクトリがあります: Claude Desktop > 設定 > 開発者 > 設定の編集
MCP 設定ファイルに次の構成を追加します。
{
"mcpServers": {
"cloudinary": {
"command": "npx",
"args": ["@felores/cloudinary-mcp-server@latest"],
"env": {
"CLOUDINARY_CLOUD_NAME": "your_cloud_name",
"CLOUDINARY_API_KEY": "your_api_key",
"CLOUDINARY_API_SECRET": "your_api_secret"
}
}
}
}Cloudinary コンソールから環境変数を Cloudinary 資格情報に置き換えてください。
開発者向けインストール
サーバーを変更したり開発に貢献したい場合は、次の手順に従ってください。
リポジトリをクローンします。
git clone https://github.com/felores/cloudinary-mcp-server.git
cd cloudinary-mcp-server依存関係をインストールしてビルドします。
npm install
npm run buildRelated MCP server: Image Analysis MCP Server
セットアップ手順
まず、Cloudinary アカウントがあることを確認し、 Cloudinary コンソールから資格情報を取得します。
クラウド名
APIキー
APIシークレット
Claude/Cline MCP 設定ファイルにサーバー構成を追加します。
{
"mcpServers": {
"cloudinary": {
"command": "node",
"args": ["c:/path/to/cloudinary-mcp-server/dist/index.js"],
"env": {
"CLOUDINARY_CLOUD_NAME": "your_cloud_name",
"CLOUDINARY_API_KEY": "your_api_key",
"CLOUDINARY_API_SECRET": "your_api_secret"
}
}
}
}Claude デスクトップ アプリの場合は、OS の適切な場所にある構成ファイルを編集します。
依存関係をインストールしてサーバーを構築します。
npm install
npm run build利用可能なツール
アップロード
Cloudinary に画像とビデオをアップロードします。
パラメータ:
file(必須): アップロードするファイル、URL、またはbase64データURIへのパスresource_type(オプション): リソースの種類 ('image'、'video'、または 'raw')public_id(オプション): アップロードされたアセットのカスタムパブリックIDoverwrite(オプション):同じ公開IDを持つ既存のアセットを上書きするかどうかtags(オプション): アップロードされたアセットに割り当てるタグの配列
Claude/Cline での使用例:
use_mcp_tool({
server_name: "cloudinary",
tool_name: "upload",
arguments: {
file: "path/to/image.jpg",
resource_type: "image",
public_id: "my-custom-id"
}
});Available Tools
1 tooluploadB
Upload media (images/videos) to Cloudinary. For large files, the upload is processed in chunks and returns a streaming response. The uploaded asset will be available at:
HTTP: http://res.cloudinary.com/{cloud_name}/{resource_type}/upload/v1/{public_id}.{format}
HTTPS: https://res.cloudinary.com/{cloud_name}/{resource_type}/upload/v1/{public_id}.{format} where {cloud_name} is your Cloudinary cloud name, resource_type is 'image' or 'video', and format is determined by the file extension.
| Name | Required | Description | Default |
|---|---|---|---|
| file | Yes | Path to file, URL, or base64 data URI to upload | |
| resource_type | No | Type of resource to upload. For videos, the upload will return a streaming response as it processes in chunks. | |
| public_id | No | Public ID to assign to the uploaded asset. This will be used in the final URL. If not provided, Cloudinary will generate one. | |
| overwrite | No | Whether to overwrite existing assets with the same public ID | |
| tags | No | Tags to assign to the uploaded asset |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that uploads are processed in chunks for large files and returns a streaming response, adding useful behavioral context. However, it misses critical details like authentication requirements, rate limits, error handling, or what the response contains, leaving gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, starting with the core purpose. The URL details are relevant but slightly verbose; every sentence earns its place by explaining outcomes, though it could be more streamlined for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, 100% schema coverage, no output schema, and no annotations, the description is moderately complete. It covers the upload process and resulting URLs but lacks details on response format, error cases, or authentication, making it adequate but with clear gaps for a tool that performs mutations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds minimal value beyond the schema: it clarifies the URL format for uploaded assets, which relates to public_id and resource_type, but doesn't explain parameter interactions or provide additional semantics for the 5 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool uploads media (images/videos) to Cloudinary, specifying the verb 'upload' and resource 'media to Cloudinary'. However, it doesn't distinguish from any siblings (none exist) and could be more specific about the 'raw' resource_type mentioned in the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for uploading media to Cloudinary, mentioning large files use chunked processing, but provides no explicit when-to-use guidance, alternatives, or exclusions. Without siblings, differentiation isn't needed, but it lacks context like prerequisites or typical scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- First observed
upload
TDQS
Scored across 1 tool
With only one tool, there is no possibility for ambiguity or overlap between tools. The 'upload' tool has a clear, singular purpose of uploading media to Cloudinary, making it impossible for an agent to misselect among multiple options.
Since there is only one tool named 'upload', it inherently follows a consistent naming pattern. There are no other tools to compare against, so no inconsistencies can arise in verb style, case conventions, or other naming aspects.
A single tool is too few for a Cloudinary server, which typically handles a wide range of media operations like upload, delete, transform, list, and fetch. This minimal set severely limits functionality and will likely cause agent failures due to missing essential operations for the domain.
The tool set is severely incomplete for a Cloudinary media management server. It only provides upload functionality, with glaring gaps such as no delete, update, list, search, or transformation tools. This makes it impossible for agents to perform basic CRUD or lifecycle operations in the domain.
Maintenance
Related MCP Connectors
Upload, organize, search, and transform images, videos, and files with AI-powered tools.
Official ImageKit media library server: search, upload, organize, tag, share and manage assets.
Official ImageKit developer server: search the docs and build transformation URLs. No sign-in.
Agent-first image hosting — upload images and get instant CDN URLs.
Related MCP Servers
- AlicenseAqualityFmaintenanceThis server generates placeholder image URLs from various providers, supporting input validation and integration with desktop applications like Claude and Cursor.112MIT
- AlicenseCqualityDmaintenanceA server that accepts image URLs and analyzes their content using GPT-4-turbo, enabling Claude AI assistants to understand and describe images through natural language.24 npm8MIT
- AlicenseNot gradedqualityCmaintenanceA lightweight MCP server for image processing and cloud uploads that automates resizing, converting, optimizing, and uploading images to services like AWS S3, Cloudflare R2, and Google Cloud Storage.17 npm18MIT
- AlicenseAqualityCmaintenanceMCP server for uploading images to ImgBB from Claude-compatible clients.3MIT