# Captions

```json
{
  "name": "Captions",
  "slug": "captions",
  "url": "https://composio.dev/toolkits/captions",
  "markdown_url": "https://composio.dev/toolkits/captions.md",
  "logo_url": "https://logos.composio.dev/api/captions",
  "categories": [
    "entertainment & media"
  ],
  "is_composio_managed": false,
  "updated_at": "2026-08-14T06:02:02.551Z"
}
```

![Captions logo](https://logos.composio.dev/api/captions)

## Description

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Captions MCP or direct API to generate videos, create speech, add styled captions, and automate video production through natural language.

## Summary

Captions provides the Mirage API for generating videos, speech, and styled captions.
Use it to automate polished video creation, voiceovers, and captioning from one API.

## Categories

- entertainment & media

## Toolkit Details

- Tools: 8

## Images

- Logo: https://logos.composio.dev/api/captions

## Authentication

- **Api Key**
  - Type: `api_key`
  - Description: Api Key authentication for Captions.
  - Setup:
    - Configure Api Key credentials for Captions.
    - Use the credentials when creating an auth config in Composio.

## Suggested Prompts

- Generate narrated product demo video
- Add styled captions to my video
- Create voiceover for training clip

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `CAPTIONS_ADD_CAPTIONS` | Add Captions | Start an asynchronous job that transcribes and renders a selected caption style onto an uploaded or existing completed video. Use CAPTIONS_GET_VIDEO_STATUS to monitor the returned job, then CAPTIONS_DOWNLOAD_VIDEO when it completes. This call consumes paid Mirage credits and cannot be cancelled or deleted once submitted. |
| `CAPTIONS_DOWNLOAD_VIDEO` | Download Video | Download the MP4 content of a completed video job and return an offloaded file reference. Use CAPTIONS_GET_VIDEO_STATUS first to confirm the job is COMPLETE. |
| `CAPTIONS_GENERATE_SPEECH` | Generate Speech | Generate WAV speech synchronously from text using a known Mirage voice ID and return an offloaded audio file reference. This call consumes paid Mirage credits and cannot be cancelled or deleted once submitted. |
| `CAPTIONS_GENERATE_VIDEO` | Generate Video | Start an asynchronous Mirage Video 1 job that animates a portrait image using speech audio. Use the returned job ID with CAPTIONS_GET_VIDEO_STATUS. This call consumes paid Mirage credits and cannot be cancelled or deleted once submitted. |
| `CAPTIONS_GET_CAPTION_TEMPLATE` | Get Caption Template | Retrieve one caption style by ID, including its name and preview video URL. |
| `CAPTIONS_GET_VIDEO_STATUS` | Get Video Status | Retrieve the current state, progress, and error details for a video generation or captioning job. |
| `CAPTIONS_LIST_CAPTION_TEMPLATES` | List Caption Templates | Return one page of available caption styles, including names and preview video URLs. |
| `CAPTIONS_LIST_VIDEOS` | List Videos | Return one page of video jobs owned by the connected Mirage account, including each job's status and progress. |

## Supported Triggers

None listed.

## Installation and MCP Setup

### Path 1: SDK Installation

#### Path 1, Step 1: Install Composio

Install the Composio SDK
```python
pip install composio_openai
```

```typescript
npm install @composio/openai
```

#### Path 1, Step 2: Initialize Composio and Create Tool Router Session

Import and initialize Composio client, then create a Tool Router session
```python
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
openai = OpenAI()
session = composio.create(user_id='your-user-id')
```

```typescript
import OpenAI from 'openai';
import { Composio } from '@composio/core';
import { OpenAIResponsesProvider } from '@composio/openai';

const composio = new Composio({
  provider: new OpenAIResponsesProvider(),
});
const openai = new OpenAI({});
const session = await composio.create('your-user-id');
```

#### Path 1, Step 3: Execute Captions Tools via Tool Router with Your Agent

Get tools from Tool Router session and execute Captions actions with your Agent
```python
tools = session.tools
response = openai.responses.create(
  model='gpt-4.1',
  tools=tools,
  input=[{
    'role': 'user',
    'content': 'Generate a short product launch video with speech and bold yellow captions'
  }]
)
result = composio.provider.handle_tool_calls(
  response=response,
  user_id='your-user-id'
)
print(result)
```

```typescript
const tools = session.tools;
const response = await openai.responses.create({
  model: 'gpt-4.1',
  tools: tools,
  input: [{
    role: 'user',
    content: 'Generate a short product launch video with speech and bold yellow captions'
  }],
});
const result = await composio.provider.handleToolCalls(
  'your-user-id',
  response.output
);
console.log(result);
```

### Path 2: MCP Server Setup

#### Path 2, Step 1: Install Composio

Install the Composio SDK for Python or TypeScript
```python
pip install composio claude-agent-sdk
```

```typescript
npm install @composio/core ai @ai-sdk/openai @ai-sdk/mcp
```

#### Path 2, Step 2: Initialize Client and Create Tool Router Session

Import and initialize the Composio client, then create a Tool Router session for Captions
```python
from composio import Composio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

composio = Composio(api_key='your-composio-api-key')
session = composio.create(user_id='your-user-id')
url = session.mcp.url
```

```typescript
import { Composio } from '@composio/core';

const composio = new Composio({ apiKey: 'your-api-key' });
const session = await composio.create('your-user-id');
console.log(`Tool Router session created: ${session.mcp.url}`);
```

#### Path 2, Step 3: Connect to AI Agent

Use the MCP server with your AI agent (Anthropic Claude or Mastra)
```python
import asyncio

options = ClaudeAgentOptions(
    permission_mode='bypassPermissions',
    mcp_servers={
        'tool_router': {
            'type': 'http',
            'url': url,
            'headers': {
                'x-api-key': 'your-composio-api-key'
            }
        }
    },
    system_prompt='You are a helpful assistant with access to Captions tools.',
    max_turns=10
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query('Add clean social media captions to this uploaded promo video')
        async for message in client.receive_response():
            if hasattr(message, 'content'):
                for block in message.content:
                    if hasattr(block, 'text'):
                        print(block.text)

asyncio.run(main())
```

```typescript
import { openai } from '@ai-sdk/openai';
import { experimental_createMCPClient as createMCPClient } from '@ai-sdk/mcp';
import { generateText } from 'ai';

const client = await createMCPClient({
  transport: {
    type: 'http',
    url: session.mcp.url,
    headers: {
      'x-api-key': 'your-composio-api-key',
    },
  },
});

const tools = await client.tools();
const { text } = await generateText({
  model: openai('gpt-4o'),
  tools,
  messages: [{
    role: 'user',
    content: 'Add clean social media captions to this uploaded promo video'
  }],
  maxSteps: 5,
});

console.log(`Agent: ${text}`);
```

## Why Use Composio?

### 1. AI Native Captions Integration

- Supports both Captions MCP and direct API based integrations
- Structured, LLM-friendly schemas for reliable video, speech, and caption tool execution
- Rich coverage for generating videos, creating voiceovers, and adding styled captions

### 2. Managed Auth

- Secure API key storage so Captions credentials stay out of prompts and code
- Central place to manage, scope, and revoke Captions access
- Per user and per environment credentials instead of hard-coded keys

### 3. Agent Optimized Design

- Tools are tuned using real error and success rates to improve reliability over time
- Clear schemas help agents understand Captions tasks like generating speech or captioning a video
- Comprehensive execution logs so you always know what ran, when, and on whose behalf

### 4. Enterprise Grade Security

- Fine-grained RBAC so you control which agents and users can access Captions
- Scoped, least privilege access to Captions video and speech generation workflows
- Full audit trail of agent actions to support review and compliance

## Use Captions with any AI Agent Framework

Choose a framework you want to connect Captions with:

- [ChatGPT Work](https://composio.dev/toolkits/captions/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/captions/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/captions/framework/hermes-agent)

## Related Toolkits

- [Youtube](https://composio.dev/toolkits/youtube) - YouTube is a leading video-sharing platform for uploading, streaming, and discovering content. It empowers creators and businesses to reach global audiences and monetize their work.
- [AllTrails MCP](https://composio.dev/toolkits/alltrails_mcp) - AllTrails MCP is a trail discovery service for hiking, biking, and running routes. Use it to find reviewed trails, photos, maps, difficulty info, and route details fast.
- [Amara](https://composio.dev/toolkits/amara) - Amara is a collaborative platform for creating and managing subtitles and captions for videos. It helps make content accessible and multilingual for global audiences.
- [Cats](https://composio.dev/toolkits/cats) - Cats is an API with a huge library of cat images, breed data, and cat facts. It makes finding adorable cat photos and trivia effortless for your apps and users.
- [Chatfai](https://composio.dev/toolkits/chatfai) - Chatfai is an AI platform that lets users talk to AI versions of fictional characters from books, movies, and games. It offers an engaging, interactive experience for fans to chat, roleplay, and explore creative dialogues.
- [Cincopa](https://composio.dev/toolkits/cincopa) - Cincopa is a multimedia platform for uploading, managing, and customizing videos, images, and audio. It helps you deliver engaging media experiences with robust APIs and flexible integrations.
- [Dungeon fighter online](https://composio.dev/toolkits/dungeon_fighter_online) - Dungeon Fighter Online (DFO) is an arcade-style, side-scrolling action RPG packed with dynamic combat and progression. Play solo or with friends to battle monsters, complete quests, and upgrade your characters.
- [Elevenlabs](https://composio.dev/toolkits/elevenlabs) - Elevenlabs is an advanced AI voice generation platform for lifelike, multilingual speech synthesis. Perfect for creating natural voices for videos, apps, and business content in seconds.
- [Elevenreader](https://composio.dev/toolkits/elevenreader) - Elevenreader is an AI-powered text-to-speech service by ElevenLabs that converts written content into lifelike audio. It enables fast, natural audio generation from any text.
- [Epic games](https://composio.dev/toolkits/epic_games) - Epic Games is a leading video game publisher and digital storefront, known for Fortnite and Unreal Engine. It lets gamers access, manage, and purchase games all in one place.
- [Eranol](https://composio.dev/toolkits/eranol) - Eranol is an API-driven media conversion service for video, audio, and FFmpeg workflows. It helps teams automate reliable transcoding, format conversion, and media processing at scale.
- [Fal.ai](https://composio.dev/toolkits/fal_ai) - Fal.ai is a generative media platform offering 600+ AI models for images, video, voice, and audio. Developers use Fal.ai for fast, scalable access to cutting-edge generative AI tools.
- [Giphy](https://composio.dev/toolkits/giphy) - Giphy is the largest online library for searching and sharing GIFs and stickers. Instantly add vibrant animated content to your apps, chats, and workflows.
- [Headout](https://composio.dev/toolkits/headout) - Headout is a global platform for booking travel experiences, tours, and entertainment. It helps users discover and secure activities at top destinations, all in one place.
- [Imagekit io](https://composio.dev/toolkits/imagekit_io) - ImageKit.io is a cloud-based media management platform for image and video delivery. Instantly optimize, transform, and deliver visuals globally via a lightning-fast CDN.
- [Listennotes](https://composio.dev/toolkits/listennotes) - Listennotes is a powerful podcast search engine with a massive global database. Discover, search, and curate podcasts from around the world in seconds.
- [News api](https://composio.dev/toolkits/news_api) - News api is a REST API for searching and retrieving live news articles from across the web. Instantly access headlines, coverage, and breaking stories from thousands of sources.
- [RAWG Video Games Database](https://composio.dev/toolkits/rawg_video_games_database) - RAWG Video Games Database is the largest video game discovery and info service. Instantly access comprehensive details, ratings, and release dates for thousands of games.
- [Seat geek](https://composio.dev/toolkits/seat_geek) - SeatGeek is a live event platform offering APIs for concerts, sports, and theater data. Instantly access events, venues, and performers info for smarter ticketing and discovery.
- [Shotstack](https://composio.dev/toolkits/shotstack) - Shotstack is a cloud platform for programmatically generating videos, images, and audio. Automate creative content production at scale with flexible RESTful APIs.

## Frequently Asked Questions

### Do I need my own developer credentials to use Captions with Composio?

Yes, Captions requires you to configure your own API key credentials. Once set up, Composio handles secure credential storage and API request handling for you.

### Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. [Learn more](https://docs.composio.dev/tool-router/overview).

### Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. [Learn more](https://trust.composio.dev).

### What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
