Skip to main content
Glama

Clipia MCP

Create AI images, video, speech, music and presentations inside Claude, Cursor and ChatGPT — 60+ models in one MCP endpoint.

npm clipia-ai PyPI clipia License: MIT MCP

Clipia is an AI creation platform. This hosted, remote Model Context Protocol (MCP) server lets any MCP-capable agent generate images, video, speech and music; chat with text models; plan and compose videos; create and edit presentations; poll results; browse models; search prompt templates; and read your credit balance — no SDK and no code required.

Endpoint: https://mcp.clipia.ai/mcp — stateless Streamable HTTP, authenticated with a Clipia API key.


Quick start

Connect Clipia to Claude Code in one command (replace the placeholder with your key):

claude mcp add --transport http clipia https://mcp.clipia.ai/mcp \
  --header "Authorization: Bearer <CLIPIA_API_KEY>"

Then just ask in the chat: "Generate a neon city image with Clipia" — the preview lands right in the terminal.

Where to get a key: create one in the Clipia Developer Console. The key is shown once.

Sandbox without charges: keys with the clipia_test_ prefix run in a sandbox — instant mock results, no credits spent. Use a clipia_test_* key to validate your integration before going live.


Related MCP server: mcp-media-engine

Connect from any client

The endpoint is the same everywhere: https://mcp.clipia.ai/mcp. IDEs and CLIs authenticate with an API key from the Developer Console; claude.ai and ChatGPT connect by signing in to your Clipia account over OAuth (no key needed).

Ready-to-paste configs live in examples/.

Client

How to connect

Auth

Claude Code

claude mcp add --transport http clipia … (see Quick start)

API key

Claude Desktop

mcp-remote bridge in claude_desktop_config.json

API key

claude.ai (web/desktop/mobile)

Settings → Connectors → Add custom connector

OAuth

Cursor

~/.cursor/mcp.json (or project .cursor/mcp.json)

API key

VS Code

.vscode/mcp.json (servers + inputs)

API key

Cline

cline_mcp_settings.json (mcpServers)

API key

Windsurf

~/.codeium/windsurf/mcp_config.json (serverUrl)

API key

Codex CLI

~/.codex/config.toml (bearer_token_env_var)

API key (env)

Gemini CLI

gemini mcp add --transport http clipia …

API key

ChatGPT

Developer mode → Apps & Connectors → Create

OAuth

Claude Code

claude mcp add --transport http clipia https://mcp.clipia.ai/mcp \
  --header "Authorization: Bearer <CLIPIA_API_KEY>"

Claude Desktop

Claude Desktop bridges to remote HTTP servers through mcp-remote. Add to claude_desktop_config.json (Settings → Developer → Edit Config), then restart Claude Desktop:

{
  "mcpServers": {
    "clipia": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.clipia.ai/mcp",
        "--header",
        "Authorization: Bearer <CLIPIA_API_KEY>"
      ]
    }
  }
}

claude.ai (web / desktop / mobile)

  1. Open Settings → Connectors.

  2. Click Add custom connector and paste the URL: https://mcp.clipia.ai/mcp

  3. Click Connect and sign in to your Clipia account — no key needed (OAuth).

  4. In a new chat, ask for an image or a video: a live Clipia card with progress and the result appears inside the message.

Credits are charged to the connected Clipia account.

Cursor

Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project), then restart Cursor:

{
  "mcpServers": {
    "clipia": {
      "url": "https://mcp.clipia.ai/mcp",
      "headers": { "Authorization": "Bearer <CLIPIA_API_KEY>" }
    }
  }
}

VS Code

Create .vscode/mcp.json in your workspace (or use the MCP: Add Server command). VS Code prompts for the key on first run and stores it securely:

{
  "servers": {
    "clipia": {
      "type": "http",
      "url": "https://mcp.clipia.ai/mcp",
      "headers": { "Authorization": "Bearer ${input:clipia_api_key}" }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "clipia_api_key",
      "description": "Clipia API Key",
      "password": true
    }
  ]
}

Cline

Cline reads mcpServers from its cline_mcp_settings.json (MCP Servers → Configure MCP Servers in the Cline panel):

{
  "mcpServers": {
    "clipia": {
      "url": "https://mcp.clipia.ai/mcp",
      "headers": { "Authorization": "Bearer <CLIPIA_API_KEY>" }
    }
  }
}

Cline can also install this server itself — see llms-install.md.

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json (note the Windsurf-specific serverUrl field), then refresh Cascade → MCPs:

{
  "mcpServers": {
    "clipia": {
      "serverUrl": "https://mcp.clipia.ai/mcp",
      "headers": { "Authorization": "Bearer <CLIPIA_API_KEY>" }
    }
  }
}

Codex CLI

Add a block to ~/.codex/config.toml and export the key into your environment — Codex injects Authorization: Bearer from the variable automatically:

# ~/.codex/config.toml
[mcp_servers.clipia]
url = "https://mcp.clipia.ai/mcp"
bearer_token_env_var = "CLIPIA_API_KEY"

# in your environment:
# export CLIPIA_API_KEY=<CLIPIA_API_KEY>

Gemini CLI

gemini mcp add --transport http clipia https://mcp.clipia.ai/mcp \
  --header "Authorization: Bearer <CLIPIA_API_KEY>"

Verify the connection with gemini mcp list.

ChatGPT (Developer Mode)

  1. In ChatGPT (web): Settings → Apps & Connectors → Advanced settings → enable Developer mode (Plus, Pro, Business, Enterprise).

  2. Back in Apps & Connectors → Create. Name it Clipia, MCP Server URL: https://mcp.clipia.ai/mcp.

  3. Authentication — OAuth, tick "I trust this application", click Create.

  4. Sign in to your Clipia account in the popup. In a chat press + → More → Clipia, then ask in plain text.

Supported auth header schemes: Authorization: Bearer clipia_* (recommended), Authorization: Key <key>, or X-Api-Key: <key>.


Tools

The server always exposes 10 core tools to the agent. As of 2026-07-26, production exposes 15 agent tools: the 10 core tools plus chat, scenario planning, server-side video composition, presentation generation and presentation editing. Seven app-only helpers are hidden from the AI agent. Compact schemas keep the agent's context window light.

Tool

What it does

generate_image

Generate image(s) from a text prompt, optionally with reference images (editing / image-to-image). Waits briefly and usually returns the finished image inline (URL + small preview). Cost in credits is returned.

generate_video

Start a video generation from a text prompt (text-to-video) or from a start image (image-to-video, pass image_url). Returns request_id and cost in credits immediately — renders take 1–10 min, poll with wait_generation.

generate_audio

Generate speech from text with a selected voice and language. Returns an MP3 when complete.

generate_music

Generate background music or a soundtrack from a description of mood, genre and tempo.

wait_generation

Wait for a generation to finish (long-poll up to wait_seconds, then returns current status). Call repeatedly until COMPLETED, FAILED or CANCELED. Returns output URLs (and an inline preview) when done.

get_generation

Get the current status/result of a generation without waiting. When COMPLETED, output.images[].url is the inline webp preview and output.images[].original_url is the full-quality PNG/JPG.

list_models

List available AI models with type (text/image/video/audio), capabilities and pricing in credits. Text models expose per-1K input/output rates; generation models expose a base price. Filter by type / search.

get_model

Get model details and pricing: input_schema for generation models; context limits and per-1K input/output rates for text models.

get_balance

Get the credit balance of the connected Clipia account and 30-day usage of the current API key.

search_templates

Search 3500+ curated prompt templates (hybrid text+semantic search, Russian or English query). Each result has a ready-to-use prompt and a recommended model.

chat

Currently enabled, feature-gated: chat with a text LLM using a prompt or messages array; returns reply text, token usage and credit cost.

generate_scenario

Currently enabled, feature-gated: turn a brief into per-scene video prompts and a soundtrack prompt.

compose_video

Currently enabled, feature-gated: stitch 2–20 completed scenes into a final MP4 with optional voiceover, soundtrack and subtitles.

generate_presentation

Currently enabled, feature-gated: render an editable PPTX, PDF and previews from a structured deck specification.

edit_presentation

Currently enabled, feature-gated: edit an existing deck, reorder or replace slides, change text and theme, and reuse unchanged illustrations.

app_get_generation

Internal / app-only: status poll used by the Clipia generation viewer card (MCP Apps). Hidden from the model; prefer get_generation.

Default models (used when no slug is passed): nano-banana-2 for images, seedance-2-fast-t2v / seedance-2-fast-i2v for video. Override with a model slug from list_models.


Why Clipia

  • Pay from Russia & CIS — Russian bank cards, SBP, MIR, no VPN required. Western processors reject these; Clipia is built for this market (and works internationally too).

  • 60+ flagship models, one endpoint — Western and Chinese models side by side: Veo 3.1, Sora, Kling 3, Seedance 2, Hailuo, Wan 2.7, Nano Banana, FLUX, Midjourney V7, Imagen 4, and more. No juggling multiple foreign subscriptions.

  • Sandbox without chargesclipia_test_* keys return instant mock results with no credit spend, perfect for wiring up an integration or CI.

  • Live preview in the chat (MCP Apps) — on claude.ai (web/desktop/mobile) every generation renders an interactive card with live progress, the finished media and an "Original" button. In Claude Code the preview lands inline in the terminal for vision-based iteration.

  • 3500+ prompt templatessearch_templates gives the agent curated, ready-to-use prompts (hybrid search, RU/EN), each with a recommended model.

  • Cost in every response — every generation returns its exact cost in credits, and get_balance shows the remaining balance. No hidden MCP markup.

  • Compact tool surface — 10 core tools with tight schemas keep the agent's context window light; enabled capabilities add only the tools they need.


SDK

Prefer calling Clipia from your own code instead of an agent? Use the official SDKs against the same public API (fal.ai-style submit → status → result queue, credits-based billing):

  • TypeScript / Node: clipia-ainpm install clipia-ai (also ships a clipia CLI).

  • Python: clipiapip install clipia (sync + async clients).

Both support webhooks with HMAC-SHA256 signature verification and the same clipia_test_* sandbox keys.


Glama server runtime

The repository includes a minimal Docker runtime so Glama can start the public server entry and inspect its MCP tool definitions. The container is a stdio bridge to the hosted endpoint; it does not contain the Clipia application or any credentials.

Configure CLIPIA_API_KEY as a secret in Glama. Use a sandbox key with the clipia_test_ prefix so validation never spends credits. The optional CLIPIA_MCP_URL setting defaults to https://mcp.clipia.ai/mcp and only accepts HTTPS URLs.

docker build -t clipia-mcp-glama .
docker run --rm -i \
  -e CLIPIA_API_KEY='<CLIPIA_TEST_API_KEY>' \
  clipia-mcp-glama

Pricing

Billing is in credits from your connected Clipia account — the same balance as the website. Every generation returns its exact credit cost, and get_balance shows what's left. Different models cost different credits depending on resolution, duration and quality.

New accounts receive a small pack of welcome credits to evaluate the platform; after that a subscription is required. Four monthly plans (Basic / Standard / Pro / Ultima) — see clipia.ai/tariffs.

clipia_test_* sandbox keys return mock results with no credit charge — use them to develop and test without spending.


🇷🇺 Для России и СНГ

Clipia — AI-платформа для генерации изображений, видео, речи, музыки и презентаций, а также текстовых AI-чатов и сборки готовых роликов. Для пользователей из России и СНГ доступны оплата картой РФ, СБП и МИР, без VPN. 60+ западных и китайских моделей (Veo 3.1, Sora, Kling 3, Seedance 2, Nano Banana, FLUX, Midjourney V7) работают через один MCP-эндпоинт прямо из Claude, Cursor и ChatGPT.

Подключение в одну команду (ключ — в консоли разработчика):

claude mcp add --transport http clipia https://mcp.clipia.ai/mcp \
  --header "Authorization: Bearer <CLIPIA_API_KEY>"

Ключи clipia_test_* — песочница без списания кредитов для отладки. Биллинг в кредитах, стоимость каждой генерации возвращается в ответе. Тарифы: clipia.ai/tariffs.




License

MIT — see LICENSE. © 2026 Clipia (IP Zakharov Maksim Sergeevich).

Available Tools

15 tools
app_get_generationB
Read-onlyIdempotent
Inspect

Internal: status poll used by the Clipia generation viewer card. Prefer get_generation.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYes
include_previewNo

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, covering safety and idempotency. The description adds minimal behavioral context beyond 'status poll' and internal usage, adding little value beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two short sentences that front-load the core purpose and immediately follow with guidance on alternatives. Every word is purposeful, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema and zero parameter coverage, the description fails to provide necessary invocation details. While annotations cover behavioral aspects, the lack of parameter semantics leaves the tool incomplete for agent use without external context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description provides no information about the parameters 'request_id' and 'include_preview'. The agent receives no guidance on their meaning, format, or purpose, making correct invocation challenging.

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 is an internal status poll for the Clipia generation viewer card, with a specific verb 'poll' and resource 'generation status'. It distinguishes from sibling get_generation by directing users to prefer the alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly marks the tool as 'Internal' and advises to 'Prefer get_generation', providing clear guidance on when not to use and pointing to the alternative. However, it does not elaborate on specific scenarios for use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

chatAInspect

Chat with a text LLM (Claude / GPT / Gemini / DeepSeek class) and get the reply text plus token usage and credit cost. Pass either a single prompt or a full messages array. Charged in credits from the connected account.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoLLM model slug. Omit to use the default model. Pass a flagship reasoning model for hard tasks or a fast cheap model for simple ones.
promptNoSingle user message. Use this OR messages (messages wins if both are set).
messagesNoFull conversation as [{role, content}] with role one of system/user/assistant. Content is plain text.
max_tokensNoCap the reply length in tokens.
temperatureNoSampling temperature (0 = deterministic).

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotated with readOnlyHint=false, openWorldHint=true, idempotentHint=false. The description adds the key behavioral detail: 'Charged in credits from the connected account', which is not in annotations. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: first states the core function and output, second explains input modes and cost. Every sentence is functional, no redundancy, front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although no output schema exists, the description mentions output content (reply text, token usage, credit cost), which is sufficient for a straightforward chat tool. Parameters are fully covered in schema and augmented by description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, establishing a baseline of 3. The description adds value by advising when to use 'model' parameter and clarifying the choice between 'prompt' and 'messages'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies 'Chat with a text LLM (Claude / GPT / Gemini / DeepSeek class)' and the output includes 'reply text plus token usage and credit cost'. It clearly distinguishes from sibling tools like image or audio generation.

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 provides guidance on using a single prompt vs messages array and model selection hints (e.g., 'Pass a flagship reasoning model for hard tasks'), but lacks explicit when-not-to-use guidance or direct comparison to sibling tools like 'get_generation'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compose_videoAInspect

Stitch 2–20 finished video scenes into ONE final clip server-side (scenes are normalized to a common frame/fps, concatenated, optional soundtrack replaces scene audio). Pass request_id of your COMPLETED video generations (or media.clipia.ai URLs). Returns request_id (cmp_*) — poll with wait_generation until COMPLETED, then output.video.url is the final mp4. Typical full-video flow: generate_scenario → generate_video per scene → compose_video.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenesYesScenes in playback order. Each item: {request_id} of a COMPLETED video generation (or a previous compose), or {video_url} from media.clipia.ai. Optional duration_seconds trims (shorter) or freeze-extends (longer) the scene.
audio_urlNoOptional: soundtrack https URL on media.clipia.ai (alternative to audio_request_id).
normalizeNoRe-encode scenes to a common format before concat (keep true unless all scenes come from the same model with identical settings).
subtitlesNoOptional burned-in subtitles (styled, bottom-centered). Timings are relative to the FINAL stitched video.
resolutionNo1080p
aspect_ratioNoFrame of the final video; scenes are letterboxed to fit.9:16
voiceover_urlNoOptional: narration https URL on media.clipia.ai (alternative to voiceover_request_id).
audio_request_idNoOptional: a COMPLETED audio/music generation to use as the soundtrack (replaces scene audio, loudness-normalized, fade-out).
voiceover_request_idNoOptional: a COMPLETED audio generation used as narration — mixed OVER the soundtrack (music ducks to 25%) or over scene audio (ducks to 30%).

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds extensive behavioral details beyond annotations: scenes are normalized, optional soundtrack replaces scene audio, voiceover ducks audio, and return value is a request_id to poll. No contradiction with annotations (readOnlyHint=false, destructiveHint=false).

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 a single paragraph that is dense but well-structured, front-loading the main action and then detailing parameters. It could be slightly more scannable with bullet points, but it is still concise for the complexity (9 parameters).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, the description explains the return value and polling workflow. It covers typical use cases and most parameters. It doesn't cover error handling or edge cases, but for a tool with openWorldHint=true, it is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 89% schema coverage, the description still adds significant meaning: clarifies that scenes items can be request_id or video_url, duration_seconds trims/extend, normalize purpose, distinction between URL and request_id for audio/voiceover, and subtitles are burned-in. The schema already describes many parameters, but the description enriches understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Stitch 2–20 finished video scenes into ONE final clip server-side'), the resource (video scenes), and the outcome. It distinguishes from siblings like generate_video (produces individual scenes) and wait_generation (polling). The typical flow is also mentioned.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use (after completing video generations, pass request_ids or media URLs) and provides a typical workflow. It lacks an explicit when-not, but the context is sufficient for an AI to understand the tool's place in the pipeline.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_audioAInspect

Generate speech from text (text-to-speech): pick a voice and language, get an mp3 back. Returns request_id and cost in credits immediately — narration is quick, poll with wait_generation until COMPLETED, then output.audio.url is the mp3. Pass the resulting request_id as voiceover_request_id in compose_video to narrate a multi-scene video, or use the mp3 on its own.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe text to speak. Russian or English. Keep each call within the model limit (typically ≤500 characters) — split a long narration into separate calls and stitch them if needed.
inputNoAdvanced model-specific parameters (see get_model input_schema). Merged with the fields above.
modelNoModel slug from list_models (type audio). Omit to use the default text-to-speech model.
voiceNoVoice preset from the model input_schema (see get_model) — different male/female narrators. Omit for the model default.
languageNoLanguage of the text, e.g. 'ru' or 'en'. Omit for the model default.
stabilityNoDelivery stability where supported: lower is more expressive, higher is more even.
wait_secondsNoHow long to wait inline for completion before returning a request_id.
idempotency_keyNoOptional stable key to safely retry without creating (and paying for) a duplicate generation. Reuse the same key when retrying the same request.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses asynchronous behavior (immediate request_id, polling needed), cost return, and safe retry via idempotency_key. No contradictions with annotations (readOnlyHint=false, idempotentHint=false).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single paragraph, efficiently structured: main action first, then return/polling details, then integration use case. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers workflow end-to-end: generation, polling, output retrieval, and integration with compose_video. Handles the async nature and optional parameters adequately without needing an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds meaningful context beyond schema, e.g., character limits for text, language support (Russian/English), and usage of stability parameter. Schema coverage is 100%, so description complements well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Generate speech from text (text-to-speech)' and specifies the resource (audio), action (generate), and output format (mp3). It distinguishes from sibling tools like generate_music by mentioning integration with compose_video.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on polling with wait_generation and using the result for compose_video. Includes advice on splitting long texts. Does not explicitly mention when not to use, but is clear enough given sibling context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_imageAInspect

Generate image(s) from a text prompt, optionally with reference images (editing / image-to-image). Waits briefly for completion and usually returns the finished image inline (URL + small preview). Cost in credits is returned.

ParametersJSON Schema
NameRequiredDescriptionDefault
seedNoFixes randomness. For distinct variants via separate calls, use a different seed for each — identical calls within ~20s are de-duplicated to one generation.
inputNoAdvanced model-specific parameters (see get_model input_schema). Merged with the fields above.
modelNoModel slug from list_models. Omit to use the default image model.
promptYesWhat to generate. Russian or English.
image_urlsNoPublic https URLs of reference images for editing / image-to-image.
num_imagesNoHow many images to generate in ONE call (model-dependent). Prefer this for multiple variants of a prompt — they come back together as a single tiled result. If the model has no batch support, request variants with separate calls, each with a different seed.
resolutionNoOutput resolution where supported, e.g. '1K', '2K', '4K'.
aspect_ratioNoAspect ratio, e.g. '1:1', '16:9', '9:16', '4:3', '3:4'. Model-dependent.
wait_secondsNoHow long to wait inline for completion before returning a request_id.
idempotency_keyNoOptional stable key to safely retry without creating (and paying for) a duplicate generation. Reuse the same key when retrying the same request.
include_previewNoAttach a small inline preview of the finished image to the result.
negative_promptNo

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds behavioral details beyond annotations: it waits for completion, returns inline URL and preview, and mentions cost in credits. No contradiction with annotations (readOnlyHint false, destructiveHint false).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, concise and front-loaded with key information, no wasteful language.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 12 parameters and no output schema, the description adequately covers core behavior (inline result, cost), though more detail on idempotency or batch behavior could be included.

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 coverage is 92%, so the description adds limited new semantics. The description clarifies 'image_urls' for editing/image-to-image, but most parameters are well-documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states it generates images from text prompts with optional reference images for editing, clearly distinguishing it from sibling tools like generate_video or generate_audio.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions optional reference images for editing/image-to-image, providing context on when to use this tool, but does not explicitly state when not to use or name alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_musicAInspect

Generate background music / a soundtrack from a text description: instrumental (no vocals) by default — ideal to play under narration. Returns request_id and cost in credits immediately; music takes ~1–3 min, so poll with wait_generation until COMPLETED, then output.audio.url is the mp3. Pass the resulting request_id as audio_request_id in compose_video to score a multi-scene video, or use the mp3 on its own. Describe mood/genre/tempo/instruments in the prompt (English works best).

ParametersJSON Schema
NameRequiredDescriptionDefault
inputNoAdvanced model-specific parameters (see get_model input_schema). Merged with the fields above.
modelNoModel slug from list_models (a text-to-music model). Omit to use the default music model.
promptYesDescription of the music: mood, genre, tempo, instruments, e.g. "warm lo-fi hip-hop, mellow Rhodes piano, soft vinyl crackle, 80 bpm". English works best. Keep it within the model limit (typically ≤500 characters).
instrumentalNotrue (default) = instrumental, no vocals — best as a soundtrack under narration. false = allow vocals / a full song.
wait_secondsNoHow long to wait inline for completion before returning a request_id (music usually needs polling with wait_generation).
idempotency_keyNoOptional stable key to safely retry without creating (and paying for) a duplicate generation. Reuse the same key when retrying the same request.

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations already indicating a write operation, description adds crucial async behavior: returns request_id immediately, polling needed, generation time 1-3 min, and output URL. Also mentions cost in credits, and describes destructiveHint via idempotency key.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Efficient and well-structured: purpose first, then async behavior, then usage integration, then parameter tips. No redundant sentences, all information earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, description fully explains the return (request_id, cost) and how to retrieve final audio. Covers lifecycle, companion tools, parameter usage, and constraints. Complete for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

100% schema coverage, but description adds valuable context: prompt tips (mood/genre/tempo/instruments, English best), instrumental default explanation, wait_seconds behavior, and idempotency_key for safe retries. Goes beyond schema to improve usability.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it generates background music/soundtrack from text description, distinguishes from siblings by specifying instrumental default and use as soundtrack under narration. Also explains the output and integration with other tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear context: ideal for background music, instrumental, can be used with compose_video or standalone, and recommends polling. Does not explicitly contrast with generate_audio for speech/sound effects, but the musical focus is evident.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_presentationAInspect

Generate a slide presentation (editable PPTX + PDF + PNG previews) from a DeckSpec you compose. Returns request_id (prs_*) — poll with wait_generation until COMPLETED, then output has pptx_url, pdf_url, preview_urls[]. Write the full spec: title, language (ru/en), theme (clipia-dark default, clean-light for print/office), and 3–20 slides. Each slide has a "layout": cover, section, bullets, two-col, image-full, quote, stats, or closing. For illustrations set image.prompt (English) — generated by our image models and billed as credits; skip images for text-only slides. Costs credits (render fee + illustrations).

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoVisual theme. clipia-dark (default). clean-light for office/academic decks meant to be printed.
titleYesCover title.
slidesYesSlides in order (3–20).
languageNoContent language (default ru). Write slide text in it.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds significant behavioral context beyond the annotations: it explains the asynchronous nature (returns request_id, poll with wait_generation), cost implications (credits), and output structure (pptx_url, pdf_url, preview_urls). No contradictions with annotations.

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 concise and front-loaded with the core purpose. It efficiently covers all major aspects in a single paragraph, though a more structured format (e.g., bullet points) could improve readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with async behavior and credit costs, the description covers creation steps, polling, output formats, and cost. It lacks error handling or edge case details, but overall is thorough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, providing baseline. The description adds value by explaining how parameters interact (e.g., 'For illustrations set image.prompt (English)', 'skip images for text-only slides', and layout descriptions) beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Generate a slide presentation (editable PPTX + PDF + PNG previews) from a DeckSpec you compose.' It specifies the outputs and differentiates from sibling tools like generate_image or compose_video.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on how to construct the DeckSpec, including required fields, layout options, image handling, and cost. It does not explicitly mention when to use this tool versus alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_scenarioAInspect

Plan a multi-scene video from a brief: an LLM director returns a structured scenario — per-scene English video prompts with durations, plus a soundtrack prompt. Feed each scene prompt to generate_video, then stitch the finished clips with compose_video. Charged in credits like chat (LLM usage).

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoLLM model slug (omit to use the default).
styleNoOptional visual style, e.g. 'cinematic', 'documentary', 'product ad', 'anime'.
promptYesWhat the final video is about: product, story, mood, audience. Any language.
scene_countNoNumber of scenes. Omit to derive from duration (~5s per scene).
aspect_ratioNo9:16
duration_secondsNoTarget total length of the final video.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate non-read-only, non-idempotent, and openWorldHint=true. The description adds that it is 'Charged in credits like chat (LLM usage),' providing cost transparency. It does not contradict annotations. It could detail output structure more, but the behavioral traits are adequately disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise: two sentences, front-loaded with purpose and output, followed by workflow and cost. Every sentence is necessary and no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a planning tool with no output schema, the description effectively communicates the output (structured scenario) and the integration with sibling tools. It also covers cost. However, it could be more complete by specifying the exact output format or providing an example, but it is sufficient for understanding.

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?

The input schema has 83% coverage with parameter descriptions. The description does not add significant new meaning beyond what the schema provides; it only implicitly references the 'prompt' parameter. With high schema coverage, baseline is 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Plan a multi-scene video from a brief.' It details the output (per-scene prompts, durations, soundtrack prompt) and distinguishes itself from sibling tools like generate_video and compose_video by specifying the workflow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use the tool (planning from a brief) and provides the subsequent steps: feed scenes to generate_video and stitch with compose_video. It also mentions cost context. However, it does not explicitly state when not to use or list alternatives, though sibling tools are available.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_videoAInspect

Start a video generation from a text prompt (text-to-video) or from a start image (image-to-video, pass image_url). Returns request_id and cost in credits immediately — video renders take 1–10 minutes, poll with wait_generation.

ParametersJSON Schema
NameRequiredDescriptionDefault
seedNoFixes randomness. Video renders one clip per call (no batch) — for multiple distinct variants run separate calls with a different seed each; identical calls within ~20s are de-duplicated to one generation.
inputNoAdvanced model-specific parameters (see get_model input_schema). Merged with the fields above.
modelNoModel slug from list_models. Omit to use the default video model (text-to-video or image-to-video is picked automatically based on image_url).
promptYesScene description. English recommended for best quality. Do not include on-screen text.
durationNoClip length in seconds (model-dependent, typically 5–10).
image_urlNoPublic https URL of the start frame — switches to image-to-video.
resolutionNoe.g. '480p', '720p', '1080p' where supported.
aspect_ratioNoe.g. '16:9', '9:16', '1:1'.
wait_secondsNoOptional inline wait before returning.
generate_audioNoGenerate a soundtrack/ambient audio where supported.
idempotency_keyNoOptional stable key to safely retry without creating (and paying for) a duplicate generation. Reuse the same key when retrying the same request.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description adds significant behavioral details beyond annotations: de-duplication within ~20s, one clip per call, need for separate calls with different seeds for variants, and approximate render time (1-10 min). Annotations only indicate non-readonly and non-destructive; description fills the gaps.

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?

Description is concise (one paragraph) and front-loaded with the core purpose. However, it could be slightly more structured (e.g., bullet points for two modes). No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 11 parameters, all documented in schema, and no output schema, the description covers return format (request_id, cost) and polling mechanism. It does not explicitly mention all sibling tools but the context is sufficient for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema already covers all 11 parameters with descriptions (100% coverage). The description adds value by explaining de-duplication behavior and idempotency_key usage, which is not fully captured in schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool starts video generation from text or image, with immediate return of request_id and cost, and distinguishes between text-to-video and image-to-video modes. It differentiates from siblings like generate_image and compose_video.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on when to use text-to-video versus image-to-video (by passing image_url). Mentions polling with wait_generation as a follow-up. Does not explicitly list when not to use but implies through context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_balanceA
Read-onlyIdempotent
Inspect

Get the credit balance of the connected Clipia account and 30-day usage of the current API key.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, and the description adds value by specifying exactly what data is returned (balance and usage).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, concise and front-loaded with key information without excess.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool is simple with no params and good annotations; the description adequately covers the return value context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, so baseline 4; description adds no param info but none needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves the credit balance and 30-day usage, which is specific and distinct from sibling tools like get_generation or get_model.

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?

No explicit guidance on when to use this tool versus alternatives; usage is implied but lacks exclusions or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_generationA
Read-onlyIdempotent
Inspect

Get the current status/result of a generation without waiting. When COMPLETED, output.images[].url is the inline webp preview and output.images[].original_url is the full-quality PNG/JPG.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYes
include_previewNo

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds value beyond annotations by detailing output structure when completed, including inline preview and original URL. No contradiction with readOnlyHint, idempotentHint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. First sentence captures core purpose, second adds crucial output detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple polling tool, covering main output. However, lacks description of behavior when generation is still pending (e.g., status without output).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description fails to explain the two parameters (request_id, include_preview), leaving the agent to infer their meaning from names alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and resource 'current status/result of a generation', distinguishing it from waiting alternatives like wait_generation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly mentions 'without waiting', indicating polling use case. Sibling tool wait_generation provides contrast, though no explicit when-not-to-use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_modelA
Read-onlyIdempotent
Inspect

Get model details: supported input parameters (input_schema) and base price in credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelYesModel slug.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds specific behavioral context about what is returned (input_schema and price), going beyond the structured data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no waste. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool (1 param, no output schema), the description adequately explains what is returned and the context. Annotations cover safety, making the description complete for this tool.

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 coverage is 100%, so the schema fully documents the 'model' parameter. The description does not add additional meaning to the parameter beyond what is in the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get model details' with specific outputs: input_schema and base price. This distinguishes it from siblings like list_models (which lists all models) and get_generation (which retrieves a generation).

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?

No explicit guidance on when to use this tool over alternatives. The sibling tools are listed but not referenced. Usage is implied by the type of data returned but lacks exclusions or comparisons.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_modelsA
Read-onlyIdempotent
Inspect

List available AI models with type (image/video/audio), capabilities and base price in credits. Use before generating if the user asks for a specific model or to compare options.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoFilter by model type.
limitNo
searchNoSubstring filter on slug/name.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description doesn't need to restate safety. It adds value by detailing the output content (type, capabilities, price), aiding the agent in understanding what to expect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with purpose and then usage. Every sentence adds value without redundancy, making it highly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with no output schema, the description covers all needed aspects: what it lists, why to use it, and the available filter (type). No critical information is missing.

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?

With 67% schema description coverage, the schema already documents the three parameters adequately. The description adds no additional meaning beyond what is in the schema, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'list' and the resource 'available AI models', specifying the attributes provided (type, capabilities, price). It distinguishes from sibling 'get_model' by indicating it lists multiple models for comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly advises when to use: 'before generating if the user asks for a specific model or to compare options.' While it doesn't specify when not to use, for a simple list tool this is sufficient guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_templatesA
Read-onlyIdempotent
Inspect

Search 3500+ curated prompt templates (hybrid text+semantic search, Russian or English query). Each result has a ready-to-use prompt and a recommended model — pass them to generate_image/generate_video.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes
media_typeNoFilter templates by output type.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, openWorldHint, and idempotentHint. The description adds valuable behavioral details: hybrid search type, language support, and that results are ready-to-use prompts with a recommended model. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences efficiently convey scope, search method, languages, output content, and usage direction. All information is front-loaded, with no redundant or unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description lacks details on pagination and exact return format, but given the simple parameter set and absence of output schema, the description covers key aspects: what is searched, results contain prompt and model, and next steps. It is sufficiently complete for effective use.

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 coverage is only 33% (media_type described). The description does not explain query or limit parameters beyond the schema. However, the description's context of search type and output purpose partially compensates for missing parameter details, so it's adequate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches prompt templates with specifics: 3500+ curated, hybrid text+semantic search, supports Russian/English query. It distinguishes from sibling generation tools by positioning it as a precursor to generate_image/generate_video.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use (to find prompt templates) and directs the output to generation tools, providing clear context. It does not include exclusions or alternatives, but there are no sibling search tools, so differentiation is implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wait_generationA
Read-onlyIdempotent
Inspect

Wait for a generation to finish (long-poll up to wait_seconds, then returns current status). Call repeatedly until status is COMPLETED, FAILED or CANCELED. Returns output URLs (and an inline image preview) when done.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYes
wait_secondsNo
include_previewNo

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, idempotentHint, openWorldHint. The description adds behavioral details: long-poll mechanism, statuses to poll for, and return content (output URLs, inline preview). This goes beyond annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the key purpose, and every sentence provides necessary information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a polling tool with 3 parameters and no output schema, the description covers the core flow and expected results. It lacks explicit mention of intermediate status fields or error handling, but overall it is reasonably complete.

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?

With 0% schema description coverage, the description must explain parameters. It mentions wait_seconds and implicitly include_preview via 'inline image preview', but request_id is not explained. It lacks explicit details on defaults and constraints, so it is adequate but not thorough.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it waits for a generation to finish using long-polling, and explicitly says to call repeatedly until COMPLETED, FAILED, or CANCELED. This distinguishes it from siblings like get_generation which likely just returns current status without blocking.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage guidance: call repeatedly until termination statuses. It implies when to use this tool (blocking wait) vs alternatives (simple status check), but does not explicitly exclude other use cases.

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. Dates show when Glama detected each change.

  1. 15 tool updatesv1.0.0
    • First observedapp_get_generation
    • First observedchat
    • First observedcompose_video
    • First observedgenerate_audio
    • First observedgenerate_image
    • First observedgenerate_music
    • First observedgenerate_presentation
    • First observedgenerate_scenario
    • First observedgenerate_video
    • First observedget_balance
    • First observedget_generation
    • First observedget_model
    • First observedlist_models
    • First observedsearch_templates
    • First observedwait_generation

TDQS

A3.9/5.0
Disambiguation4/5

Most tools have clearly distinct purposes (e.g., generate_audio, generate_image, generate_video). However, app_get_generation and get_generation overlap significantly, and wait_generation adds a third polling tool, causing potential confusion.

Naming Consistency4/5

The majority follow a verb_noun pattern (generate_*, get_*, list_models, search_templates). The only inconsistency is app_get_generation, which uses an unnecessary prefix and deviates from the standard naming style.

Tool Count5/5

With 15 tools, the server covers a broad range of media generation tasks (audio, image, video, music, presentation, chat) and supporting utilities (balance, model info, templates). This count is well-scoped for its purpose.

Completeness4/5

Core generation and retrieval workflows are covered, but missing tools for listing or deleting generations and updating existing content (e.g., presentations) create minor gaps that agents may need to work around.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/clipia-ai/clipia-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server