MCP
Use Shadarc from Cursor, Claude Code, or Codex with an API key. Your agent can build an automation from a template, or study a slideshow that performed well and turn its format into a new automation. It previews the slide design for free before it spends a credit. Connecting TikTok, buying credits, and plan changes stay in the studio.
URL: https://api.shadarc.com/mcp
Auth: Authorization: Bearer shd_live_…
Create the key in Settings → API keys. Copy it once.
The MCP server needs a Starter or Pro plan. A key whose owner is on Free gets 403 PAID_PLAN_REQUIRED.
1 credit = 1 AI slideshow. Only generate_run and the scheduled runs of an active automation spend credits. Reading, validating, previewing, creating, and updating are free. Agents should create automations with status: "PAUSED", test one run, and resume only after you approve. A ready run is posted to TikTok automatically only when its automation has a TikTok account with autoPost on, even while paused. Over MCP, autoPost is off unless the agent sets it.
Quick setup
Copy this prompt into your agent. It follows our setup steps for agents and works in Cursor, Claude Code, Codex, and other MCP clients.
Set up the Shadarc MCP server for this agent. Follow https://shadarc.com/docs/mcp/install.md. If you can't tell which agent you are, ask me.Your agent reads the key from the SHADARC_API_KEY environment variable. Don't paste the key into the chat: chats can end up in logs and transcripts. To set it up yourself, use the steps for your client below.
Reverse-engineer a slideshow
Save the slides of a slideshow you like, then ask your agent to run the reverse_engineer_slideshow prompt (in Claude Code: /mcp__shadarc__reverse_engineer_slideshow). The agent reads the slides and writes a configuration. It compares free previews against the original until the layout matches, then makes one test run for you to review. It writes original copy in the same format and does not reuse the creator's images.
Analytics
Your agent can read your TikTok analytics. Every post is matched to the automation and run that published it, so the agent can rank automations by how their posts performed and compare the hooks and slides of the best and worst posts. Reading analytics is free.
Tools
| Tool | What it does |
|---|---|
get_configuration_guide | Every configuration field, fonts, fit rule, costs, and the reverse-engineering method. Start here. |
validate_configuration | Checks a configuration without saving. Lists each issue with its field path and measured text fit. Free. |
preview_slides | Renders the Hook, Body, and CTA design with sample text as images. Free, nothing saved. |
list_templates / get_template | Studio templates with their full configuration. |
create_automation_from_template | From a template, with brief, media, TikTok, schedule, and status overrides. Free. |
create_automation | From your own configuration. Pass status: "PAUSED" while testing. Schedule defaults to daily 09:00 UTC. Free. |
get_automation / update_automation | Read or change a saved automation in place. Free. |
list_automations | Your automations. |
pause_automation / resume_automation | Stop or start an automation's schedules. Resuming means scheduled runs spend credits. |
generate_run | Spend 1 credit on one run now. Pass automationId and clientRequestId (retries are safe). |
wait_for_run | Waits up to 50 seconds for a run to finish and returns its text. |
view_run | A finished run's slides as images. |
get_run / list_runs | Full run detail and recent runs. |
list_collections / list_public_collections | Collection ids for mediaBindings. |
create_collection / add_assets_to_collection | Build your own collection. |
create_media_upload / complete_media_upload | Upload a local image you own (HTTP PUT to a signed URL). |
list_assets | Asset metadata. Do not use for mediaBindings. |
list_collection_assets | Images in one collection (yours or Public), searchable by description. Ids for fixedImages. |
list_tiktok_accounts | Connected accounts (id, name, avatar, status). No tokens. |
get_credits | Remaining credits and plan. |
get_automation_performance | Ranks automations by the views and engagement of the posts they published in a time window. Also lists active automations that posted nothing, and your other posts as a baseline. |
list_tiktok_posts / get_tiktok_post | Posts with their metrics, the automation and run behind each one, the hook and slide text, and daily view history. |
get_analytics_overview | Totals, daily views, and per-account metrics, plus when each account last synced. |
refresh_analytics | Fetches fresh metrics now instead of waiting for the automatic sync (about every 4 hours). Uses your analytics allowance. |
Previews and slide images are rate limited per account.
Global: ~/.cursor/mcp.json. Project: .cursor/mcp.json.
{
"mcpServers": {
"shadarc": {
"url": "https://api.shadarc.com/mcp",
"headers": {
"Authorization": "Bearer ${env:SHADARC_API_KEY}"
}
}
}
}Set SHADARC_API_KEY to your shd_live_… key. Cursor only sees it when started from a terminal where it is set (for example cursor .) or when it is set system-wide. Otherwise it sends the literal text.