CCAPI

Image, video, music and text generation across 100+ models through one endpoint.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
80%
Qualität der Benennung
100%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~1,789Tokens (Tool-Definitionen)
~4.7 KBTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (1.40% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "mcp": {
      "url": "https://api.ccapi.ai/mcp"
    }
  }
}

Remote-Endpunkte

https://api.ccapi.ai/mcpstreamable-http
https://api.ccapi.ai/mcp/imagestreamable-http
https://api.ccapi.ai/mcp/videostreamable-http
https://api.ccapi.ai/mcp/musicstreamable-http
https://api.ccapi.ai/mcp/textstreamable-http

Was es kann

Tool-Inventar

Tools (4)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢generate_video(model, prompt, images, videos, audios, ...)

Generate a video from a text prompt, optionally driven by reference images (image-to-video, first/last frame). This is asynchronous: it returns a task_id you poll with get_task(platform='video'). Generation usually takes 30-180 seconds. Pass wait_seconds to have the server poll for you. Video generation is the most expensive capability here — confirm the prompt with the user before spending on retries.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "description": "Exact model name, e.g. doubao-seedance-2-0-260128, veo-3.1-quality or viduq3-pro. Call list_models with category 'video' if unsure."
    },
    "prompt": {
      "type": "string",
      "description": "Description of the video to generate."
    },
    "images": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Optional reference image URLs. A single image is used as the first frame; use image_roles to control multiple."
    },
    "videos": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Optional Seedance reference video URLs or asset:// URIs returned by the trusted asset catalog."
    },
    "audios": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Optional Seedance reference audio URLs or asset:// URIs returned by the trusted asset catalog. Reference audio cannot be used alone."
    },
    "duration": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Clip length in seconds. Model-dependent, typically 4-15; an unsupported value is rejected with a message naming the supported ones. Omit for the model default."
    },
    "resolution": {
      "type": "string",
      "description": "Output resolution: 480p, 720p (widest compatibility) or 1080p. Model-dependent."
    },
    "ratio": {
      "type": "string",
      "description": "Aspect ratio, e.g. 16:9, 9:16, 1:1, 21:9 or adaptive. Which values a model accepts varies; an unsupported one is rejected with a message naming the valid ones."
    },
    "generate_audio": {
      "type": [
        "null",
        "boolean"
      ],
      "description": "Generate a synchronised soundtrack. Only some models support this."
    },
    "image_roles": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Role of each entry in images, positionally: first_frame, last_frame or reference_image."
    },
    "wait_seconds": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Poll server-side for up to this many seconds (max 240) and return the finished video if it completes in time. Omit to return a task_id immediately."
    }
  },
  "required": [
    "model",
    "prompt"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "task_id": {
      "type": "string",
      "description": "Pass this to get_task together with platform to check progress."
    },
    "platform": {
      "type": "string",
      "description": "Always 'video'. Pass to get_task."
    },
    "status": {
      "type": "string",
      "description": "One of: queued, in_progress, completed, failed."
    },
    "model": {
      "type": "string",
      "description": "Model that accepted the request."
    },
    "video_urls": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Finished video URLs, when the task completed within wait_seconds."
    },
    "note": {
      "type": "string",
      "description": "What to do next."
    }
  },
  "required": [
    "task_id",
    "platform",
    "status",
    "model",
    "note"
  ],
  "additionalProperties": false
}
🟢get_balance

Report the remaining and used balance for this CCAPI key. Useful before starting an expensive batch of generations, or to explain a quota failure to the user.

Eingabe-Schema

{
  "type": "object",
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "unlimited": {
      "type": "boolean",
      "description": "True when this token has no spending cap, in which case the amount fields are not meaningful."
    },
    "remaining_amount": {
      "type": "number",
      "description": "Remaining balance, in the account's display currency. Omitted when unlimited."
    },
    "used_amount": {
      "type": "number",
      "description": "Balance consumed to date, in the same unit."
    },
    "total_amount": {
      "type": "number",
      "description": "Remaining plus used. Omitted when unlimited."
    },
    "currency": {
      "type": "string",
      "description": "Unit of the amounts above, e.g. USD."
    },
    "note": {
      "type": "string",
      "description": "Guidance when the balance is low, unlimited, or scoped to a token."
    }
  },
  "required": [
    "unlimited",
    "used_amount",
    "currency"
  ],
  "additionalProperties": false
}
🟢get_task(platform, task_id, wait_seconds)

Check the status of an asynchronous generation task submitted by generate_video, generate_music, generate_lyrics, extend_music, or generate_image with async=true. Pass the platform and task_id exactly as they were returned. Status is one of queued, in_progress, completed or failed; poll every few seconds until it settles, or pass wait_seconds to have the server wait for you.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "platform": {
      "type": "string",
      "description": "Platform the task belongs to, exactly as returned by the submit tool: image, video, suno or producer."
    },
    "task_id": {
      "type": "string",
      "description": "Task identifier returned by the submit tool."
    },
    "wait_seconds": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Poll server-side for up to this many seconds (max 240) and return once the task finishes. Omit for a single immediate status check."
    }
  },
  "required": [
    "platform",
    "task_id"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "task_id": {
      "type": "string",
      "description": "The task this status refers to."
    },
    "platform": {
      "type": "string",
      "description": "Platform the task belongs to."
    },
    "status": {
      "type": "string",
      "description": "One of: queued, in_progress, completed, failed, unknown."
    },
    "progress": {
      "type": "string",
      "description": "Progress indication, when the backend reports one."
    },
    "result_urls": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Finished asset URLs. May expire; download anything worth keeping."
    },
    "fail_reason": {
      "type": "string",
      "description": "Why the task failed, when status is failed."
    },
    "note": {
      "type": "string",
      "description": "What to do next."
    },
    "raw": {
      "description": "Backend payload, for details this summary does not cover (lyrics text, per-clip metadata, seeds)."
    }
  },
  "required": [
    "task_id",
    "platform",
    "status"
  ],
  "additionalProperties": false
}
🟢list_models(category, search)

List the AI models this CCAPI key can actually call, with their capability category and the MCP tool that drives them. Call this before generating anything if you are unsure a model name is valid — availability depends on the key's group and changes over time. Never guess model names.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "Filter by capability. One of: text, image, video, music, embedding, other. Omit to list every model this key can use."
    },
    "search": {
      "type": "string",
      "description": "Case-insensitive substring match on the model name, e.g. 'claude' or 'seedance'."
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "models": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The exact model name to pass to other tools."
          },
          "category": {
            "type": "string",
            "description": "Capability category: text, image, video, music, embedding or other."
          },
          "description": {
            "type": "string",
            "description": "Human-readable description, when the platform publishes one."
          },
          "vendor": {
            "type": "string",
            "description": "Upstream vendor, e.g. Anthropic, Google, Suno."
          },
          "groups": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "Token groups that can reach this model."
          },
          "endpoints": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            },
            "description": "API endpoint families this model supports."
          },
          "tool": {
            "type": "string",
            "description": "Which MCP tool to call for this model. Absent means no MCP tool drives it — reach it through the REST API instead."
          }
        },
        "required": [
          "name",
          "category"
        ],
        "additionalProperties": false
      },
      "description": "Models available to the calling key."
    },
    "total": {
      "type": "integer",
      "description": "Number of models returned."
    },
    "note": {
      "type": "string",
      "description": "Guidance about the result set."
    }
  },
  "required": [
    "models",
    "total"
  ],
  "additionalProperties": false
}

Empfohlene Prompts

retrieve_data
Get details about [item] from CCAPI
Erwartete Tools: get_balance
fetch_info
Fetch [information type] using CCAPI
Erwartete Tools: get_balance
list_items
List all [items] available in CCAPI
Erwartete Tools: list_models
browse_collection
Show me the [collection] from CCAPI
Erwartete Tools: list_models
explore_workflow
List available [items], then get details for each one using CCAPI
Erwartete Tools: list_modelsget_balance

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet4 Tools
verifiziertVersion nicht aufgezeichnet6 Tools
verifiziertVersion nicht aufgezeichnet6 Tools
verifiziertVersion nicht aufgezeichnet11 Tools
verifiziertVersion nicht aufgezeichnet4 Tools
verifiziertVersion nicht aufgezeichnet4 Tools
verifiziertVersion nicht aufgezeichnet6 Tools
verifiziertVersion nicht aufgezeichnet6 Tools
verifiziertVersion nicht aufgezeichnet11 Tools
verifiziertVersion nicht aufgezeichnet4 Tools