MCP connector

Treza for Claude, ChatGPT, and Cursor

Give your assistant a video pipeline. Connect Treza’s hosted Model Context Protocol server and it can build a pipeline from a brief, run it, follow the render, and publish the result to a channel you connected. One URL, sign in once.

https://www.trezalabs.com/api/mcp

What your assistant can do once connected

Every tool maps to a step a producer takes, scoped to the account that signed in. The pipelines are whatever you built on the canvas, or whatever the assistant builds for you.

  • Build a pipeline from a brief

    Describe the video you want. The assistant starts from a template or the node vocabulary, creates the pipeline as a draft on your account, and fixes validation issues before anything runs.

  • Run it and follow the render

    run_pipeline starts the render on Treza's workers and returns a run id immediately. The assistant polls get_run and comes back with per-node results and the output URLs when the status flips.

  • Publish to a connected channel

    list_connected_channels returns the ids a YouTube, TikTok, or Instagram upload node needs, so a pipeline can end with the video uploaded to a channel you connected once in Settings.

  • Check credits before spending them

    estimate_run_cost prices one run against the current balance, and get_credit_balance returns the balance, plan usage, and a top-up link to hand to a person when it runs low.

  • Keep a schedule honest

    Pipelines whose published snapshot carries a schedule-trigger fire on their own. The assistant reports each schedule's state and next fire time, and pauses or resumes it without touching the published graph.

Add it to your client

The server speaks standard Streamable HTTP MCP, so every client uses the same URL. On first use the client sends you to Treza to sign in and approve the scopes it asked for. No key touches the chat or a config file.

claude.ai (custom connector)
Open Settings, then Connectors, then Add custom connector, and enter https://www.trezalabs.com/api/mcp as the URL. Claude walks you through signing in to Treza and approving access. Approve once and the connector stays linked to your account.
Claude Code
claude mcp add --transport http treza https://www.trezalabs.com/api/mcp
Cursor (.cursor/mcp.json or ~/.cursor/mcp.json)
{
  "mcpServers": {
    "treza": {
      "url": "https://www.trezalabs.com/api/mcp"
    }
  }
}
ChatGPT and other MCP clients
# Any MCP client that speaks Streamable HTTP.
# OAuth sign-in on first use, or a scoped API key as a bearer:
Authorization: Bearer treza_live_...

In Cursor, open Settings, Tools & MCP, New MCP Server, paste the JSON, and enable it. Any other client that speaks Streamable HTTP MCP connects with the same URL: it completes the OAuth sign-in if it supports one, or sends a scoped API key with pipelines:read and pipelines:run permissions in the Authorization header. The Cursor walkthrough covers the editor setup step by step.

Sign in, then approve exactly these scopes

The consent page lists each scope the client requested, and the connection gets only what you approve.

  • pipelines:readView your pipelines and their runs
  • pipelines:runStart pipeline runs (spends account credits)
  • pipelines:writeCreate, edit, and publish pipelines
  • keys:provisionCreate scoped API keys for your account

Runs spend prepaid credits

A run started from chat is charged the same way as one started from the dashboard or the API: it draws the account’s prepaid balance and appears in the same run history with per-node results. The assistant can call estimate_run_cost before committing, and when the balance runs low, get_credit_balance returns a top-up link for a signed-in person. Credit packs are on the pricing page.

The tools, grouped by job

Sixteen tools, each one a production step rather than a model parameter. That keeps tool selection reliable when the assistant is juggling your request alongside everything else in context.

Authoring

Requires the pipelines:write scope.

  • list_pipeline_templatesReady-made pipelines that create_pipeline can copy, each with the entry nodes a run's inputs are keyed by.
  • list_node_typesThe node types available for building graphs, grouped by category.
  • get_node_typePorts and config schema for one node type, with the live model catalog on model-bearing nodes.
  • create_pipelineCreate a draft pipeline from a template id or an initial node graph.
  • update_pipelineRename a pipeline, change its description, or replace its graph. Error-level issues block the write.
  • publish_pipelineSnapshot the draft as an immutable deployed version that schedules and the public APIs run.

Running

run_pipeline requires the pipelines:run scope.

  • list_pipelinesEvery pipeline on the account, with status, schedule state, and a summary of recent runs.
  • get_pipelineOne pipeline's metadata and node summary, or the complete graph with includeGraph.
  • run_pipelineStart a run in the background and get a run id back at once. Inputs are keyed by entry node id.
  • get_runOverall status plus per-node results and output URLs. Poll it until the status leaves running.
  • list_runsRecent runs for a pipeline, newest first.
  • set_schedule_pausedPause or resume a published pipeline's schedule. Resuming skips the slots missed while paused.

Budgeting

Read-only, so any connection can call these.

  • estimate_run_costWhat one run of the draft graph will charge, and whether the balance covers it.
  • get_credit_balancePrepaid balance, plan usage, and purchasable credit packs, with a top-up link for a signed-in person.

Publishing and access

create_api_key needs the keys:provision scope, which only an OAuth consent or first-party session carries.

  • list_connected_channelsThe YouTube channels, TikTok accounts, and Instagram accounts on the account, with the ids a publishing node needs.
  • create_api_keyMint a durable scoped treza_live_ key for headless use of the pipeline APIs and MCP. The raw key is shown once.

A brief becomes a pipeline

How a request plays out over the connector. The assistant picks the tools; the pipeline does the production.

  1. You

    Turn the newest episode of my podcast feed into a captioned vertical Short every week and post it to my YouTube channel.

  2. Assistant

    Calls list_pipeline_templates and finds Podcast Clip Factory, a template that pulls the newest episode from an RSS feed, picks the most shareable 30 to 60 second moment, cuts it, and builds a captioned cover-art Short. Calls list_connected_channels to get the channel id for the upload node, then create_pipeline with templateId podcast-clip-factory and the feed URL, and update_pipeline to point the upload node at your channel and set the weekly schedule-trigger.

  3. Assistant

    Calls estimate_run_cost, reports the estimated charge against the balance, and asks whether to proceed.

  4. You

    Go ahead, and run one now so I can check it.

  5. Assistant

    Calls run_pipeline and gets a run id back immediately, then polls get_run while the render happens on Treza's workers. Reports the per-node results and the finished Short's URL. When you are happy with it, publish_pipeline arms the weekly schedule.

Frequently asked questions

Do I need an API key to connect?

No. Adding the URL starts an OAuth flow: the client sends you to Treza, you sign in, and a consent page lists the exact scopes being requested for you to approve. No key touches the chat, a config file, or a committed repo. Headless clients can use a scoped treza_live_ API key as a bearer header instead.

Which scopes does the connector ask for?

pipelines:read to view pipelines and runs, pipelines:run to start runs, pipelines:write to create, edit, and publish pipelines, and keys:provision to mint scoped API keys. The consent page shows each one, and the server grants exactly what you approve. A connection can be allowed to trigger work without being allowed to change it.

What does a run started from chat cost?

The same as a run started from the dashboard or the API. Runs spend the account's prepaid credit balance, appear in the same run history, and are reserved against the balance when they start so an agent looping on run_pipeline cannot overspend. estimate_run_cost tells you the charge before you commit.

Can the assistant see other people's pipelines?

No. Every tool call resolves the caller to the owner identifiers it has proven and checks the pipeline against them. The connector sees and runs only pipelines on the account that signed in.

Does a long render block the chat?

No. run_pipeline enqueues the run on Treza's workers and returns the run id at once. The assistant polls get_run, which lists the steps completed so far while the run is still running, and returns the output URLs once it finishes.

Can it connect my YouTube channel for me?

Connecting a channel is done once by a person under Settings, Connected accounts, and no tool can do it. After that, list_connected_channels returns the channel id a publishing node needs, and the assistant can wire it into a pipeline.

Calling a published pipeline from your own code instead of an assistant? The REST API exposes the typed /invoke endpoint and an OpenAI-compatible /chat/completions endpoint.

Connect your assistant to a video pipeline

Sign in, paste the URL into your client, and ask for a video. Prepaid credits, no subscription.

Sign in to Treza->