How to Generate Faceless TikToks from Cursor with MCP (2026)

AudienconFounder, Viibeo
Free first short · watermarked · pick a look after signup
In short
Most faceless creators still bounce between a chat window, a video tool, CapCut, and TikTok Studio. Agents collapsed the first half of that stack: if your IDE can call tools, the bottleneck is no longer “write a script” — it’s whether the video product is agent-ready. This is the workflow we built for Viibeo: Cursor (or Claude) → MCP or REST → faceless short → webhook → export. Autopilot still owns daily TikTok/Instagram posting in the dashboard when you want cadence on rails.
- Agent-native surfaces win the interest graph: a public skill + MCP/REST docs beat a login-gated API page.
- You can poll — or skip polling with signed webhooks (generation.completed, export.ready).
- The loop: createshort → ready signal → startexport → outputUrl → optional publishvideo.
- Niche-specific prompts beat “make something viral.”
- Autopilot (Starter+) posts on a schedule; agents can also publish one-off when socials are connected.
- Free exports can be watermarked — say that before you celebrate the first MP4.
Most faceless creators still bounce between a chat window, a video tool, CapCut, and TikTok Studio. Agents collapsed the first half of that stack: if your IDE can call tools, the bottleneck is no longer “write a script” — it’s whether the video product is agent-ready.
This is the workflow we built for Viibeo: Cursor (or Claude) → MCP or REST → faceless short → webhook → export. Autopilot still owns daily TikTok/Instagram posting in the dashboard when you want cadence on rails.
Before you begin
What you’ll need:
- Cursor or another MCP client (Claude Desktop works the same pattern) — or any HTTP client for REST
- A Viibeo account and an API key (
vii_…under Settings → Developers) - Credits on the account
- Time: ~10 minutes to connect; first short usually finishes in a few minutes once generation starts
- Difficulty: Intermediate (comfortable pasting JSON config)
Public docs and the installable skill live at /agents, /llms-full.txt, and /skills/viibeo-faceless-shorts/SKILL.md. OpenAPI: /api/v1/openapi.json.
Step 1: Add Viibeo as an MCP server
In Cursor MCP settings (or your client’s config), point at the HTTP endpoint:
{
"mcpServers": {
"viibeo": {
"url": "https://www.viibeo.com/api/mcp",
"headers": {
"Authorization": "Bearer vii_YOUR_API_KEY"
}
}
}
}
Reload the client. You should see tools like create_short, get_generation_status, start_export, publish_video, and get_my_credits.
Optional: load the skill file so the agent already knows the loop and Autopilot limits — don’t make it rediscover the API every chat.
Prefer REST?
Same key, different surface:
curl "https://www.viibeo.com/api/v1/credits" \
-H "Authorization: Bearer vii_YOUR_API_KEY"
Create a short with POST /api/v1/videos, poll GET /api/v1/jobs/{id}, export with POST /api/v1/exports. Full path table: /agents.
Step 2: Ask for one concrete short
Bad: “Make a viral TikTok.”
Better: “Create a 30-second faceless true-crime short: three documented facts about the 1890s poison ring, documentary tone, strong hook in the first line.”
Then let the agent:
- Call
get_my_creditsif balance is unclear - Call
create_short(orPOST /api/v1/videos) - Wait for a
generation.completedwebhook — or pollget_generation_statusuntilCOMPLETED
If generation fails, fix the prompt or credit issue — don’t spam new jobs. Subscribe to generation.failed so agents don’t hang on a silent poll.
Step 3: Export the MP4
When the video exists:
start_exportwith thevideoId(orPOST /api/v1/exports)- Wait for
export.ready(payload includesoutputUrl) — or pollget_render_status - Download and review audio + captions before you post
On Free, expect a watermark. Lite+ removes it. That distinction matters when you share “agent-made” clips publicly.
Step 4: Publish or hand cadence to Autopilot
One-off: publish_video / POST /api/v1/publish to connected TikTok, Instagram, or YouTube. Listen for publish.completed.
Daily cadence: In the Viibeo dashboard on Starter+, create an Autopilot series — or call create_autopilot_series from MCP/REST. Connect socials under Settings → Social first.
Webhooks (skip the busy-wait)
Under Settings → Developers, add an HTTPS endpoint and pick events. We sign every delivery:
- Header:
X-Viibeo-Signature: t=<unix>,v1=<hex> - Verify:
HMAC-SHA256(secret, t + "." + rawBody)
Events: generation.completed, generation.failed, export.ready, export.failed, publish.completed. You can also manage endpoints via POST /api/v1/webhooks.
Why this matters (the strategy, not the buttons)
Social scheduling tools that only ship a human UI lose when someone tweets “just ask your agent.” The winners make the agent path as obvious as the homepage CTA: public skill, public docs, REST + MCP + webhooks, same credits, no support ticket to start.
If you build for creators and for agents, every viral MCP/Cursor thread becomes a warm install — not a bounce to a marketing page that can’t authenticate.
What to ship next (for operators copying this)
- Keep create → export reliable.
- Prefer webhooks over polling for async video jobs.
- Point every “Agents” CTA at /agents, not a login wall.
- Only buy amplification after organic CTR proves the story.
Related
Written by
Audiencon
@audienconFounder of Viibeo
Builds Viibeo and writes this journal from the product: faceless shorts with script, voice, captions, and auto-post.



