clipform avatar

Clipform

clipform/mcp-server

Connects Claude or any MCP client to Clipform's form builder API, letting you create and manage video-style forms entirely through conversation. The server exposes 20+ tools covering form CRUD, node manipulation, conditional logic, media uploads, and creative workflows like TTS generation, video rendering, and stock media search. Ships with both OAuth for remote use (forms land in your Clipform workspace) and local stdio mode with API key auth. Anonymous mode works too but caps you at 3 nodes per form. Grab this if you're building interactive forms programmatically or want to scaffold customer surveys, feedback flows, or lead capture without touching a UI.

tools
33
auth
Secret needed
transport
STDIO, HTTP
env vars
2
last updated
Nov 12, 2026

Install

From registry metadata
$ npx add-mcp https://mcp.clipform.io --name clipform

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http clipform https://mcp.clipform.io

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 33 tools

Verified live against the running server on Nov 6, 2026.

clipform_create_formCreate a new Clipform (interactive video-style form). Returns a viewer URL and form ID. When connected via an authenticated MCP client (e.g. claude.ai), the form lands directly in the user's workspace. Anonymous sessions build into a temporary account of their own: guests conn...10 params

Create a new Clipform (interactive video-style form). Returns a viewer URL and form ID. When connected via an authenticated MCP client (e.g. claude.ai), the form lands directly in the user's workspace. Anonymous sessions build into a temporary account of their own: guests conn...

Parameters* required
background_colorstring
Background color as 6-digit hex (e.g. '#1A1A2E').
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
disable_back_navigationboolean
Prevent going back. Set true for quizzes.
font_familystring
AI-PROTECTED: Only set when the user explicitly requests a specific font.
nodes*array
Ordered list of nodes/steps for the form
primary_colorstring
Primary/brand color as 6-digit hex (e.g. '#FF5500'). Used for buttons and accents.
show_step_counterboolean
Show step counter (e.g. '1/5'). Set true for quizzes.
tagsarray
Tags for indexing (e.g. ['quiz', 'trivia', 'arsenal']). Include format, genre, and topics.
title*string
Form title
workspace_idstring
Workspace to act in (id from clipform_whoami workspaces). Omit to use the connection's default workspace.
clipform_import_formCopies the questions from a public Google Form, Typeform, or Tally form into a new Clipform draft. The source form and its responses stay where they are. Supported URLs: Google Forms (docs.google.com or forms.gle - must be shared as "Anyone with the link"), Typeform (form.type...3 params

Copies the questions from a public Google Form, Typeform, or Tally form into a new Clipform draft. The source form and its responses stay where they are. Supported URLs: Google Forms (docs.google.com or forms.gle - must be shared as "Anyone with the link"), Typeform (form.type...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
url*string
Public URL of the Google Form, Typeform, or Tally form to import
workspace_idstring
Workspace to act in (id from clipform_whoami workspaces). Omit to use the connection's default workspace.
clipform_list_formsList forms in your workspace with optional filtering. Returns paginated results (cursor-based). next_cursor is included when more results exist. To find or open a form by name, pass search with part of its title instead of paging through results. Needs a signed-in Clipform acc...9 params

List forms in your workspace with optional filtering. Returns paginated results (cursor-based). next_cursor is included when more results exist. To find or open a form by name, pass search with part of its title instead of paging through results. Needs a signed-in Clipform acc...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
cursorstring
Pagination cursor from previous response's next_cursor
limitinteger
Number of forms to return (default 25, max 100)
orderstring
Sort order (default: desc, newest first)one of asc · desc
publishedstring
Filter by publish statusone of true · false
searchstring
Filter to forms whose title contains this text (case-insensitive substring). Use this to resolve a form by name in one call instead of paginating.
sortstring
Sort field (default: created_at)one of created_at · updated_at
tagstring
Filter by tag name(s), comma-separated. AND logic: only forms with ALL tags are returned.
workspace_idstring
Workspace to act in (id from clipform_whoami workspaces). Omit to use the connection's default workspace.
clipform_whoamiShow the current identity: auth mode (api key, oauth, session, or anonymous), active workspace, and plan limits. Needs a signed-in Clipform account (an anonymous session is asked to sign in).1 params

Show the current identity: auth mode (api key, oauth, session, or anonymous), active workspace, and plan limits. Needs a signed-in Clipform account (an anonymous session is asked to sign in).

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
clipform_get_formRetrieve a form's details including all nodes in sequential order and their routing. Returns title, settings, and every node with its options, config, media status, and next node (from clipform_set_logic).2 params

Retrieve a form's details including all nodes in sequential order and their routing. Returns title, settings, and every node with its options, config, media status, and next node (from clipform_set_logic).

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
clipform_update_formUpdate a form's title, publish status, settings, or tags. Only sends fields that are provided - omitted fields remain unchanged. AI-PROTECTED parameters have restrictions noted in their descriptions.17 params

Update a form's title, publish status, settings, or tags. Only sends fields that are provided - omitted fields remain unchanged. AI-PROTECTED parameters have restrictions noted in their descriptions.

Parameters* required
authorvalue
AI-PROTECTED: Only set when the user explicitly provides an author name. Set null to clear.
background_colorstring
Background color as 6-digit hex (e.g. '#1A1A2E').
brand_namevalue
AI-PROTECTED: Custom brand name shown in footer. Only set when user explicitly provides.
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
cover_media_asset_idvalue
Cover image: the picture shown in emails, link previews and on the embed button, cropped to the form's 9:16 frame. A media_asset_id of a ready still image in this form's workspace. Set null to clea...
descriptionvalue
SEO description (meta description, og:description). Set null to clear.
disable_back_navigationboolean
Prevent respondents from going back. Recommended for quizzes.
font_familystring
AI-PROTECTED: Only set when the user explicitly requests a specific font.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
is_liveboolean
Setting true publishes/republishes the snapshot respondents see. Forms are live from creation, but edits and media attached AFTER creation are not visible until you re-send true - republishing is t...
logo_urlvalue
AI-PROTECTED: Only set when the user explicitly provides a logo URL. Set null to clear.
primary_colorstring
Primary/brand color as 6-digit hex (e.g. '#FF5500'). Used for buttons and accents.
show_brandingboolean
Show Clipform branding. Set false to remove (Pro plan).
show_step_counterboolean
Show step counter (e.g. '1/5'). Recommended for quizzes.
tagsarray
Replace all tags on this form. Pass the full desired set (e.g. ['quiz', 'trivia', 'slug:elephants']). Omit to leave tags unchanged.
titlestring
New form title
total_stepsvalue
Override the total step count shown in the step counter. Set null to auto-calculate.
clipform_delete_formMove a form and all its nodes to the trash. It stops accepting responses immediately and can be restored later. Requires user confirmation before it runs. Needs a signed-in Clipform account (an anonymous session is asked to sign in).3 params

Move a form and all its nodes to the trash. It stops accepting responses immediately and can be restored later. Requires user confirmation before it runs. Needs a signed-in Clipform account (an anonymous session is asked to sign in).

Parameters* required
confirmboolean
Set to true ONLY after the user has explicitly confirmed this destructive action. Leave unset otherwise - hosts that support confirmation dialogs will prompt the user automatically.
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID to delete (returned by clipform_create_form, not the short share_id from the URL)
clipform_get_resultsView response counts, choice/action answer breakdowns, and recent open-text answers for a form. Answers to booking, contact details, file upload, drawing, camera, and payment nodes are counts only - use the dashboard for per-response detail. Needs a signed-in Clipform account...2 params

View response counts, choice/action answer breakdowns, and recent open-text answers for a form. Answers to booking, contact details, file upload, drawing, camera, and payment nodes are counts only - use the dashboard for per-response detail. Needs a signed-in Clipform account...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
clipform_get_responsesList a Clipform form's individual responses (submissions) with time filtering - complements clipform_get_results (aggregates). Answers questions like 'what came in during the last 24 hours', 'what's the longest answer', 'what did people say'. Text answers plus a non-PII paymen...7 params

List a Clipform form's individual responses (submissions) with time filtering - complements clipform_get_results (aggregates). Answers questions like 'what came in during the last 24 hours', 'what's the longest answer', 'what did people say'. Text answers plus a non-PII paymen...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
Form UUID (from clipform_list_forms / clipform_create_form)
limitinteger
Max responses to return (default 20, max 50)
querystring
Only responses whose text answers contain this string (case-insensitive)
sincestring
Only responses submitted at or after this ISO 8601 time (e.g. '2026-08-29T00:00:00Z')
sortstring
Order by submission time. Default: newestone of newest · oldest
untilstring
Only responses submitted at or before this ISO 8601 time
clipform_add_nodeAdd a new node to an existing form. Inserted before the end screen by default; after_node_id controls insertion position. Inserting into a linear flow automatically re-links the chain (the node before the insertion point points to the new node, which points to what followed) -...4 params

Add a new node to an existing form. Inserted before the end screen by default; after_node_id controls insertion position. Inserting into a linear flow automatically re-links the chain (the node before the insertion point points to the new node, which points to what followed) -...

Parameters* required
after_node_idstring
Insert after this node ID. Omit to append before the end screen.
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
node*object
The node to add
clipform_update_nodeUpdate one or more existing nodes' text, type, config, or options. Pass multiple updates in one call instead of separate tool calls. Requires node IDs (returned by clipform_create_form, clipform_add_node, or clipform_get_form). Does not change node positions in the flow. All t...3 params

Update one or more existing nodes' text, type, config, or options. Pass multiple updates in one call instead of separate tool calls. Requires node IDs (returned by clipform_create_form, clipform_add_node, or clipform_get_form). Does not change node positions in the flow. All t...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
updates*array
One or more node updates to apply
clipform_delete_nodeDelete a node from a form. The logic chain is automatically re-linked (the previous node will point to the next one). Cannot delete the start node or the last end screen. On a live form the node stays on the live form until the form is published. Requires user confirmation bef...4 params

Delete a node from a form. The logic chain is automatically re-linked (the previous node will point to the next one). Cannot delete the start node or the last end screen. On a live form the node stays on the live form until the form is published. Requires user confirmation bef...

Parameters* required
confirmboolean
Set to true ONLY after the user has explicitly confirmed this destructive action. Leave unset otherwise - hosts that support confirmation dialogs will prompt the user automatically.
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
node_id*string
The node ID to delete
clipform_upload_media_assetPut one or more media files into your workspace media library (max 10, uploaded sequentially). This is step one of attaching media to a node - follow up with clipform_attach_node_media to place the returned media_asset_id on a node. When a public URL is provided, the media is...5 params

Put one or more media files into your workspace media library (max 10, uploaded sequentially). This is step one of attaching media to a node - follow up with clipform_attach_node_media to place the returned media_asset_id on a node. When a public URL is provided, the media is...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
filesarray
Files attached by the host client. Each becomes a video or still library asset (or a consent-agreement document for application/pdf) based on its declared mime_type.
form_idstring
The form this is for (from clipform_create_form) - a routing hint only, to pick the right workspace. The result still lands in the workspace library, not on a node. Required on an anonymous session...
itemsarray
One or more media items to create as workspace library assets
workspace_idstring
Workspace to act in (id from clipform_whoami workspaces). Omit to use the connection's default workspace.
clipform_complete_media_uploadConfirm a signed-PUT still image upload finished, after PUTting the bytes to the upload_url returned by clipform_upload_media_asset. The API verifies the object actually landed in storage before flipping the asset from processing to ready - call this right after the PUT succee...3 params

Confirm a signed-PUT still image upload finished, after PUTting the bytes to the upload_url returned by clipform_upload_media_asset. The API verifies the object actually landed in storage before flipping the asset from processing to ready - call this right after the PUT succee...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_idstring
The form this is for (from clipform_create_form) - a routing hint only, to pick the right workspace. The result still lands in the workspace library, not on a node. Required on an anonymous session...
media_asset_id*string
The media_asset_id returned by clipform_upload_media_asset for the still image
clipform_attach_node_mediaAttach an existing workspace media asset (from clipform_upload_media_asset) to one or more nodes (max 10). Pass one item or many; multiple items attach sequentially. Only works on node types that support media (choice, open, scale, draw, binary, button). A media asset is reusa...3 params

Attach an existing workspace media asset (from clipform_upload_media_asset) to one or more nodes (max 10). Pass one item or many; multiple items attach sequentially. Only works on node types that support media (choice, open, scale, draw, binary, button). A media asset is reusa...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
items*array
One or more attachments to make
clipform_get_node_mediaGet the media attached to a node, including processing status. Useful for checking if a video upload has finished processing.3 params

Get the media attached to a node, including processing status. Useful for checking if a video upload has finished processing.

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
node_id*string
The node ID
clipform_delete_node_mediaRemove media from a node by unlinking it; the media asset and its files stay in the workspace library and keep working on any other node or live form that uses them. Requires user confirmation before it runs.4 params

Remove media from a node by unlinking it; the media asset and its files stay in the workspace library and keep working on any other node or live form that uses them. Requires user confirmation before it runs.

Parameters* required
confirmboolean
Set to true ONLY after the user has explicitly confirmed this destructive action. Leave unset otherwise - hosts that support confirmation dialogs will prompt the user automatically.
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
node_id*string
The node ID
clipform_set_logicSet the next node for one or more nodes, wiring a linear route (A to B to C). Pass multiple nodes in one call instead of separate tool calls. Each node routes to exactly one target node. Branching by which option a respondent picks is not configured here; it is set up in the f...3 params

Set the next node for one or more nodes, wiring a linear route (A to B to C). Pass multiple nodes in one call instead of separate tool calls. Each node routes to exactly one target node. Branching by which option a respondent picks is not configured here; it is set up in the f...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_id*string
The form UUID (returned by clipform_create_form, not the short share_id from the URL)
nodes*array
One or more nodes to set logic on
clipform_log_generationInternal audit step run by a form-generation workflow. Records a completed generation's content provenance (sources, image attributions) for the flow that just built the form. Not a user action - only call it as the final step of a generation workflow you are running, never in...4 params

Internal audit step run by a form-generation workflow. Records a completed generation's content provenance (sources, image attributions) for the flow that just built the form. Not a user action - only call it as the final step of a generation workflow you are running, never in...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
details*object
Content sources and attributions
form_id*string
The form ID (UUID format, not the share ID)
summary*string
Short description of what was generated
clipform_search_newsSearch recent news articles from NewsAPI and The Guardian and return them as structured results. Coverage: recent events, people, and topics (post-May-2025). Does NOT cover timeless topics (history, geography, science). Returns: article title, source, author, date, URL, descri...3 params

Search recent news articles from NewsAPI and The Guardian and return them as structured results. Coverage: recent events, people, and topics (post-May-2025). Does NOT cover timeless topics (history, geography, science). Returns: article title, source, author, date, URL, descri...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
countnumber
Max results per provider (default 5)
query*string
News search query (e.g. 'Iran war 2026', 'Australian Open final', 'UK election')
clipform_generate_ttsGenerate narration audio from text with word-level captions. Use this for quiz question narration, survey introductions, form instructions, or any node that benefits from a human voice. Proactively suggest narration for quizzes and content-rich forms - it significantly improve...4 params

Generate narration audio from text with word-level captions. Use this for quiz question narration, survey introductions, form instructions, or any node that benefits from a human voice. Proactively suggest narration for quizzes and content-rich forms - it significantly improve...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_idstring
The form this is for (from clipform_create_form) - a routing hint only, to pick the right workspace. The result still lands in the workspace library, not on a node. Required on an anonymous session...
items*array
One or more TTS items to generate
workspace_idstring
Workspace to act in (id from clipform_whoami workspaces). Omit to use the connection's default workspace.
clipform_search_mediaSearch images or stock video clips. Pass one query or many (max 10) - multiple queries run in one call instead of separate tool calls. Use results to feed into clipform_render_video_template (slideshow) for narrated slideshow videos, or upload directly as still images via clip...2 params

Search images or stock video clips. Pass one query or many (max 10) - multiple queries run in one call instead of separate tool calls. Use results to feed into clipform_render_video_template (slideshow) for narrated slideshow videos, or upload directly as still images via clip...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
queries*array
One or more search queries to run
clipform_render_compositionRender a specialised video composition to MP4 or PNG - custom animated visuals that a video template can't provide, such as geography animations or designed motion graphics. Available composition names and their required input props schemas come from clipform_list_compositions...10 params

Render a specialised video composition to MP4 or PNG - custom animated visuals that a video template can't provide, such as geography animations or designed motion graphics. Available composition names and their required input props schemas come from clipform_list_compositions...

Parameters* required
caption_refstring
Single render only: caption_ref from clipform_generate_tts - an opaque handle that attaches that TTS run's word-level captions to the media asset, resolved server-side. Preferred over captions. Onl...
captionsarray
Single render only: word-level captions from clipform_generate_tts, carried onto the attached media asset. Only used when node_id is set. For batch mode, set captions per item instead.
compositionIdstring
Single render: the composition ID. Call clipform_list_compositions to see available options (e.g. 'Slideshow', 'Map', 'Grid'). Use items instead for multiple renders.
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
form_idstring
The form UUID - required when node_id is set (single render) or any item sets node_id (batch).
inputPropsobject
Single render: props object matching the composition's schema from clipform_list_compositions. Validated STRICTLY - unknown or missing props fail with the schema in the error, nothing renders silen...
itemsarray
Batch mode: multiple renders in one call. All fire in parallel; returns one job ID per item - collect with clipform_check_render (job_ids). Use this whenever rendering more than one clip.
node_idstring
Single render only: form node to attach this render to automatically once it completes. Requires form_id. For batch mode, set node_id per item instead.
outputFormatstring
Single render: output format (default: mp4)one of mp4 · pngdefault: mp4
waitboolean
Single render only: true (default) blocks until the render is ready and returns its URL; false returns a job ID for clipform_check_render. Batch items always run fire-and-poll.default: true
clipform_search_musicSearch for royalty-free music tracks and ambient sounds. Quiz forms especially benefit from background music - it keeps energy up between questions. Also consider it for multi-step surveys and longer forms. Pass the returned URL as the audio for the slideshow video template vi...7 params

Search for royalty-free music tracks and ambient sounds. Quiz forms especially benefit from background music - it keeps energy up between questions. Also consider it for multi-step surveys and longer forms. Pass the returned URL as the audio for the slideshow video template vi...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
countinteger
Max results (default: 5)
instrumentalOnlyboolean
Only instrumental tracks (default: true)default: true
maxDurationnumber
Maximum duration in seconds
minDurationnumber
Minimum duration in seconds
query*string
What to search for (e.g. 'upbeat quiz background', 'calm ambient', 'playful pizzicato')
tagsarray
Genre/mood tags to filter by. Multiple tags are ANDed together (e.g. ['ambient', 'chill'] matches tracks tagged both).
clipform_list_compositionsBrowse available video compositions and their expected props schemas. Call this before using clipform_render_composition to discover visual styles and their input props. For an image or photo montage, reach for a video template (clipform_list_video_templates + clipform_render_...1 params

Browse available video compositions and their expected props schemas. Call this before using clipform_render_composition to discover visual styles and their input props. For an image or photo montage, reach for a video template (clipform_list_video_templates + clipform_render_...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
clipform_list_video_templatesBrowse available video templates - curated Scene arrangements (bed + overlay + sane defaults) that render through the Scene composition from a small controls object. Call this before clipform_render_video_template to see template names and their exposed controls. For a fully c...1 params

Browse available video templates - curated Scene arrangements (bed + overlay + sane defaults) that render through the Scene composition from a small controls object. Call this before clipform_render_video_template to see template names and their exposed controls. For a fully c...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
clipform_render_video_templateRender a curated video template (a pre-arranged Scene: bed + overlay + sane defaults) to MP4 or PNG from a small controls object, instead of hand-assembling Scene layers. Call clipform_list_video_templates first for available template names and their controls. Renders through...9 params

Render a curated video template (a pre-arranged Scene: bed + overlay + sane defaults) to MP4 or PNG from a small controls object, instead of hand-assembling Scene layers. Call clipform_list_video_templates first for available template names and their controls. Renders through...

Parameters* required
caption_refstring
caption_ref from clipform_generate_tts - an opaque handle that attaches that TTS run's word-level captions to the media asset, resolved server-side. Preferred over captions. Only used when node_id...
captionsarray
Word-level captions from clipform_generate_tts - carried onto the attached media asset. Only used when node_id is set.
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
controls*object
Template-specific controls (see clipform_list_video_templates for the exposed control surface).
form_idstring
The form UUID (required when node_id is set).
node_idstring
Form node to attach this render to automatically once it completes - skips the manual clipform_upload_media_asset + clipform_attach_node_media steps and republishes the form if it's currently live....
outputFormatstring
Output format (default: mp4)one of mp4 · pngdefault: mp4
template*string
Video template name (see clipform_list_video_templates).
waitboolean
true (default) blocks until the render is ready and returns its URL; false returns a job ID for clipform_check_render.default: true
clipform_list_assetsList available creative assets (sound effects, animations, fonts) for video compositions.2 params

List available creative assets (sound effects, animations, fonts) for video compositions.

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
typestring
Asset type to list (default: all)one of sfx · animation · font · all
clipform_check_renderCheck the status of render jobs started by clipform_render_video_template or clipform_render_composition. Pass job_ids to check a whole batch in ONE call - one line of status per job. Pass job_id for a single job. Returns the output URL for each completed render. Typical rende...3 params

Check the status of render jobs started by clipform_render_video_template or clipform_render_composition. Pass job_ids to check a whole batch in ONE call - one line of status per job. Pass job_id for a single job. Returns the output URL for each completed render. Typical rende...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
job_idstring
A single job ID returned by the render tool
job_idsarray
Multiple job IDs - check the whole batch in one call instead of one call per job
clipform_fetch_boundaryFetch a GeoJSON boundary polygon for a country, city, or region. Returns simplified GeoJSON ready to use as the 'boundary' prop in the Map composition. mainlandOnly excludes small islands and overseas territories (e.g. Corsica for France, Hawaii for USA).5 params

Fetch a GeoJSON boundary polygon for a country, city, or region. Returns simplified GeoJSON ready to use as the 'boundary' prop in the Map composition. mainlandOnly excludes small islands and overseas territories (e.g. Corsica for France, Hawaii for USA).

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
mainlandOnlyboolean
Keep only the largest landmass, excluding small islands and overseas territoriesdefault: true
maxPointsnumber
Maximum points per polygon ring for simplification (default 500, lower = smaller payload)default: 500
query*string
Place name (e.g. 'France', 'Paris', 'Tokyo', 'Brazil')
typestring
Type of place to search forone of country · city · state · regiondefault: country
clipform_get_guideRetrieve craft knowledge for building a specific form type. Returns question psychology, difficulty curves, narration style, scoring setup, and writing principles as markdown. Does NOT return a step-by-step build workflow - use clipform_get_workflow for that. Available types:...3 params

Retrieve craft knowledge for building a specific form type. Returns question psychology, difficulty curves, narration style, scoring setup, and writing principles as markdown. Does NOT return a step-by-step build workflow - use clipform_get_workflow for that. Available types:...

Parameters* required
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
type*string
Form type to get the craft guide for (accepts aliases like 'feedback' → survey)
variantstring
Quiz sub-variant. Only used when type is 'quiz'. Omit for a standard scored quiz.one of personality · comprehension · composition
clipform_get_workflowRetrieve a step-by-step build workflow for creating a specific form type. Returns the exact tool sequence, form settings, node configuration, scoring setup, and end screen config as a build recipe. Does NOT return craft knowledge (question psychology, difficulty curves, narrat...18 params

Retrieve a step-by-step build workflow for creating a specific form type. Returns the exact tool sequence, form settings, node configuration, scoring setup, and end screen config as a build recipe. Does NOT return craft knowledge (question psychology, difficulty curves, narrat...

Parameters* required
anonymousboolean
Anonymous survey (survey)
audiencestring
Target audience (quiz variant: comprehension)
categoriesstring
Comma-separated outcome categories (quiz variant: personality)
context*string
Describe the user's underlying goal in one sentence - not the tool you're calling.
criteriastring
Routing criteria (funnel)
event_namestring
Event or offering name (booking)
event_typestring
Type of event (booking)
needs_consentboolean
Include consent statement (interview)
needs_contactboolean
Include contact capture (funnel)
outcomesstring
Segments or recommendations (funnel)
purposestring
What you're collecting (interview)
question_countnumber
Number of questions, default 8 (quiz types)
response_formatstring
How respondents reply (interview)one of video · audio · text · all
rolestring
What the application is for (application)
topicstring
Topic or theme (quiz, survey)
type*string
Form type to get the build workflow for (accepts aliases like 'feedback' → survey)
use_casestring
What stories to collect (testimonial)
variantstring
Quiz sub-variant. Only used when type is 'quiz'. Omit for a standard scored quiz.one of personality · comprehension · composition
get_more_toolsCheck for additional tools whenever your task might benefit from specialized capabilities - even if existing tools could work as a fallback.1 params

Check for additional tools whenever your task might benefit from specialized capabilities - even if existing tools could work as a fallback.

Parameters* required
context*string
A description of your goal and what kind of tool would help accomplish it.

Sponsors

Configuration

CLIPFORM_API_KEY*secret

API key that scopes tool calls to your workspace (create one in the dashboard under Settings, API keys). Not needed to list tools, only to call them.

API_URL*default: https://api.clipform.io

Clipform API base URL.

Readme

@clipform/mcp-server

MCP server for Clipform - build and manage video-style forms from any MCP client (Claude, ChatGPT, Cursor, Windsurf, etc.).

Install

There are two ways to connect: remote (recommended, uses your Clipform account) and local (anonymous, free-tier limits).

Remote (recommended)

Use this if you have a Clipform account. Forms are created directly in your workspace and your plan tier applies (no 3-node cap on Pro).

Claude (claude.ai): Settings → Connectors → Add custom connector → enter https://mcp.clipform.io

ChatGPT: Settings → Connectors → Advanced → enable Developer Mode → Create connector → enter https://mcp.clipform.io (requires Pro/Team/Enterprise)

Any MCP client with OAuth: Point it at https://mcp.clipform.io - discovery, registration, and auth are handled automatically via OAuth 2.1 + Dynamic Client Registration (RFC 7591).

Local - Claude Code / Claude Desktop / Cursor / etc.

Use this for stdio-based MCP clients. Pass your API key to authenticate with your workspace and plan tier.


View the full README on GitHub

Details

Repository
github.com/clipform/mcp-server
Website
www.clipform.io
Category
Media & Entertainment
Package
@clipform/mcp-server
Transport
STDIO, HTTP
Auth
Required
Registry
MCP registry, active
Resources
13
Prompts
10
Tools verified
Nov 6, 2026

Related Media & Entertainment MCP servers

View all
152choujiang avatarSocialDataX 抖音 Douyin MCPcom.52choujiang/douyin-insightshot search、suggestions、video/user/product search、comments/replies、users/works/series、transcript0stars
2petabloom avatarPodcastscom.petabloom/podcastsAn MCP server that provides tools to discover and retrieve podcast episodes transcripts.0stars
3prizmad avatarPrizmadprizmad/prizmad-mcp-serverGenerate AI UGC video ads from any product URL — avatars, voiceover, OAuth Connect.0stars
4zype avatarServerzype/zype-mcpManage videos, playlists, analytics, and monetization for OTT streaming services.0stars
5defibabylon avatardefi-inteldefibabylon/defi-intelOperator-grade DeFi intelligence MCP. - 10 tools vs DefiLlama's basic 4, - adds governance proposals, - RWA attestation scores, - live X/Twitter narrative. - No0stars
6dewtech-technologies avatarTubemind Secure Mcpdewtech-technologies/tubemind-secure-mcpSecure MCP server for YouTube intelligence — 18 tools, OAuth2, OWASP Top 10 controls.0stars