Cloudinary MCP server
Cloudinary in any MCP client, through Memtro: Cloudinary does not publish this server. Memtro's Cloudinary connector reads Cloudinary through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.
What the model can do
Cloudinary media library: assets by type, folder, prefix or upload date, search across assets with Cloudinary's query language, one asset's details, folders and subfolders, tags in use, and plan usage (storage, bandwidth, transformations, credits); when you ask, can rename an asset's display name, move it to another folder, approve or reject it, create, rename or delete a folder, delete assets by id and restore deleted ones from backup.
Reads
cloudinary_assetsAssets of one resource type and delivery type, newest first by default: public id, display name, folder, format, size, dimensions, created date…cloudinary_searchSearch all assets with Cloudinary's Lucene-like expressions, e.g. 'resource_type:image AND tags:shoe AND uploaded_at>1w', 'folder:products/*'…cloudinary_assetOne asset by its asset id: public id, display name, folder, format, size, dimensions, duration or pages, created date, tags…cloudinary_foldersAsset folders: the root folders, or the subfolders of a folder path.cloudinary_folder_assetsThe assets stored directly in one asset folder (not its subfolders), of any type, newest first.cloudinary_tagsTags in use on assets of one resource type, optionally only those starting with a prefix.cloudinary_usagePlan usage: the plan, credits, storage, bandwidth and transformations used against their limits (with percent used), request count…
Acts, when you ask
These change something in Cloudinary. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.
cloudinary_update_assetChanges one Cloudinary asset, found by resource type, delivery type and public id: a new display name, a move to another asset folder…cloudinary_create_folderCreates an empty asset folder at the path given (parents included, e.g. products/shoes).cloudinary_rename_folderRenames or moves an asset folder and everything in it to a new path (hats/caps → hats/berets renames, → baseball/caps moves).cloudinary_delete_folderDeletes an asset folder, which must already be empty (Cloudinary refuses otherwise).cloudinary_delete_assetsDeletes up to 100 Cloudinary assets, named by asset id, with their derived versions.cloudinary_restore_assetsRestores up to 100 deleted (or overwritten) assets, by asset id, from Cloudinary's backup to their latest backed-up version.
Connect it
First connect Cloudinary on Dashboard → Connections, then add Memtro to your client once. The Cloudinary tools appear alongside the tools of everything else you have connected; nothing is configured per connector.
Claude Code
The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.
claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...Cursor
Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.
{
"mcpServers": {
"memtro": {
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Claude Desktop
Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…
OpenCode
A remote server in opencode.json.
{
"mcp": {
"memtro": {
"type": "remote",
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Pi
One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.
Any other client
Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.
Who may use it
The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Cloudinary connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.
Ask it like this
- › How much Cloudinary storage and bandwidth did we use this month?
- › Which images tagged summer were uploaded in the last week?
- › What is in the products/shoes folder?
- › Which PDFs are larger than 10 MB?
- › Create a folder called campaigns/spring.
Questions
- Is this an official Cloudinary MCP server?
- No. It is Memtro's MCP server with Memtro's Cloudinary connector behind it: the connector reads Cloudinary through its API with the credentials you connect on Dashboard → Connections, and Cloudinary publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
- What does it cost?
- Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
- Can it change anything in Cloudinary?
- Only when you ask, and only what it has been granted: change an asset's display name, move it to another folder, or approve or reject it; create a folder; rename or move a folder; delete an empty folder; delete assets by asset id; restore deleted assets from backup. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
- Which clients work?
- Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.