OpenClipDocs
Developers & agents

MCP tools

The 31 tools on OpenClip's full MCP server and the 10-tool ChatGPT app scope.

The full OpenClip MCP server exposes 31 tools. This page is an overview so you know what is there. The canonical, always-current parameter reference is the skill bundle at https://openclip.app/mcp/skill (its SKILL.md and reference.md) and the machine-readable page at https://openclip.app/mcp.md. Those files are kept in lockstep with the server by CI; this page deliberately does not duplicate their parameter-level detail.

Not set up yet? Start at Connect over MCP.

Endpoint scope

EndpointAuthenticationTools
https://openclip.app/mcpOAuthFull 31-tool server
https://openclip.app/mcp/keyBearer tokenFull 31-tool server
https://openclip.app/mcp/appOAuthCurated 10-tool ChatGPT app

The ChatGPT app exposes get_account, submit_video, list_videos, get_video_status, get_render_status, list_clips, render_clip, list_caption_presets, list_supported_providers, and get_transcript. The sections below describe the full 31-tool server.

Clipping pipeline

The paid core flow: submit a long video, poll until processed, read the ranked Viral Moments, render captioned clips.

ToolWhat it does
submit_videoSubmit a source video URL (YouTube, Vimeo, Google Drive, Dropbox, OneDrive, and more) to start clip detection
get_video_statusPoll one video's processing status until it completes or fails
list_clipsList a video's detected Viral Moments: hook, virality score, timestamps, clip URLs
render_clipProduce a final captioned render of one Viral Moment
get_render_statusCheck the render state of a video's Viral Moments
list_caption_presetsList the caption style presets available for rendering
get_transcriptGet a processed video's time-coded transcript, sliceable by millisecond window
list_supported_providersList the video sources submit_video accepts
list_videosList the team's videos, most recent first

Uploads

ToolWhat it does
create_uploadStart an upload of a local file; returns a presigned URL you PUT the bytes to
complete_uploadFinish an upload and start the paid clipping pipeline (skip this for free tools)

Free media utilities

These need an account but no subscription. All are async: they return a tool_job id you poll.

ToolWhat it does
transcribeTranscribe an uploaded video into time-coded text with JSON, SRT, and VTT downloads
edit_videoCrop, trim, rotate, resize, compress, or mute an uploaded video
convert_mediaConvert an uploaded file to another video container, a GIF, or an audio format
extract_thumbnailsExtract evenly spaced thumbnail frames from an uploaded video
edit_imageCompress, resize, or crop an uploaded image
remove_backgroundRemove an image's background and return a transparent PNG
get_tool_job_statusPoll a free tool job until it completes or fails

UGC generation

ToolWhat it does
generate_ugcGenerate a short vertical UGC-style video from a creative brief
get_ugc_job_statusPoll a UGC generation job for its status and final clip URL
list_ugc_creatorsList the UGC spokespersons available to your team, grouped by niche
list_ugc_jobsList the team's UGC generation jobs, most recent first

Account and presets

ToolWhat it does
get_accountReturn the connected account: identity, team, and remaining credits
get_usageReturn the team's credit balance and recent usage history
list_agentsList the team's saved processing agents and caption presets
create_agentCreate a processing agent for the team
update_agentUpdate one of the team's agents
describe_agent_settingsDescribe every nested agent setting, its type, and allowed values
create_agent_logo_uploadStart uploading a logo image for an agent's watermark
set_agent_logoFinish setting an agent's logo after the upload

Documentation

ToolWhat it does
search_docsSearch this documentation and return the most relevant pages with excerpts

How the tools behave

Three patterns show up everywhere:

  • Poll, don't wait. Long jobs (submit_video, render_clip, free tools, UGC) return an id immediately; poll the matching status tool until the state is terminal.
  • Ids are opaque hashids. Pass them back exactly as returned.
  • Times are milliseconds across clips and transcripts, so a clip's window slots straight into get_transcript.

On this page