_ registry / mcp streamable-http · checked 2h ago

instantclips

https://app.instantclips.ai

Registry code: 0b73583f4e82b018

api record

InstantClips turns a product into a short vertical marketing video. Two

rules come first:

endpoint
https://app.instantclips.ai/mcp
protocol
streamable-http ·2025-06-18
authentication
bearer
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is instantclips live?
Yes — it answered the hub's last check (checked 2h ago). It answered 99% of checks over the last 30 days.
Is instantclips free to use?
Not anonymously — it asks for a key or a login before it will serve. Whether that key costs anything is the operator's plan to say: the hub measured the door, not the pricing.
What tools does instantclips have?
15 tools: create_product_from_images, create_brand, set_product_brand, update_product, rate_video, send_feedback, generate_video, list_brands, ….
Is instantclips safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
99.3%

90 days 99.3%· all time 99.4%

latency
836ms

last good check

priced tools
0

of 15 tools

_ answered our checks, 90 days 447 checks · signed record
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • create video ads from product urls
  • create video ads from product photos
takes → gives
web pages, images → video
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 15 tools
15 auth-required 15 of 15 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • create_product_from_images auth-required never probed

    Start a product from photos when it has no page (`import_product_from_url` when it does). Photos carry no brand: ask the user which, or pass `brand_id`. An external AI service then reads the photos; poll `get_product`.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "Product name."
        },
        "brand_id": {
          "type": "string",
          "description": "Only when the user said which brand this is (`list_brands`). Without it the product waits on the user's choice."
        },
        "image_urls": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "minItems": 1,
          "description": "Public photo URLs, best first: 8 MB each, 9 per render. Only URLs the user gave you or agreed to."
        },
        "description": {
          "type": "string",
          "description": "Optional. What the product is, in a sentence or two — feeds the direction draft."
        },
        "image_files": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "download_url",
              "file_id"
            ],
            "properties": {
              "file_id": {
                "type": "string"
              },
              "file_name": {
                "type": "string"
              },
              "mime_type": {
                "type": "string"
              },
              "download_url": {
                "type": "string"
              }
            },
            "additionalProperties": false
          },
          "description": "Photos attached to the conversation, as the client supplies them (download_url, file_id). Never build one by hand."
        },
        "creator_note": {
          "type": "string",
          "description": "Optional. The user's idea for the ad, in their words: the direction is written from it."
        }
      }
    }
    arguments 59 lines
  • create_brand auth-required never probed

    Create a brand for a product waiting on `brand_decision_required` and attach it; then offer its ideas. Ask the user first: it takes a brand slot. A photos product needs `name` from the user, and the voice, market and keywords they give.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "product_id"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "The brand's name, overriding the detected one. Required for a product made from photos."
        },
        "voice": {
          "type": "string",
          "description": "Optional. How the brand talks, in a sentence or two — the tone every video direction is drafted in."
        },
        "keywords": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional. A few short keywords for the brand's themes and audience — generic enough to survive a different product."
        },
        "product_id": {
          "type": "string",
          "description": "The product waiting on a brand decision."
        },
        "target_market": {
          "type": "string",
          "description": "Optional. Who it sells to, as \"Region, Language\" (e.g. \"US, English\"): every video's market and spoken language."
        }
      }
    }
    arguments 32 lines
  • set_product_brand auth-required never probed

    Attach a product waiting on `brand_decision_required` to an existing brand (`list_brands`), once the user confirms it belongs there; then offer its ideas (`get_product`). `replace_identity` rewrites that brand for every product on it.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "product_id",
        "brand_id"
      ],
      "properties": {
        "brand_id": {
          "type": "string",
          "description": "The brand to attach it to, from `list_brands`."
        },
        "product_id": {
          "type": "string",
          "description": "The product waiting on a brand decision."
        },
        "replace_identity": {
          "type": "boolean",
          "description": "Overwrite the brand's voice, market, keywords, logo and colors with this product's detected ones. Confirm with the user."
        }
      }
    }
    arguments 22 lines
  • update_product auth-required never probed

    Edit a product's name, description, price and posted `link_url`, and add or remove photos; only the fields you pass change. The direction is drafted from these facts, so `redraft_video_direction` after changing them.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "product_id"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "The product's name."
        },
        "price": {
          "type": "string",
          "description": "Free text as the store shows it, e.g. \"$29\" or \"¥3,980\". Empty clears it."
        },
        "link_url": {
          "type": "string",
          "description": "The product link posted with the video. http(s) only; empty clears it."
        },
        "product_id": {
          "type": "string",
          "description": "The product's id."
        },
        "description": {
          "type": "string",
          "description": "What the product is; the draft reads it. Empty clears it."
        },
        "add_image_urls": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Hosted photos to add, in order: 8 MB each, 9 per call. Only URLs the user gave you or agreed to."
        },
        "add_image_files": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "download_url",
              "file_id"
            ],
            "properties": {
              "file_id": {
                "type": "string"
              },
              "file_name": {
                "type": "string"
              },
              "mime_type": {
                "type": "string"
              },
              "download_url": {
                "type": "string"
              }
            },
            "additionalProperties": false
          },
          "description": "Photos attached to the conversation, as the client supplies them (download_url, file_id). Never build one by hand."
        },
        "remove_image_ids": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "image_id values from get_product's images to delete."
        }
      }
    }
    arguments 69 lines
  • rate_video auth-required never probed

    Record the user's own verdict on a finished video they have watched: `reaction`, and optional `issues` and `comment` in their words. Never rate for them, and ask at most once. A second call replaces the rating.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "video_request_id",
        "reaction"
      ],
      "properties": {
        "issues": {
          "type": "array",
          "items": {
            "enum": [
              "hook_script",
              "voice_audio",
              "product_unclear",
              "pacing",
              "visual_glitch"
            ],
            "type": "string"
          },
          "description": "What went wrong: the hook or script, voice or audio, the product not shown clearly, pacing and cuts, or a visual glitch."
        },
        "comment": {
          "type": "string",
          "description": "The user's own words, as they said them. Empty clears it."
        },
        "reaction": {
          "enum": [
            "liked",
            "disliked"
          ],
          "type": "string"
        },
        "video_request_id": {
          "type": "string",
          "description": "The finished video, from get_video or get_product's videos."
        }
      }
    }
    arguments 39 lines
  • send_feedback auth-required never probed

    Send the InstantClips team a note about these tools: one that failed or surprised, or something the user wanted that no tool does. Show the user the note and send it only with their OK. Not for support or ratings.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "message"
      ],
      "properties": {
        "message": {
          "type": "string",
          "maxLength": 2000,
          "description": "What happened, what was expected, and the tool and ids involved; leave out personal details it doesn't need."
        }
      }
    }
    arguments 14 lines
  • generate_video auth-required never probed

    Render the video. SPENDS THE USER'S CREDITS: ask first, with the direction, settings, cost and any watermark, and pass the cost as `expected_credit_cost`. External services render it; it gets a public share page and may send account email.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "product_id",
        "expected_credit_cost"
      ],
      "properties": {
        "product_id": {
          "type": "string",
          "description": "The product to render. Its current direction and settings are used as-is."
        },
        "expected_credit_cost": {
          "type": "integer",
          "description": "The cost you told the user, from get_product's video_direction.credit_cost. A stale one is refused, uncharged."
        }
      }
    }
    arguments 18 lines
  • list_brands auth-required 2h ago

    The account's brands, the plan's brand limit, and `account`: `credits_remaining`, `top_up_url`, and `watermarked: true` on a free account. Call it before answering `brand_decision_required`, so the user chooses a brand by name.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [],
      "properties": {}
    }
    arguments 6 lines
  • list_products auth-required 2h ago

    The account's products, newest first, including ones made on the website. Use it to find a product_id you don't have, then `get_product`. Carries `account`, as `list_brands` does.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [],
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 50,
          "minimum": 1,
          "description": "How many, newest first. Default 20."
        },
        "query": {
          "type": "string",
          "description": "Matches the product's name or source URL, case-insensitively."
        },
        "brand_id": {
          "type": "string",
          "description": "Only this brand's products."
        }
      }
    }
    arguments 21 lines
  • import_product_from_url auth-required never probed

    Start a product from its page URL; returns at once, so poll `get_product`. It detects the brand, and an external AI service reads the page into facts and ideas. A store locked to another account is refused and reported to support.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "url"
      ],
      "properties": {
        "url": {
          "type": "string",
          "description": "The product page URL the user gave you or agreed to, e.g. https://store.example.com/products/wool-runner"
        },
        "brand_id": {
          "type": "string",
          "description": "Only when the user said which brand this is (`list_brands`). Without it the import matches the storefront, or asks."
        }
      }
    }
    arguments 17 lines
  • get_product auth-required 2h ago

    Read a product: import status, brand decision, photos, the video direction with its settings and `credit_cost`, and its videos. Poll every 20-30 s while it imports or drafts. `next_step` says what to do now.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "product_id"
      ],
      "properties": {
        "product_id": {
          "type": "string",
          "description": "The product's id."
        }
      }
    }
    arguments 13 lines
  • update_brand auth-required never probed

    Edit a brand's `name`, `voice`, `target_market` or `keywords` (a new list replaces the old); only the fields you pass change. Future drafts use them; `redraft_video_direction` rewrites a direction already drafted.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "brand_id"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "The brand's name."
        },
        "voice": {
          "type": "string",
          "description": "How the brand sounds, in a few sentences."
        },
        "brand_id": {
          "type": "string",
          "description": "The brand's id, from list_brands."
        },
        "keywords": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The themes drafts lean on. Replaces the whole list."
        },
        "target_market": {
          "type": "string",
          "description": "Free text, e.g. \"US/North America\" or \"Japan\"."
        }
      }
    }
    arguments 32 lines
  • update_video_direction auth-required never probed

    Edit the next video's `creative_direction`, its idea (`creator_note`), settings and photos; only the fields you pass change. Settings are parameters, not direction text. A new idea, length or ratio rewrites the direction: poll `get_product`.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "product_id"
      ],
      "properties": {
        "ratio": {
          "enum": [
            "9:16",
            "3:4",
            "16:9",
            "1:1"
          ],
          "type": "string",
          "description": "Aspect ratio; 9:16 suits social feeds. A change rewrites an existing direction, unless creative_direction comes too."
        },
        "product_id": {
          "type": "string",
          "description": "The product's id."
        },
        "resolution": {
          "enum": [
            "480P",
            "720P",
            "1080P"
          ],
          "type": "string",
          "description": "720P and 1080P need a credit pack or an eligible plan. A higher pick saves the account's ceiling; adjustments says so."
        },
        "creator_note": {
          "type": "string",
          "description": "One of ideas word for word, or the user's words (max 4000). Rewrites the direction unless creative_direction comes too."
        },
        "target_market": {
          "type": "string",
          "description": "Free text, e.g. \"US/North America\". Sets the spoken language, and is saved on the brand for its other products."
        },
        "duration_seconds": {
          "enum": [
            15,
            20,
            25,
            30
          ],
          "type": "integer",
          "description": "Length in seconds, priced per second; the text never sets it. Above the plan's ceiling (free: 20) it saves that."
        },
        "creative_direction": {
          "type": "string",
          "description": "The full plan, max 6000 characters; edit the drafted one. Only its scenes make the video. Empty clears it."
        },
        "selected_image_ids": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Photos to render, in order, by get_product's image_id: usable ones, at most 9, held_back ones too. Empty: the default."
        }
      }
    }
    arguments 61 lines
  • redraft_video_direction auth-required never probed

    Draft the next video's direction through an external AI service: with none and no idea yet, from one of the product's ideas we choose; else another take in its format. It overwrites edits: confirm first. Poll `get_product`.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "product_id"
      ],
      "properties": {
        "product_id": {
          "type": "string",
          "description": "The product's id."
        }
      }
    }
    arguments 13 lines
  • get_video auth-required 24h ago

    Check one video's render. `next_step` says what to tell the user and when to poll again; follow it, since it knows how long this render has run. Mention a watermark only when `watermarked` appears. Done or failed: `launched_with` is its plan.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "video_request_id"
      ],
      "properties": {
        "video_request_id": {
          "type": "string",
          "description": "Returned by generate_video, and listed under `videos` in get_product."
        }
      }
    }
    arguments 13 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 0b73583f4e82b018.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/0b73583f4e82b018/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/0b73583f4e82b018/badge.svg)](https://brick.blue/agent/0b73583f4e82b018?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.