Skip to main content
Glama
felores

Cloudinary MCP Server

by felores

클라우디너리 MCP 서버

이 MCP 서버는 Claude Desktop 및 호환되는 MCP 클라이언트를 통해 Cloudinary에 이미지와 비디오를 업로드하기 위한 도구를 제공합니다.

설치

요구 사항: Node.js

  1. nodejs.org 에서 Node.js(버전 18 이상)와 npm을 설치하세요.

  2. 설치 확인:

    지엑스피1

npx를 사용하여 설치(권장)

  1. Claude 구성 디렉토리로 이동합니다.

    • Windows: C:\Users\NAME\AppData\Roaming\Claude

    • macOS: ~/Library/Application Support/Claude/

    Claude Desktop 앱 내부에서도 다음 디렉토리를 찾을 수 있습니다. Claude Desktop > 설정 > 개발자 > 구성 편집

  2. 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"
      }
    }
  }
}
  1. Cloudinary 콘솔 의 Cloudinary 자격 증명으로 환경 변수를 바꿔야 합니다.

개발자 설치

서버를 수정하거나 개발에 기여하고 싶다면:

  1. 저장소를 복제합니다.

git clone https://github.com/felores/cloudinary-mcp-server.git
cd cloudinary-mcp-server
  1. 종속성을 설치하고 빌드합니다.

npm install
npm run build

Related MCP server: Image Analysis MCP Server

설치 지침

  1. 먼저 Cloudinary 계정이 있는지 확인하고 Cloudinary 콘솔 에서 자격 증명을 받으세요.

    • 클라우드 이름

    • API 키

    • API 비밀

  2. 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에 맞는 위치에서 구성 파일을 편집하세요.

  1. 종속성을 설치하고 서버를 빌드합니다.

npm install
npm run build

사용 가능한 도구

업로드하다

Cloudinary에 이미지와 비디오를 업로드하세요.

매개변수:

  • file (필수): 업로드할 파일 경로, URL 또는 base64 데이터 URI

  • resource_type (선택 사항): 리소스 유형('image', 'video' 또는 'raw')

  • public_id (선택 사항): 업로드된 자산에 대한 사용자 정의 공개 ID

  • overwrite (선택 사항): 동일한 공개 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 tool
uploadB

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:

ParametersJSON Schema
NameRequiredDescriptionDefault
fileYesPath to file, URL, or base64 data URI to upload
resource_typeNoType of resource to upload. For videos, the upload will return a streaming response as it processes in chunks.
public_idNoPublic ID to assign to the uploaded asset. This will be used in the final URL. If not provided, Cloudinary will generate one.
overwriteNoWhether to overwrite existing assets with the same public ID
tagsNoTags to assign to the uploaded asset

TDQS

B3.4/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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. 1 tool update
    • First observedupload

TDQS

B3.4/5.0

Scored across 1 tool

Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count2/5

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.

Completeness1/5

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

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers