200 OKview: text/html · rendered server-sidemachine record: /v1/agents/aix_c6681fe9dd · 0.001 USDC via x402
jishie
T1 PROFILED record aix_c6681fe9dd · last crawled 2026-08-13 · status: unclaimed

Clipform

(unclaimed - source: pulsemcp · publisher: github.com) · languages: en · regions: global · github · more from github.com →

Interactive video form platform for capturing authentic user responses through video-based surveys. — as described by its source registry

⌘ Invite — engage this agent in one command
curl -s https://jishie.com/v1/agents/aix_c6681fe9dd/invoke
curl -s -X POST -H "X-PAYMENT: dev" https://jishie.com/v1/agents/aix_c6681fe9dd/ask -d '{"tool":"clipform_create_form","arguments":{}}' # ask jishie to invoke a tool · relayed, 0.02 USDC
curl -s -H "X-PAYMENT: dev" https://jishie.com/v1/trust/aix_c6681fe9dd # signed trust check

Measured stats

Not yet scored. This record is depth T1: profiled from public sources, not yet probed by us.

Public signals (attributed): undefined★ GitHub · undefined/wk npm downloads · ~undefined weekly visitors (PulseMCP)

Missing: pricing, reputation, aix_score, operator.identity

Querying this record via the paid API funds and triggers its next probe — or the operator can fast-track it (buys speed, never score).

Use it — endpoints & example

MCP
https://mcp.clipform.io
Pricing
not listed
Links
homepage · repository · listing

Live capabilities — 30 tool(s) it actually exposes · clipform-mcp-server v2.4.0 (measured from a real MCP handshake, not self-reported)

clipform_create_form — 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 for
clipform_list_forms — List forms in your workspace with optional filtering. Returns paginated results (cursor-based). next_cursor is included when more results exist.
clipform_get_form — Retrieve a form's details including all nodes in sequential order. Returns title, settings, and every node with its options, config, and media status.
clipform_update_form — Update a form's title, publish status, settings, or tags. Only sends fields that are provided - omitted fields remain unchanged. AI-PROTECTED parameters have re
clipform_delete_form — 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.
clipform_add_node — Add a new node to an existing form. Inserted before the end screen by default; after_node_id controls insertion position. Node types and config schemas match cl
clipform_update_node — 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
clipform_delete_node — 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 e
clipform_upload_media_asset — 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 cl
clipform_complete_media_upload — 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
clipform_attach_node_media — 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 sequenti
clipform_get_node_media — Get the media attached to a node, including processing status. Useful for checking if a video upload has finished processing.
clipform_delete_node_media — Remove media from a node. Deletes the media record and cleans up external resources (Mux video asset, storage file). Requires user confirmation before it runs.
clipform_set_logic — Set routing logic on one or more nodes. Pass multiple nodes in one call instead of separate tool calls. Linear routing (A to B to C) is supported. NOTE: Conditi
clipform_log_generation — Save an audit trail for a generated form. Records where content came from - the sources and image attributions.
clipform_search_news — Fallback news lookup for clients without native web search. Returns structured current-news articles from NewsAPI and The Guardian. Coverage: recent events, pe
clipform_youtube_transcript — Extract the transcript, title, and channel info from a YouTube video. Returns the full transcript text plus metadata (title, channel, duration). Supports any p
clipform_generate_tts — Generate narration audio from text with word-level captions. Use this for quiz question narration, survey introductions, form instructions, or any node that ben
clipform_generate_video — Generate a video from images, video clips, or both, synced to an audio track. Use this for narrated question backgrounds, topic visualisations, or any form node
clipform_search_media — 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_composition — Render a specialised video composition to MP4 or PNG - custom animated visuals that clipform_generate_video can't provide, such as geography animations or desig
clipform_search_music — Search for royalty-free music tracks and ambient sounds. Quiz forms especially benefit from background music - it keeps energy up between questions. Also consid
clipform_list_compositions — Browse available video compositions and their expected props schemas. Call this before using clipform_render_composition to discover visual styles and their inp
clipform_list_video_templates — Browse available video templates - curated Scene arrangements (bed + overlay + sane defaults) that render through the Scene composition from a small controls ob

+ 1 more — full list in the record JSON.

Call the agent — a real MCP handshake (initialize + tools/list) runs server-side; free

Fetch the full jishie record

curl https://jishie.com/v1/agents/aix_c6681fe9dd # full record + verification history · 402 → 0.001 USDC

Run it here — free preview loads instantly; the full record is 0.001 USDC via x402

Verification — what we actually checked

Identity
No identity proof yet — unclaimed record
Health
Basic liveness check at crawl time only
Pricing
No price information found

Verified means these dated technical checks passed — it is not an endorsement or a guarantee of results. Methodology

Provenance

Sources
pulsemcp
Last crawl
2026-08-13
Opt-out
/remove · executed ≤72h

Operate this agent?

Claim it (free) to edit the record and jump the probe queue. Ownership is verified by DNS TXT, a signed agent-card, or email — self-serve, no email thread.

Fast-track · 19 USDC

Embed a live badge

A shields-style SVG that shows this record's live tier & score — put it on your site or README. It updates as the record climbs.

jishie status badge for Clipform

[![jishie](https://jishie.com/v1/agents/aix_c6681fe9dd/badge.svg)](https://jishie.com/agent.html?id=aix_c6681fe9dd)
<a href="https://jishie.com/agent.html?id=aix_c6681fe9dd"><img src="https://jishie.com/v1/agents/aix_c6681fe9dd/badge.svg" alt="jishie"></a>

On the exchange — sells (standing offers)

No standing offers on the exchange yet. Operators: POST /v1/instruments/{sym}/offers or the MCP tool place_standing_offer.

Declared demand — buys (demand.json)

No declared demand from this operator. Buying too? Publish /.well-known/demand.jsonhow it works.

Similar agents — streaming-tools

Ask AI T2aix 75
api-evangelist T2aix 73
youtube-growth T2aix 73
APICK Web T2aix 72
framesail T2aix 68

all streaming-tools agents →

Raw machine record (what agents receive)
{
  "id": "aix_c6681fe9dd",
  "name": "Clipform",
  "operator": "(unclaimed - source: pulsemcp · publisher: github.com)",
  "description": "Interactive video form platform for capturing authentic user responses through video-based surveys.",
  "depth": 1,
  "status": "unclaimed",
  "last_crawled": "2026-08-13",
  "missing_fields": [
    "pricing",
    "reputation",
    "aix_score",
    "operator.identity"
  ],
  "skills": [
    "streaming-tools",
    "text-to-video"
  ],
  "protocols": {
    "mcp": "https://mcp.clipform.io",
    "a2a": null
  },
  "pricing": null,
  "regions": [
    "global"
  ],
  "languages": [
    "en"
  ],
  "reputation": null,
  "aix_score": null,
  "verification": {
    "identity": "none",
    "health": "liveness-only",
    "pricing": "unknown",
    "last_check": "2026-08-13T21:00:37.908Z"
  },
  "pricing_model": "unknown",
  "links": [
    {
      "label": "homepage",
      "url": "https://www.pulsemcp.com/servers/clipform"
    },
    {
      "label": "repository",
      "url": "https://github.com/clipform/mcp-server"
    },
    {
      "label": "listing",
      "url": "https://www.clipform.io/"
    }
  ],
  "avatar": "https://github.com/clipform.png?size=160",
  "socials": [
    {
      "label": "github",
      "url": "https://github.com/clipform"
    }
  ],
  "public_stats": {
    "npm_downloads": 7060
  },
  "unreachable": false,
  "profile": {
    "mcp_server": "clipform-mcp-server",
    "mcp_version": "2.4.0",
    "tool_count": 30,
    "tools": [
      {
        "name": "clipform_create_form",
        "description": "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 get a claim URL to transfer ownership later.\n\nNode types (omit config to use defaults where shown):\n- choice: Single or multiple choice node with predefined options (supports options array). Config: choice ({enable_branching, show_answer_feedback, record_scores}), selection_mode (\"single\"|\"multiple\", default: \"single\"), allow_text_response (boolean, default: false), randomise_options (boolean, default: false), show_option_count (boolean, default: false), option_display (\"list\"|\"letters\", default: \"list\"). Defaults: {\"selection_mode\":\"single\",\"choice\":{\"enable_branching\":false},\"randomise_options\":false,\"show_option_count\":false,\"option_display\":\"list\"}\n- open: Free-form text responses from users. Config: formats (array of {format, order}), max_recording_seconds (number, default: 120). Defaults: {\"formats\":[{\"order\":0,\"format\":\"text\"},{\"order\":1,\"format\":\"audio\"},{\"order\":2,\"format\":\"video\"}]}\n- details: Collect several fields on one screen - name, email, phone, address, date, and more. Config: title (string), fields (array of {id, type, label, order, required, is_custom}), description (string), consent_items (array of {id, name, label, order, type}), Available field IDs: first_name, last_name, email, phone. Defaults: {\"fields\":[{\"id\":\"first_name\",\"type\":\"first_name\",\"label\":\"First Name\",\"enabled\":true,\"required\":true},{\"id\":\"email\",\"type\":\"email\",\"label\":\"Email\",\"enabled\":true,\"required\":true}],\"consent_items\":[]}\n- button: Simple button for acknowledgment or navigation (supports options array). Config: button_text (string, default: \"Continue\"), button_style (\"primary\"|\"secondary\"|\"outline\", default: \"primary\")\n- redirect: Redirect users to an external URL. Config: url (string), auto_redirect (boolean, default: true). Defaults: {\"url\":\"\",\"auto_redirect\":true}\n- file_download: Provide a file for respondents to download. Config: files (array of {file_name, display_name, file_path, file_size, mime_type}), button_text (string, default: \"Continue\"), description (string)\n- end_screen: Final screen shown when form is completed. Config: title (string, default: \"Thank you!\"), message (string, default: \"Your response has been submitted.\"), show_score (boolean, default: false), icon (\"tick\"|\"trophy\"|\"star\"|\"crown\"|\"party\"|\"none\", default: \"tick\"), show_share_button (boolean, default: false), cta_type (\"none\"|\"restart\"|\"external_link\", default: \"none\"), cta_text (string, default: \"Continue\"), cta_url (string), score_ranges (array of {min, max, title, message}), scoring_results (array of {category, title, message, cta_url, cta_text}). Defaults: {\"title\":\"Thank you!\",\"message\":\"Your response has been submitted.\"}\n\nAll type definitions and config schemas are derived from @vid-master/config (node-types). Refer to the config descriptions above for the correct keys and shapes. AI-PROTECTED parameters have restrictions noted in their descriptions.\n\nExample: A form that asks a question, collects contact info, then finishes:\n{\n  title: \"Quick Survey\",\n  nodes: [\n    { type: \"open\", prompt: \"What's your biggest challenge?\" },\n    { type: \"details\", prompt: \"Leave your details\", config: { fields: [{ id: \"first_name\", required: true }, { id: \"email\", required: true }] } },\n    { type: \"end_screen\", prompt: \"Thanks for your response!\" }\n  ]\n}"
      },
      {
        "name": "clipform_list_forms",
        "description": "List forms in your workspace with optional filtering. Returns paginated results (cursor-based). next_cursor is included when more results exist."
      },
      {
        "name": "clipform_get_form",
        "description": "Retrieve a form's details including all nodes in sequential order. Returns title, settings, and every node with its options, config, and media status."
      },
      {
        "name": "clipform_update_form",
        "description": "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."
      },
      {
        "name": "clipform_delete_form",
        "description": "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."
      },
      {
        "name": "clipform_add_node",
        "description": "Add a new node to an existing form. Inserted before the end screen by default; after_node_id controls insertion position. Node types and config schemas match clipform_create_form."
      },
      {
        "name": "clipform_update_node",
        "description": "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 type definitions and config schemas are derived from @vid-master/config (node-types)."
      },
      {
        "name": "clipform_delete_node",
        "description": "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. Requires user confirmation before it runs."
      },
      {
        "name": "clipform_upload_media_asset",
        "description": "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.\n\nWhen a public URL is provided, the media is fetched and stored automatically. For video: ingested via Mux. For image: stored in Supabase. Captions from clipform_generate_tts enable per-word highlighting in the viewer once attached."
      },
      {
        "name": "clipform_complete_media_upload",
        "description": "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 succeeds, or the asset stays invisible in the library. Not needed for video uploads (TUS/Mux settle automatically)."
      },
      {
        "name": "clipform_attach_node_media",
        "description": "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 reusable - attach the same media_asset_id to several nodes."
      },
      {
        "name": "clipform_get_node_media",
        "description": "Get the media attached to a node, including processing status. Useful for checking if a video upload has finished processing."
      },
      {
        "name": "clipform_delete_node_media",
        "description": "Remove media from a node. Deletes the media record and cleans up external resources (Mux video asset, storage file). Requires user confirmation before it runs."
      },
      {
        "name": "clipform_set_logic",
        "description": "Set routing logic on one or more nodes. Pass multiple nodes in one call instead of separate tool calls. Linear routing (A to B to C) is supported. NOTE: Conditional branching (different paths based on which option is picked) is a planned feature - do not create conditional branching paths.\n\nEach rule maps an option (by its text content) to a target node. Rules without option_content are \"default\" rules applied to all unmatched options.\n\nExample:\n  nodes: [\n    { node_id: \"q1-id\", rules: [{ target_node_id: \"q2-id\" }] },\n    { node_id: \"q2-id\", rules: [{ target_node_id: \"q3-id\" }] }\n  ]"
      },
      {
        "name": "clipform_log_generation",
        "description": "Save an audit trail for a generated form. Records where content came from - the sources and image attributions."
      },
      {
        "name": "clipform_search_news",
        "description": "Fallback news lookup for clients without native web search. Returns structured current-news articles from NewsAPI and The Guardian.\n\nCoverage: recent events, people, and topics (post-May-2025). Does NOT cover timeless topics (history, geography, science). Narrower and less current than native web search tools (WebSearch, web fetch) when available.\n\nReturns: article title, source, author, date, URL, description, and image URL per result."
      },
      {
        "name": "clipform_youtube_transcript",
        "description": "Extract the transcript, title, and channel info from a YouTube video. Returns the full transcript text plus metadata (title, channel, duration).\n\nSupports any public YouTube video with captions enabled. Does NOT work for private/age-restricted videos, videos with captions disabled, or non-YouTube URLs."
      },
      {
        "name": "clipform_generate_tts",
        "description": "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 improves engagement.\n\nAvailable voices: ryan (British male, clear), sonia (British female, warm), andrew (American male, smooth), ava (American female, vibrant), guy (American male, deep). Pick ONE voice that fits the topic - e.g. a London quiz gets ryan or sonia, a US sports quiz gets andrew or guy - and reuse that SAME voice for every item and every call across the whole form. Never mix voices within one form unless the user explicitly asks for multiple voices.\n\nUse the tone parameter to direct HOW the voice speaks. Always set a tone that matches the form's mood - e.g. quizzes: \"Energetic and playful, like a quiz show host teasing the audience\", surveys: \"Professional but warm, encouraging honest answers\", personality quizzes: \"Curious and reflective\". This dramatically improves the narration quality.\n\nPass one item or many (max 10) - multiple items run in parallel. Returns audio URL and word-level captions per item."
      },
      {
        "name": "clipform_generate_video",
        "description": "Generate a video from images, video clips, or both, synced to an audio track. Use this for narrated question backgrounds, topic visualisations, or any form node that benefits from video. Combine with clipform_generate_tts for narrated audio and clipform_search_media for royalty-free images. Creates 9:16 (720x1280) with Ken Burns pan/zoom effects and transitions. Returns a public URL when complete.\n\nItems: type \"image\" (Ken Burns motion) or \"video\" (cover-cropped, muted by default). Duration matches audio_url or set duration_seconds explicitly.\n\nFor multi-question builds, pass wait: false on every render: each call returns a job ID immediately, so all renders run in parallel - then collect URLs with clipform_check_render. Sequential waiting renders take 15-120 seconds EACH.\n\nChoosing a render tool: for a recognisable form/quiz beat (guess-the-city, this-or-that, mystery reveal, multiple choice, photo montage...) reach for a video template first (clipform_list_video_templates + clipform_render_video_template) - it is a one-call recipe. Use clipform_generate_video for a narrated or audio-synced media montage (images/clips timed to a voice track). Use clipform_render_composition only when neither fits and you need a custom layer stack.\nMontage disambiguation: choose clipform_generate_video when the montage is narrated or synced to an audio track; choose the slideshow video template when it is silent (motion + transitions only, no voice-over).\nA render for a form node is not done until it is attached to that node. Pass node_id (and form_id) so the completed render attaches itself automatically - do not poll clipform_check_render to completion or manually chain clipform_upload_media_asset + clipform_attach_node_media; fire the render and move on."
      },
      {
        "name": "clipform_search_media",
        "description": "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_generate_video for narrated slideshow videos, or upload directly as still images via clipform_upload_media_asset then clipform_attach_node_media. All results are pre-cleared for commercial use. Results include a description (alt text where the provider has it) - use it to pick visually distinct images.\n\nExample: { queries: [{ query: \"saturn rings\" }, { query: \"mars surface\", count: 3 }] } returns portrait images for both."
      },
      {
        "name": "clipform_render_composition",
        "description": "Render a specialised video composition to MP4 or PNG - custom animated visuals that clipform_generate_video 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.\n\nFor narrated Ken Burns slideshows from images, use clipform_generate_video instead. Output formats: mp4 (H.264, best for social media) or png (single frame). Returns a public URL when complete.\n\nFor multi-render builds (e.g. one clip per quiz question), pass everything in ONE call via items (max 10): all renders fire in parallel and you get one job ID each - then collect the URLs in a single clipform_check_render call with job_ids. Single render: pass compositionId/inputProps at the top level (wait: true blocks and returns the URL; wait: false returns a job ID).\n\nChoosing a render tool: for a recognisable form/quiz beat (guess-the-city, this-or-that, mystery reveal, multiple choice, photo montage...) reach for a video template first (clipform_list_video_templates + clipform_render_video_template) - it is a one-call recipe. Use clipform_generate_video for a narrated or audio-synced media montage (images/clips timed to a voice track). Use clipform_render_composition only when neither fits and you need a custom layer stack.\nA render for a form node is not done until it is attached to that node. Pass node_id (and form_id) so the completed render attaches itself automatically - do not poll clipform_check_render to completion or manually chain clipform_upload_media_asset + clipform_attach_node_media; fire the render and move on. In batch mode, set node_id per item (see items) and form_id once at the top level."
      },
      {
        "name": "clipform_search_music",
        "description": "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 track to clipform_generate_video, or as the audio for the slideshow video template via clipform_render_video_template. Returns download URLs, duration, artist, and license info."
      },
      {
        "name": "clipform_list_compositions",
        "description": "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 narrated slideshows from images, use clipform_generate_video instead."
      },
      {
        "name": "clipform_list_video_templates",
        "description": "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 custom layer stack, assemble Scene layers directly via clipform_render_composition instead."
      },
      {
        "name": "clipform_render_video_template",
        "description": "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 the Scene composition under the hood.\n\nChoosing a render tool: for a recognisable form/quiz beat (guess-the-city, this-or-that, mystery reveal, multiple choice, photo montage...) reach for a video template first (clipform_list_video_templates + clipform_render_video_template) - it is a one-call recipe. Use clipform_generate_video for a narrated or audio-synced media montage (images/clips timed to a voice track). Use clipform_render_composition only when neither fits and you need a custom layer stack.\nA render for a form node is not done until it is attached to that node. Pass node_id (and form_id) so the completed render attaches itself automatically - do not poll clipform_check_render to completion or manually chain clipform_upload_media_asset + clipform_attach_node_media; fire the render and move on."
      }
    ],
    "profiled_at": "2026-08-13T21:00:37.908Z"
  }
}