> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pictory.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect from Claude

> Add the Pictory MCP server as a custom connector in Claude, sign in once with your Pictory account, and create videos in any chat on the web, desktop or mobile

This page adds the Pictory MCP server to Claude as a custom connector. It is a one-time setup,
identical on claude.ai and Claude Desktop. The connector then follows your Claude account to the
desktop and mobile apps, and to Claude Code when it is signed in to the same account.

## Before you start

Two things must be in place, or the connection fails at sign-in.

* **A Pictory account.** This is what you sign in with when authorizing the connector.
* **A purchased Pictory API subscription.** The connector runs on Pictory's API, so an active
  API subscription on that account is required. A standard Pictory plan on its own is not enough.

You also need a Claude plan that supports custom connectors.

## Register the connector

<Steps>
  <Step title="Open Settings, then Connectors">
    Select **Add** in the top right, then **Add custom connector**.

    <Frame caption="Settings, then Connectors. Add, then Add custom connector.">
      <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/connectors-add-custom.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=1ffc7886c26476853fa2fb688c791650" alt="The Connectors page in Claude settings with the Add menu open" width="940" height="735" data-path="images/claude-mcp/connectors-add-custom.png" />
    </Frame>
  </Step>

  <Step title="Name the connector and give it the server URL">
    | Field | Value                                                                     |
    | ----- | ------------------------------------------------------------------------- |
    | Name  | `Pictory MCP Connector`. This is the label shown in your connectors list. |
    | URL   | `https://mcp.pictory.ai/mcp`                                              |

    Select **Continue**. The name is a label only; the URL is what matters.

    <Frame caption="The name is a label only. The URL is what matters.">
      <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/connector-name-and-url.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=d81e7a819f308ff95a27511ef9570dd0" alt="The Add custom connector dialog with the name and server URL filled in" width="940" height="796" data-path="images/claude-mcp/connector-name-and-url.png" />
    </Frame>
  </Step>

  <Step title="Accept the detected authentication settings">
    Claude inspects the server and pre-selects what Pictory requires. Both correct options are
    marked **Detected**, so nothing needs changing:

    * **Authentication:** Always required. Every user signs in through Pictory's OAuth flow
      before any tool can run.
    * **OAuth client:** No client ID, register one automatically. Claude registers a client with
      Pictory as users connect.
    * **Additional request headers:** leave empty. Pictory needs none.

    Select **Add**. The connector now exists, but is not yet authorized.

    <Frame caption="Both required settings arrive pre-selected and marked Detected.">
      <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/connector-detected-auth.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=f4c11562c347822dfbd49555c815c7bf" alt="The authentication settings for the connector, both marked Detected" width="784" height="1525" data-path="images/claude-mcp/connector-detected-auth.png" />
    </Frame>
  </Step>

  <Step title="Connect your Pictory account">
    The connector's page reports that you are not connected yet. Select **Connect**.

    <Frame caption="The connector exists but has not been authorized yet.">
      <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/connector-connect.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=f33da9c37a0996bbff2dba977220dd71" alt="The Pictory MCP Connector page showing it is not connected yet" width="940" height="737" data-path="images/claude-mcp/connector-connect.png" />
    </Frame>
  </Step>

  <Step title="Confirm in the browser">
    Because you started this from Claude, select **Continue connecting**. This page appears
    precisely so that a link alone can never attach a connector to your account.

    <Frame caption="The browser confirmation that completes the OAuth handoff.">
      <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/browser-continue-connecting.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=88e39c9bb2f23e08617cb334e30ace54" alt="The browser page asking you to continue connecting" width="940" height="412" data-path="images/claude-mcp/browser-continue-connecting.png" />
    </Frame>
  </Step>

  <Step title="Sign in to Pictory">
    Use Google, or your Pictory email and password. On success the browser hands control back
    to Claude and the connector shows as connected.

    <Frame caption="Sign in with Google, or with your Pictory email and password.">
      <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/pictory-sign-in.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=025db175ed556b36d24ae03e2a2c3a65" alt="The Pictory sign-in page" width="940" height="525" data-path="images/claude-mcp/pictory-sign-in.png" />
    </Frame>
  </Step>
</Steps>

<Info>
  **Which account is billed.** Your Pictory API subscription account. Video minutes, premium voice
  minutes, transcription minutes and AI Credits are all drawn from the API subscription held by
  the account you sign in with here.
</Info>

## Make your first video

Ask in plain language. A request such as *"Create a 5-scene video showing how to brew the
perfect cup of coffee, from grinding fresh beans to enjoying the final cup, with each scene
clearly showing and explaining the step"* is enough to start. Claude then asks for the decisions
that have no safe default.

**Who designs the scenes.** The first and most consequential choice. It decides what you supply
and how much control you keep. Both modes are described on the
[Pictory MCP Server](/claude-mcp/overview#who-designs-the-scenes) page.

<Frame caption="The design mode question, asked first because it has no default.">
  <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/ask-design-mode.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=e7bcb617d9b6234df50ee4f8c3715bf7" alt="Claude asking whether Pictory designs the scenes or you design them together" width="940" height="221" data-path="images/claude-mcp/ask-design-mode.png" />
</Frame>

**What the video should include.** Narration, background music and saving the result as an
editable project are each off unless you ask for them. Anything you leave unticked stays off.

<Frame caption="Narration, music and saving the project are each opt-in.">
  <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/ask-narration-music-save.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=3a691908c79fc6a2cb97c0ca3cbe2896" alt="Claude asking about narration, music and saving as a project" width="940" height="331" data-path="images/claude-mcp/ask-narration-music-save.png" />
</Frame>

**Output shape.** 16:9 for landscape, 9:16 for vertical, 1:1 for square.

<Frame caption="The output shape, which also follows from where the video will be published.">
  <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/ask-shape.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=ee2d0b92a712e3c76d5fe9c2c218a09e" alt="Claude asking for the aspect ratio" width="940" height="275" data-path="images/claude-mcp/ask-shape.png" />
</Frame>

**Which voice narrates.** If you asked for narration without naming a voice, Claude lists the
premium voices on your account with samples, and waits for you to pick one.

<Frame caption="Premium voices on the account, with a sample for each.">
  <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/ask-voice.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=36421c504c09b30effe3c8151381f8a4" alt="Claude listing the premium voices with a sample for each" width="940" height="543" data-path="images/claude-mcp/ask-voice.png" />
</Frame>

Claude confirms the locked-in choices before spending a render.

<Frame caption="The choices confirmed back before any render is spent.">
  <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/confirm-choices.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=4088fcd4df8a6a10c29a16b9d1e043bd" alt="Claude confirming the chosen options before rendering" width="1548" height="530" data-path="images/claude-mcp/confirm-choices.png" />
</Frame>

## What you get back

Rendering takes 5–15 minutes. The finished job returns the MP4, a watch link, an embed link,
the narration audio, and subtitles in both SRT and VTT.

<Frame caption="A finished job: the video, its links, the narration audio and both subtitle formats.">
  <img src="https://mintcdn.com/pictory/_jicBs0g5SvCnrCA/images/claude-mcp/finished-job.png?fit=max&auto=format&n=_jicBs0g5SvCnrCA&q=85&s=d5ead8a628ab9720b531f723f48cdfe2" alt="Claude reporting a finished video with its links and files" width="940" height="431" data-path="images/claude-mcp/finished-job.png" />
</Frame>

<Tip>
  Two habits worth forming. Ask for a preview whenever the design matters: correcting a storyboard
  costs 2–5 minutes, re-rendering costs 5–15. And say yes to saving the video as an editable
  project if there is any chance you will revise it, because without it the video is not kept in
  your Pictory account, so every revision means a fresh render rather than a tweak in the editor.
</Tip>

## On desktop, mobile and in Claude Code

A connector added on the web is available in the Claude desktop and mobile apps for the same
account with no further setup. Claude Code signed in to the same account also lists it:
`claude mcp list` shows it under the name you gave the connector, prefixed `claude.ai`, and its
tools are available in every session. Only a machine that is not signed in to claude.ai needs
the [Claude Code setup](/claude-mcp/claude-code).

## Managing the connection

* **Refresh the tools.** Claude reads the server's tool list when a conversation starts. If a
  newly announced tool is missing, start a new chat. If it is still missing, disconnect and
  reconnect the connector in **Settings**, **Connectors**.
* **Sign in again.** Choose **Disconnect** on the connector, then **Connect**, and sign in.
* **Remove it.** Choose **Remove** on the connector. Videos already created stay on your Pictory
  account.

## Troubleshooting

<AccordionGroup>
  <Accordion title="The Sign-In Page Shows an Error Instead of a Login Form">
    **Cause:** The sign-in was started from somewhere other than Claude, so the return address
    is not one Pictory recognizes.

    **Resolution:**

    1. Add the server through **Settings**, **Connectors** in Claude, not by opening the server
       URL in a browser.
    2. Choose **Connect** on the connector and sign in from there.
  </Accordion>

  <Accordion title="Connected, but Claude Says It Has No Pictory Tools">
    **Cause:** The connector is switched off for this chat, or the chat started before the
    connector was added.

    **Resolution:**

    1. Open the tools menu in the message box and switch the connector on.
    2. Start a new chat.
  </Accordion>

  <Accordion title="Every Request Fails After Signing In">
    **Cause:** The account you signed in with has no purchased Pictory API subscription, or the
    sign-in has expired.

    **Resolution:**

    1. Check the API subscription at [app.pictory.ai](https://app.pictory.ai). A standard
       Pictory plan on its own is not enough.
    2. Disconnect and reconnect the connector to sign in again.
  </Accordion>
</AccordionGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="Pictory MCP Server" icon="plug" href="/claude-mcp/overview">
    The tools, the two design modes, and a quick reference
  </Card>

  <Card title="Connect from Claude Code" icon="terminal" href="/claude-mcp/claude-code">
    The terminal setup, for a machine that is not signed in to claude.ai
  </Card>
</CardGroup>
