Connect Revelio to your AI assistant

Setup guide for the Revelio MCP connector. About 5 minutes.

In short

  1. In Revelio, open Connect AI apps and create a connection key.
  2. Copy the ready-made settings for Claude Desktop, Cursor, VS Code, or Claude Code into that app.
  3. Get the intended video's download details, download the MP4 with an authenticated file downloader, and upload the file through your publishing service before approving a post.
Revelio MCP endpoint

https://revelio.hypercape.com/api/mcp

What it does

MCP (Model Context Protocol) lets an AI assistant use tools from other services. With any Revelio connection key your assistant can read your account and get finished videos:

  • list_recent_completed_videos: lists your most recent finished videos (up to 20) so the assistant can pick one. A video you finished in the Revelio editor (with music, text or an outro) is listed separately and marked as the edited version, so you can ask for that one to be posted.
  • get_video_download: returns the stable MP4 download URL, an optional short-lived public handoff URL, and file details for a completed original or exported edit. It works independently of captions, covers, or publish readiness.
  • get_publish_package: returns a posting-ready package for one video: title, caption, hashtags, disclosure notes, the same authenticated video download URL, and a short-lived public video URL for URL-only publishing tools. An optional cover image has its own temporary URL.

It can also check your account and catalog for free: get_account (credits, features, Creator Cloud), list_products, get_product, list_story_ideas, list_characters, list_story_formats, get_video_status, get_request_status and estimate_credits. Creator Cloud subscribers also get list_cloud_assets and get_cloud_asset_download (a 5-minute link that counts against the monthly transfer quota).

Making content (paid). Only a key created with content creation turned on can use create_product, create_story_ideas, create_video, create_character and create_character_view. They spend your credits exactly like the same action in the app. A character can carry its Soul (its Markdown bible) and front, left-side, right-side and back images, and a character's story ideas can leave the product out entirely (productless), or skip the product altogether: call create_story_ideas with only a character or animal characterId for its own episodes, and list them with list_story_ideas by characterId. A video from create_video gets generated background music under its voices; pass backgroundMusic: false to make it without. Each call carries your own requestKey: repeating it never starts or charges twice. Add maxCredits to refuse anything more expensive; nothing is charged for a refused call. Such a key expires after 90 days.

The connector never posts anything. Posting is done by the posting tool you connect alongside it (see step 3).

1. Create a connection key

  1. Sign in to Revelio and open Connect AI apps.
  2. Optionally open Rename key (optional) and enter the app or device name. To let the assistant make products, ideas, videos and characters with your credits, tick Allow the AI to make content (uses credits). Then click Create connection key.
  3. The in-app page fills the key into the settings for you. It starts with rvl_ and is shown only once. If you lose it, delete it and create a new one.

You can have up to 5 active keys. Use one per app or device so you can delete them separately. In the examples below, replace YOUR_REVELIO_MCP_TOKEN with your key.

2. Connect your client

Pick the app you use. After adding Revelio, restart the app or reload its MCP servers.

Claude Desktop

Claude Desktop reaches key-protected servers through the small mcp-remote bridge, so Node.js 18 or newer must be installed.

  1. Open Settings → Developer → Edit Config. This opens claude_desktop_config.json.
  2. Add the revelio entry below inside mcpServers. Keep any servers already there.
  3. Save the file, then quit and reopen Claude Desktop.
claude_desktop_config.json

{
  "mcpServers": {
    "revelio": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://revelio.hypercape.com/api/mcp",
        "--header",
        "Authorization:${REVELIO_AUTH_HEADER}"
      ],
      "env": {
        "REVELIO_AUTH_HEADER": "Bearer YOUR_REVELIO_MCP_TOKEN"
      }
    }
  }
}

Keep Authorization: with no space before the variable, exactly as shown. The key itself goes in env.

Cursor

Add this to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project), or open Settings → MCP to add it there.

~/.cursor/mcp.json

{
  "mcpServers": {
    "revelio": {
      "url": "https://revelio.hypercape.com/api/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_REVELIO_MCP_TOKEN"
      }
    }
  }
}

VS Code (GitHub Copilot agent mode)

Add this to .vscode/mcp.json. VS Code asks for the key the first time and stores it securely, so the key never sits in the file.

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "revelio-mcp-token",
      "description": "Revelio MCP token",
      "password": true
    }
  ],
  "servers": {
    "revelio": {
      "type": "http",
      "url": "https://revelio.hypercape.com/api/mcp",
      "headers": {
        "Authorization": "Bearer ${input:revelio-mcp-token}"
      }
    }
  }
}

Claude Code

Run this once in a terminal. It makes Revelio available in every project.

Terminal

claude mcp add --transport http --scope user revelio https://revelio.hypercape.com/api/mcp \
  --header "Authorization: Bearer YOUR_REVELIO_MCP_TOKEN"

Check the connection with claude mcp list, or with /mcp inside a Claude Code session.

For developers

OpenAI Responses API

Pass the key as authorization; the API adds the Bearer prefix itself.

JavaScript

const response = await openai.responses.create({
  model: process.env.OPENAI_MODEL,
  input: 'Get my most recent completed Revelio video and return its publish package.',
  tools: [
    {
      type: 'mcp',
      server_label: 'revelio',
      server_url: 'https://revelio.hypercape.com/api/mcp',
      authorization: process.env.REVELIO_MCP_TOKEN,
      allowed_tools: ['list_recent_completed_videos', 'get_video_download', 'get_publish_package'],
      require_approval: 'never',
    },
  ],
});

Test the connection with curl

A working key returns serverInfo with the name revelio-mcp. A 401 means the key is wrong or deleted.

Terminal

# Set REVELIO_MCP_TOKEN privately in your local environment first.
curl --fail --silent --show-error -X POST "https://revelio.hypercape.com/api/mcp" \
  -H "Authorization: Bearer ${REVELIO_MCP_TOKEN}" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  --data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'

MCP tool calls use POST /api/mcp. File bytes use a separateGET /api/mcp/videos/{generationId}/download with the same Bearer key. The connector does not automatically pass its key to another tool.

Download an MP4 securely

# Set REVELIO_MCP_TOKEN privately; replace the example UUID with your video's ID.
# Send the key only to this trusted Revelio origin. Do not follow redirects.
curl --fail --silent --show-error \
  -H "Authorization: Bearer ${REVELIO_MCP_TOKEN}" \
  --output revelio-video.mp4 \
  "https://revelio.hypercape.com/api/mcp/videos/11111111-1111-4111-8111-111111111111/download"

3. Post with Metricool

Revelio supplies the video file and caption. If the destination accepts a raw video URL, use the short-lived media.videoPublicUrl from get_publish_package. Otherwise your assistant needs a file-download tool and a destination upload tool to transfer the MP4 to Metricool or another publishing service.

  1. Connect Revelio as shown in step 2 (Claude Desktop, Cursor, or Claude Code).
  2. Connect Metricool in the same app by following Metricool's MCP guide. Metricool signs you in with its own account login.
  3. Try a prompt like one of these:
Example prompts

List my 5 most recent Revelio videos.

Get the download details for my latest completed Revelio video using get_video_download.

Get the publish package for the video I choose and show me the caption, hashtags, and videoPublicUrl expiry.

If Metricool accepts a raw video URL, use videoPublicUrl before it expires. Otherwise download its MP4 using a trusted downloader configured with my Revelio Bearer key, then upload only the file to Metricool. Never send my Revelio key to Metricool. Ask me before publishing.

The owner video URL stays the same and can be downloaded again while your stored file and key remain valid. The publish package also includes a short-lived public transfer URL for a destination that cannot send Authorization headers. Send your Revelio key only to the trusted Revelio download origin, never to Metricool or another destination. No video regeneration or generation credits are needed for these reads. Request a new publish package after the public URL expires; it is not a permanent playback or embed URL.

Some AI apps keep the connector key hidden from other tools. In that case, use a supported Bearer downloader or a secure local command with the key in an environment variable; you can also sign in to Revelio and use Download video, then upload the MP4 manually.

A YouTube watch link cannot be used as Metricool's video-file URL. If your assistant cannot upload a local file, download the MP4 and add it through Metricool's media upload interface.

Always review the caption, hashtags, and disclosure notes before publishing. You are responsible for content you publish; see the Legal Notice.

Supported clients

AppRevelioNotes
Claude DesktopSupportedThrough the config file and mcp-remote (needs Node.js).
Cursor, VS CodeSupportedBuilt-in key header support.
Claude CodeSupportedBuilt-in key header support.
OpenAI Responses APISupportedFor developers building their own integration.
ChatGPT app (custom connectors)Not yetChatGPT connectors accept OAuth sign-in or no sign-in, not keys.
claude.ai Connectors screenNot yetAlso OAuth-only. Use the Claude Desktop config file above instead.

OAuth sign-in, which would let ChatGPT and claude.ai connect directly, is on our roadmap.

Troubleshooting

  • 401 / "Authentication required": the key is missing, mistyped, or deleted. Check that the header reads Bearer rvl_… with one space after "Bearer".
  • 403 / "This token cannot read Revelio videos": you used a general API token. Create a key on the Connect AI apps page instead.
  • 429 / too many requests: each key allows 60 MCP requests per minute, with a separate limit of20 publish packages and 20 file downloads per minute. Wait a minute and try again.
  • No videos listed: only finished, non-deleted videos appear. Card news and videos still generating are not included.
  • Video download fails: the file GET needs your Revelio Bearer key too. Check whether the downloader supports this header, the key is still active, and the completed file still belongs to your approved account and has not been deleted or lost. Use the signed-in Revelio download if your AI tools cannot authenticate the GET.
  • Claude Desktop does not show Revelio: check that Node.js is installed and the config file is valid JSON (no trailing commas), then fully quit and reopen the app.

Security

  • A key can only read your own finished videos. It cannot create, change, or delete anything.
  • Keep keys in private MCP settings or a secure local downloader environment. Never paste a key into a chat message, a URL, or a shared document.
  • If a key may have leaked, delete it on the Connect AI apps page. New tool calls and authenticated downloads are denied; a transfer already in progress may finish.