Skip to main content
Connector status: LIVE on every paid plan. Connect two ways: one-click hosted (press Connect to Claude on the connector page, authorize on your own account — no key, no config) or API-key bearer (local stdio connector). Both surfaces expose the same twenty-one tools.
The connector API answers: what can my agent call, what does each call cost, and what shape comes back? This is the public contract for the twenty-one tools registered in mcp/videngineer_mcp.py (TOOL_SPECS on origin/main). Where an older draft and the code disagree, the code wins. | Setup | The connector | | Recipes | Connector recipes |

Tool map (19)

Auth surfaces

Both surfaces register the same twenty-one tool bodies. Auth is the only difference.

API-key bearer (live today)

  • Create a key in Account → API access. Put it in VIDENGINEER_API_KEY.
  • Plan entitlements (API access, minutes, credits) apply exactly as in the app.
  • Local keys carry no OAuth scopes. Plan gates are the only gate.
  • Optional env: VIDENGINEER_BASE_URL (default https://videngineer.com), VIDENGINEER_WAIT_CAP (seconds get_report polls; default 300).

Hosted OAuth (live)

  • Live on every paid plan. Press Connect to Claude on the connector page, or add the endpoint https://mcp.videngineer.com/mcp as a custom connector, then authorize on your own account — no key, no config file.
  • Scopes: mcp:read, mcp:analyze, mcp:cut_brief, mcp:build_cuts. A read-only grant is a real option.
  • Missing scope returns a clean refusal with the scopes already granted.
The connector is included on plans that include API access. There is no separate agent meter and no extra connector fee. Spend tools draw on the same plan minutes and credits as the app.

Charges (quote from tool surfaces)

Reads never charge. Spend tools only charge on an explicit call. Nothing is destructive — there is no tool that edits, renames, moves, or deletes Library content.

Known empty surfaces (honest)

  • find_cuts returns empty until its cut-index backfill runs (Mark-gated).
  • find_analyses with intent (recommend mode) returns an empty recommendation envelope until the labeler / reference_index backfill runs (Mark-gated). Keyword filters still work.

Efficient sequences

Remake one cut (your library):
Cold start (no library yet):
Sound or cast only: call get_sound / get_cast, not get_report(fields=[...]). Media URLs stay on list_assets.

Ownership

Every analysis id is ownership-checked server-side. An id you do not own comes back as a redacted preview (title, thumbnail, hook type, duration) with an analyze-it-yourself option and the credit cost stated — never auto-analyzed for you.

Byte budgets (measured)

Wire = hosted MCP HTTP body; compact = structured tool JSON re-encoded compact UTF-8. From wave-2 founder E2E + L3/L4 package specs: Prefer lean discovery over full dumps. Prefer get_sound / get_cast over field-sliced full reports.

Next pages

  1. Analyses — library list, search, analyze, status, report, bundle
  2. Cuts — cut menu, one cut, brief, build, find, scenes
  3. Discovery — public teardowns + recommend intent
  4. Media — sound, cast, assets