{
  "info": {
    "name": "Captions — mcp.ai",
    "description": "REST API for the Captions MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/captions",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "captions_add_captions",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/add/captions",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "add",
            "captions"
          ]
        },
        "description": "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_D",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"video\": {},\n  \"video_id\": \"\",\n  \"caption_template_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "captions_download_video",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/download/video",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "download",
            "video"
          ]
        },
        "description": "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.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"video_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "captions_generate_speech",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/generate/speech",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "generate",
            "speech"
          ]
        },
        "description": "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 s",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"text\": \"\",\n  \"voice_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "captions_generate_video",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/generate/video",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "generate",
            "video"
          ]
        },
        "description": "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",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"audio_reference\": {},\n  \"image_reference\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "captions_get_caption_template",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/caption/template",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "caption",
            "template"
          ]
        },
        "description": "Retrieve one caption style by ID, including its name and preview video URL.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"template_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "captions_get_video_status",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/video/status",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "video",
            "status"
          ]
        },
        "description": "Retrieve the current state, progress, and error details for a video generation or captioning job.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"video_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "captions_list_caption_templates",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/caption/templates",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "caption",
            "templates"
          ]
        },
        "description": "Return one page of available caption styles, including names and preview video URLs.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "captions_list_videos",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/videos",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "videos"
          ]
        },
        "description": "Return one page of video jobs owned by the connected Mirage account, including each job's status and progress.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"order\": \"\",\n  \"cursor\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}