Cloudinary
Cloudinary is a cloud-based media management platform for uploading, storing, transforming, and delivering images and videos via CDN.
Verdict
Common use cases
- Generate upload presets for campaign assets
- Audit and prune unused derived images
- Create webhook triggers for new uploads
- Organize media libraries into nested folders
- Define custom metadata fields for tagging
Integration
- Vendor
- Cloudinary
- Category
- developer-tools
- Auth
- API_KEY
- Tools
- 34
- Composio slug
cloudinary
Tools
- Create Folder
Tool to create a new asset folder. use when you need to organize assets into nested directories. use after confirming the folder path does not already exist.
- Create Metadata Field
Tool to create a new metadata field definition. use when extending your metadata schema with new fields.
- Create Trigger
Tool to create a new webhook trigger for a specified event type. use after configuring your webhook endpoint and choosing the event type. example: "create a trigger for uploads to https://example.com/hooks/cloudinary"
- Create Upload Mapping
Tool to create a new upload mapping folder and url template. use when you need to dynamically map external url prefixes to a cloudinary asset folder before uploading files.
- Create Upload Preset
Tool to create a new upload preset. use when defining centralized upload options (tags, formats, transformations, etc.) before asset uploads.
- Delete Derived Resourcesdestructive
Tool to delete derived assets. use when you need to remove specific derived assets by their ids. example: "delete derived assets with ids [id1, id2]".
- Delete Folderdestructive
Tool to delete an empty asset folder. use when the folder is confirmed empty and you need to remove it.
- Delete Metadata Fielddestructive
Tool to delete a metadata field by external id. use when you need to remove a metadata field that is no longer required.
- Delete Metadata Field Datasource Entriesdestructive
Tool to delete datasource entries for a specified metadata field. use when you need to soft-delete (inactivate) specific entries in a field's datasource. example prompt: "delete entries ['color1','color2'] from metadata field 'color id'"
- Delete Resources by Asset IDdestructive
Tool to delete resources by asset ids. use when you need to permanently remove specific resources by their immutable asset ids; irreversible.
- Delete Resources by Tagsdestructive
Tool to delete cloudinary assets by tag. use when you need to remove all assets associated with a given tag.
- Delete Triggerdestructive
Tool to delete a trigger (webhook notification). use when you need to remove a trigger by its id after confirming the correct id.
- Get Adaptive Streaming Profiles
Tool to list adaptive streaming profiles. use when retrieving built-in and custom adaptive streaming profiles for delivering video via hls or dash.
- Get Metadata Field By ID
Tool to get a single metadata field definition by external id. use after creating or updating a metadata field to fetch its full definition. example: "get metadata field definition for external id 'color id'."
- Get product environment config details
Tool to get product environment config details. use when you need to fetch or verify environment configuration such as folder mode.
- Get Resource by Asset ID
Get resource by asset id
- Get Resource by Public ID
Tool to get details of a single resource by public id. use when you need full asset, derived, and related info.
- Get Resources by Asset Folder
Tool to list assets stored directly in a specified folder. use when you need to view assets in a specific folder without including subfolder contents.
- Get Resources by Context
Tool to retrieve assets with a specified contextual metadata key/value. use when filtering resources by context metadata.
- Get Resources in Moderation
Tool to retrieve assets in a moderation queue by status. use after moderation to process pending or reviewed assets.
- Get Resource Tags
Tool to list all tags used for a specified resource type. use when you need to retrieve or page through the tags assigned to your assets.
- Get Root Folders
Tool to list all root folders in the product environment. use when you need to retrieve top-level asset folders.
- Get Streaming Profile Details
Tool to get details of a single streaming profile by name. use when you need to inspect an existing profile's configuration before making changes. example: "get details of streaming profile 'hd'."
- Get Transformations
Tool to list all transformations (named and unnamed). use when you need to retrieve transformation definitions or paginate through transformation records.
- Get Upload Mapping Details
Tool to retrieve details of a single upload mapping by folder. use when you need the url prefix template associated with a specific mapping folder.
- Get Upload Mappings
Tool to list all upload mappings by folder. use when you need to retrieve and paginate through upload mapping configurations, optionally filtering by folder.
- Get Usage
Tool to get product environment usage details. use when you need to monitor your cloudinary account storage, bandwidth, requests, and other usage limits.
- List Webhook Triggers
Tool to list all webhook triggers for event types in your environment. use when you need to retrieve or filter existing triggers by type.
- Order Metadata Field Datasource
Tool to update ordering of a metadata field datasource. use when you need to reorder enum or set values for a metadata field datasource before updating assets.
- Ping Cloudinary Servers
Tool to ping cloudinary servers. use when testing api reachability and authentication.
- Restore Metadata Field Datasource Entries
Tool to restore previously deleted datasource entries for a metadata field. use after deleting entries to reactivate soft-deleted datasource entries.
- Search Folders
Tool to search asset folders with filtering, sorting, and pagination. use when you need to locate specific folders by name, path, or creation date.
- Update Folder
Tool to rename or move an existing asset folder. use when you need to change the folder's name or location.
- Update Metadata Field
Tool to update a metadata field definition by external id. use when modifying an existing schema field (e.g., changing label or validation) without redefining all properties.
Setup
Setup guide
- 11. In Switchy, open your workspace settings and click 'Add Integration' under the MCP section. 2. Select Cloudinary from the developer tools category. 3. Open your Cloudinary console, navigate to Settings → API Keys, and copy your API Key and API Secret. 4. Paste both values into Switchy's connection form along with your Cloud Name (found in the console dashboard URL). 5. Click 'Connect' — Switchy validates the credentials against Cloudinary's API. 6. Return to any Space, type '@Cloudinary list all folders' and send; if you see a structured response listing your asset directories, the connection is live. 7. To invoke a tool, @mention Cloudinary in a message and describe the task in plain English — the MCP maps your intent to the correct API call.
What teammates see: by default, memories from Cloudinary are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Spaces have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Create Campaign Preset
@Cloudinary create an upload preset named 'spring-campaign-2024' that auto-tags uploads with 'spring' and 'promo', applies a 1200px width limit, and converts to WebP formatOpen in a Space →
Audit Derived Assets
@Cloudinary show me all derived assets for the public ID 'hero-banner-v3' and include their transformation URLs and file sizesOpen in a Space →
Set Up Upload Webhook
@Cloudinary create a webhook trigger for the 'upload' event that posts to https://api.example.com/webhooks/cloudinary with a signing secretOpen in a Space →
Organize Asset Folders
@Cloudinary create a folder at 'projects/q1-2024/social-media' and confirm it doesn't already exist before proceedingOpen in a Space →
Define Custom Metadata
@Cloudinary create a metadata field with external ID 'campaign_id', label 'Campaign Identifier', type 'string', and make it mandatory for all uploadsOpen in a Space →
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@cloudinary search for all images tagged 'product-hero' uploaded in the last 30 days and show me their public URLs
Found 47 images matching your criteria. Here's a sample: • hero-laptop-2024.jpg (uploaded Jan 15) - https://res.cloudinary.com/demo/image/upload/v1705334400/hero-laptop-2024.jpg • hero-phone-dark.png (uploaded Jan 12) - https://res.cloudinary.com/demo/image/upload/v1705075200/hero-phone-dark.png • hero-tablet-feature.jpg (uploaded Jan 8) - https://res.cloudinary.com/demo/image/upload/v1704729600/hero-tablet-feature.jpg All images are optimized and available in multiple formats (WebP, AVIF). The full list includes 44 more assets with similar naming patterns.
This example shows read-only asset search, which requires API key authentication but no special permissions. Results depend on your account's actual asset library — this illustrative output assumes a product marketing use case. Search queries can filter by tags, upload date, format, and metadata fields.
@cloudinary create an upload preset called 'blog-images' that auto-tags uploads with 'blog', converts to WebP, and applies a 1200px width limit
Created upload preset 'blog-images' successfully. Configuration: • Preset name: blog-images • Auto-tagging: blog • Format: auto-convert to WebP • Transformation: width limit 1200px, quality auto • Folder: /blog (default) • Access mode: public You can now reference this preset in upload calls or share the unsigned upload URL with your CMS. Any image uploaded through this preset will automatically receive these transformations and tags without additional configuration.
Upload presets centralize transformation logic and are essential for consistent asset handling across teams. This write operation requires API key auth and modifies your account configuration. Once created, the preset applies to all future uploads that reference it — test thoroughly before using in production workflows.
@cloudinary analyze all assets in the /marketing/q1-campaign folder and tell me which ones are over 500KB in original size, then suggest optimization strategies
Analyzed 23 assets in /marketing/q1-campaign. Found 8 assets exceeding 500KB: **Oversized assets:** • banner-desktop.png (1.2MB) - PNG with transparency, consider WebP conversion • hero-background.jpg (890KB) - High-res JPEG, reduce quality to 80-85% • product-grid.png (745KB) - Contains text, use format:auto for smart compression **Optimization recommendations:** 1. Enable automatic format delivery (f_auto) to serve WebP/AVIF to supported browsers 2. Apply quality:auto transformation to balance size and visual fidelity 3. Use responsive breakpoints (w_auto) to avoid serving desktop images to mobile Estimated savings: 60-70% reduction in total bandwidth with these optimizations applied.
This synthesis example combines the MCP's asset listing capabilities with the AI's analytical reasoning to provide actionable insights. The MCP fetches folder contents and file metadata; the AI interprets size thresholds and suggests Cloudinary-specific optimizations. Actual recommendations depend on your asset types and delivery requirements.
Use-case deep-dives
When Cloudinary MCP replaces manual asset uploads for small marketing teams
A 3-person marketing team ships 20-30 blog posts a month, each with 4-6 images that need resizing for desktop, mobile, and social cards. The Cloudinary MCP wins here because the team can script upload presets once ("blog-hero", "social-thumbnail") and let the AI handle folder creation, tagging, and transformation triggers without touching the Cloudinary dashboard. The 34 tools cover the full lifecycle: create folders by campaign, set metadata fields for attribution tracking, and delete derived resources when a post gets pulled. If your team ships fewer than 10 assets a week, the manual UI is faster. But at 80+ monthly uploads with consistent transformation rules, the MCP pays back in hours saved per sprint.
How this MCP handles SKU-driven image workflows at scale
A 6-person e-commerce team manages 800 SKUs, each requiring 5 product shots plus lifestyle images that rotate seasonally. The Cloudinary MCP is the right call when your product data lives in Airtable or Notion and you need programmatic folder structures mirroring SKU hierarchies. The AI can create upload mappings to pull external URLs into Cloudinary folders, apply metadata fields for SKU and season, and trigger webhooks when new images land so your storefront updates automatically. The threshold: if your catalog is under 200 SKUs or you only upload during quarterly photoshoots, the overhead of scripting upload presets outweighs the gain. Above 500 SKUs with weekly image updates, the MCP turns a 4-hour manual task into a 10-minute prompt.
When Cloudinary MCP speeds up bug report image handling
A 5-person support team fields 40 tickets a day, half with user-submitted screenshots that need cropping, annotation overlays, and archival after resolution. The Cloudinary MCP fits when your team uses Intercom or Zendesk and wants the AI to auto-upload screenshots to ticket-specific folders, apply metadata fields for ticket ID and severity, and delete derived resources (annotated versions) once tickets close. The create-trigger tool lets you fire webhooks to your bug tracker when new images arrive. The trade-off: if your ticket volume is under 15 screenshots a day, the manual drag-and-drop flow is simpler. At 30+ daily screenshots with consistent cropping or watermarking needs, the MCP cuts triage time from 90 seconds per image to 10.
Frequently asked
What does the Cloudinary MCP do in Switchy?
It lets your AI agents manage your Cloudinary media library directly — creating folders, uploading assets, setting metadata fields, configuring webhooks, and deleting derived resources. Instead of switching to the Cloudinary dashboard or writing API scripts, your team can ask an agent to organize images, set up upload presets, or clean up old transformations. It's useful for teams that store product photos, marketing assets, or user-generated content in Cloudinary.
Do I need admin access to connect Cloudinary MCP?
You need an API key with write permissions to your Cloudinary environment. Cloudinary issues API keys at the account level, so whoever connects it should have access to the cloud name and API secret. If your team restricts API key creation to admins, you'll need their help. Read-only keys won't work because the MCP creates folders, uploads assets, and modifies metadata.
Can the Cloudinary MCP upload images or just manage folders?
It handles both. The MCP can create folders, upload presets, and upload mappings — all the scaffolding for asset organization. It can also delete derived resources and manage metadata fields. If you need to upload a specific file, the agent uses the upload preset and mapping tools to route it correctly. It won't replace a bulk upload script, but it's faster than clicking through the Cloudinary UI for one-off tasks.
How is this different from using Cloudinary's web dashboard?
The dashboard is faster for visual browsing and one-click transforms. The MCP is better when you're already working in Switchy and need to automate repetitive tasks — like creating ten folders for a new campaign, setting up webhook triggers for upload events, or deleting derived assets that match a pattern. You're trading point-and-click for natural language instructions. Use the dashboard for exploration; use the MCP for scripted workflows.
Who on the team should connect the Cloudinary MCP?
Whoever manages your media library or runs marketing campaigns that depend on Cloudinary assets. Typically a developer, product manager, or marketing ops person. They'll need the API key and cloud name. Once connected, anyone in your Switchy workspace can ask agents to create folders or upload presets, but the connection itself uses one set of credentials. If multiple people need isolated access, connect separate Cloudinary environments.