Clip Studio MCP

MCP serverEverything else

Hosted MCP for Clip Studio public products, same plan as the website.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use Clip Studio MCP

From the project's README

As published by j-acks0n/clipstudio-mcp in README.md.

Hosted Model Context Protocol server for Clip Studio. Add one URL to Claude, Cursor, ChatGPT, or any MCP client and use the same public Clip Studio products a signed-in human already has — Video Lab, Topic Shorts, Talking Shorts, Ad Studio, Last Frame, Image Lab, Audio Lab, Story, Ad Lab, library, and free tools — on the same plan as the website.

Endpoint: https://clipstudio.ai/api/mcp
Transport: Streamable HTTP
Marketing: https://clipstudio.ai/mcp
Public tool list: https://clipstudio.ai/mcp.md
Repository: https://github.com/j-acks0n/clipstudio-mcp

This repo is a connector listing (server.json, install snippets, examples). The server is hosted. There is nothing to clone and run.

Quick start

Paste the URL. Leave OAuth client id empty. Sign in when the client opens Clip Studio, then Approve.

Claude Desktop / Claude.ai connectors

Customize → Connectors → Add custom connector. Paste:

https://clipstudio.ai/api/mcp

Connect. Leave OAuth client id empty.

Cursor

Add an HTTP MCP server in ~/.cursor/mcp.json. Cursor runs OAuth on first use.

{
  "mcpServers": {
    "clipstudio": {
      "url": "https://clipstudio.ai/api/mcp"
    }
  }
}

ChatGPT (developer mode connector)

Enable developer mode, add a custom MCP connector, paste https://clipstudio.ai/api/mcp, then complete Clip Studio Approve.

Windsurf

Edit ~/.codeium/windsurf/mcp_config.json (remote field is serverUrl):

{
  "mcpServers": {
    "clipstudio": {
      "serverUrl": "https://clipstudio.ai/api/mcp"
    }
  }
}

Save, then refresh MCP in Cascade.

VS Code / Copilot

User or workspace mcp.json:

{
  "servers": {
    "clipstudio": {
      "type": "http",
      "url": "https://clipstudio.ai/api/mcp"
    }
  }
}

Command Palette → MCP: Open User Configuration, or .vscode/mcp.json in a workspace.

Stdio-only clients

Bridge to Streamable HTTP:

npx -y mcp-remote https://clipstudio.ai/api/mcp

Example wrapper:

{
  "mcpServers": {
    "clipstudio": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://clipstudio.ai/api/mcp"]
    }
  }
}

Authentication

One-click OAuth on the first call. Unauthenticated requests — including initialize and tools/list — return HTTP 401 with WWW-Authenticate and protected-resource metadata. The client dynamically registers (OAuth 2.1 + PKCE, public client). You sign in with the Clip Studio account and Approve. Tokens stay on the client.

No client id to paste. If a human cannot do the job on clipstudio.ai, the agent cannot do it here.

How a paid job works

  1. Quote (quote_*). Does not generate.

  2. If the monthly generation allowance cannot cover the quote, the tool returns HTTP 402 with numeric JSON fields (names only — these are API keys, not UI copy):

    {
      "requiredCredits": 120,
      "availableCredits": 0
    }
    

    Then call create_checkout_url with a priceId from get_account.offerCheckout. It returns a Stripe Checkout URL and does not take card data.

  3. Generate (generate_* / start_last_frame / render_storyboard / …). Uses this month’s generation allowance.

  4. Poll the matching get_* tool until the job finishes.

Submit and poll. Do not hold the MCP request for a full provider render.

Example prompts

  • Preview a 15-second Topic Short about why most morning routines fail, then quote and generate it.
  • List Video Lab models, quote an 8-second 16:9 clip of a running shoe on a wet track, generate, and poll until it is ready.
  • Continue my story: load the latest project, write the next part, then render it.
  • Check my remaining monthly generation allowance. If a quote returns 402, open checkout from offerCheckout.
  • Research an Ad Studio clip from this product URL, pick a catalog creator, quote, generate, and poll.

Walkthroughs: examples/.

Tools

Names match https://clipstudio.ai/mcp.md. Paid tools use this month’s generation allowance.

Video Lab

Frontier text- and image-to-video. Quote before generate.

ToolDescription
list_video_lab_modelsList models, modes, and defaults. Same catalog as /video-lab.
quote_video_labQuote a setup. Does not generate. Paid generate needs this quote.
generate_video_labStart a paid generation. Poll get_video_lab_generation.
list_video_lab_generationsList this account’s Video Lab generations.
get_video_lab_generationFetch one generation by video id.
reconcile_video_lab_generationRefresh a job from the provider. Does not debit again.
presign_generation_assetCreate an upload slot for a source image or MP4. Then complete_generation_asset.
complete_generation_assetMark a source image or MP4 upload ready.

Topic Shorts

Topic → story + stock + voice. Caption mode default current. Transition mode default dynamic.

ToolDescription
list_hook_bankOpening hooks templates (Problem, Curiosity, Trust, Niche). Seeds topic/brief; not caption style.
create_topic_short_storyPreview beats, narration, and English stock queries. Does not render.
quote_topic_shortQuote a Topic Short. Does not render. Quoted on duration.
generate_topic_shortGenerate from a topic or reviewed storyPlan. Poll get_topic_short.
get_topic_shortFetch a generation.

Talking Shorts

Product URL or brief → talking-head clip. Catalog faces and voices.

ToolDescription
research_talking_shortResearch from a URL or brief. Does not render.
quote_talking_shortQuote a Talking Short. Does not render.
generate_talking_shortStart a paid Talking Short. Poll get_talking_short.
get_talking_shortFetch a generation.
list_talking_short_actorsList catalog stills. Does not render.

Ad Studio

Product → angle → 5-beat script → catalog creator → one vertical clip.

ToolDescription
research_ad_studioResearch angles and a locked 5-beat script. Does not render.
quote_ad_studioQuote an Ad Studio job. Catalog creators only.
generate_ad_studioStart a paid clip. Poll get_ad_studio.
get_ad_studioFetch a generation. Submit and poll.

Last Frame

Play a generated film. The last frame is canon.

ToolDescription
list_last_frame_gamesList games (Adventure, Heist, Tape, and the rest).
list_last_frame_worldsList catalog worlds/maps.
quote_last_frameQuote an opening or next shot. Does not film.
start_last_frameStart a run and film the opening shot.
get_last_frame_runGet a run, including the latest shot and choices.
choose_last_framePick a numbered option. Films the next shot.
type_last_frameType a custom move. Films the next shot.
timeout_last_frameApply the choice timeout (HUD timer).
end_last_frame_clipTell the run the current shot finished playing.
arm_last_frame_itemArm an inventory item for the next move (itemIndex is 0-based).
create_last_frame_worldCreate a custom world from a description.

Image Lab

Quoted stills. Same catalog as /image-lab.

ToolDescription
list_image_lab_modelsList models, modes, and aspect ratios.
quote_image_labQuote a still. Does not generate. Paid generate needs this quote.
generate_image_labStart a paid still. Poll get_image_lab_generation.
list_image_lab_generationsList this account’s Image Lab generations.
get_image_lab_generationFetch one generation and refresh it from the provider.

Audio Lab

Script → downloadable narration with Clip Studio voices.

ToolDescription
list_audio_lab_voicesList narration voices (accent and locale).
quote_audio_labQuote a script. Does not generate.
generate_audio_labStart paid narration. Poll get_audio_lab_generation.
list_audio_lab_generationsList this account’s Audio Lab generations.
get_audio_lab_generationFetch one generation and refresh it from the provider.

Story

Full story → parts → film. Continue my story on the same projectId.

ToolDescription
list_storyboard_themesList visual themes (carries across parts).
list_storyboard_voicesList narration voices (carries across parts).
estimate_storyboardEstimate the next part from a script. Does not render.
create_storyboardStart a project from a full story. Does not write a part or film.
get_storyboardFetch a project, or omit projectId to list recent ones.
generate_storyboard_partWrite the next part on an existing project. Does not film.
render_storyboardFilm the latest part. Poll get_storyboard.

Ad Lab

Website → static layouts, tip pack, Proof pack, or Explain film.

ToolDescription
import_ad_websiteRead a public website into a company profile.
quote_adQuote a static layout. Does not generate.
generate_adGenerate stills (layout 9:16, 1:1, 4:5, or 16:9). Poll get_ad_generation.
quote_ad_tip_packQuote a tip pack. Does not generate.
generate_ad_tip_packGenerate a tip pack. Poll get_ad_generation.
quote_ad_proof_packQuote a Proof pack. Does not generate.
generate_ad_proof_packGenerate a Proof pack. Poll get_ad_generation.
quote_ad_explainQuote an Explain film. Does not generate.
generate_ad_explainGenerate an Explain film from a product photo and brief.
list_ad_generationsList jobs. Optional companyId or kind tip_pack, proof_pack, explain.
get_ad_generationFetch one job.

Library

Clips you already generated. Publish is a public Clip Studio page, not social auto-post.

ToolDescription
list_libraryList clips in the library.
get_clipFetch one library clip.
publish_generationPublish a completed generation to a public page.
unpublish_generationUnpublish a generation you made public.
get_generation_publicationWhether a generation is public, and its public URL if it is.
list_public_generationsList public publications. Optional kind, model, limit.
get_public_generationFetch one public publication by clip id.

Free tools

Copy, hooks, briefs, and planning tools at /tools. Does not generate video.

ToolDescription
list_free_toolsList public free tools.
run_free_toolRun a free tool (slug + input).

Account

Plan, usage, and billing helpers.

ToolDescription
list_public_productsList public products an agent can use through this server.
get_accountPlan and usage for the signed-in account, including offerCheckout price IDs after a 402.
create_checkout_urlCreate a Stripe Checkout URL for a priceId. Does not take card data.

Links

Keeping this in sync

The tool list mirrors https://clipstudio.ai/mcp.md. When that page changes, update the tables here by hand. See scripts/sync-tools.md. This repo does not import Clip Studio’s private source.

Advanced
Delivery
mcp MCP server → your ahel gateway (mcp.ahel.ai) → every connected AI client.
Catalog kind
mcp-server
Gateway key
ai-clipstudio-mcp
Source
github.com/j-acks0n/clipstudio-mcp
Hosted endpoint
https://clipstudio.ai/api/mcp