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

# Fanvue MCP Server

> Turn the AI you already use into a Fanvue co-pilot, reply to fans, pull insights, and manage posts from a single connection.

Connect once and your assistant can act across your whole Fanvue account in plain language, no code required.

## Quick connect

Add Fanvue to your assistant in one click. The same server URL works with every client:

```
https://mcp.fanvue.com/mcp
```

<CardGroup cols={3}>
  <Card title="Add to Claude" icon="https://mintcdn.com/fanvue-bad99af4/IIX0wQDpmClZ_lTW/images/clients/claude.svg?fit=max&auto=format&n=IIX0wQDpmClZ_lTW&q=85&s=f09c02a288df1431a28eb1e279359ae5" href="claude://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Fanvue&connectorUrl=https%3A%2F%2Fmcp.fanvue.com%2Fmcp" width="24" height="24" data-path="images/clients/claude.svg">
    One click adds the connector, then you sign in with Fanvue on first use. Requires a Claude plan with custom connectors.
  </Card>

  <Card title="Add to Cursor" icon="https://mintcdn.com/fanvue-bad99af4/WWzYL9dXlCadu6rn/images/clients/cursor.svg?fit=max&auto=format&n=WWzYL9dXlCadu6rn&q=85&s=eb0cbaec9e4f0ae23573b41bfa89a1f1" href="cursor://anysphere.cursor-deeplink/mcp/install?name=fanvue&config=eyJ1cmwiOiJodHRwczovL21jcC5mYW52dWUuY29tL21jcCJ9" width="24" height="24" data-path="images/clients/cursor.svg">
    Opens Cursor with the Fanvue server pre-filled, then sign in on first use.
  </Card>

  <Card title="Other clients" icon="plug" href="#detailed-setup">
    ChatGPT, Claude Code, Codex and any MCP client. Jump to the step-by-step setup.
  </Card>
</CardGroup>

## Detailed setup

Pick your client and follow the steps below.

<Tabs>
  <Tab title="Claude" icon="https://mintcdn.com/fanvue-bad99af4/IIX0wQDpmClZ_lTW/images/clients/claude.svg?fit=max&auto=format&n=IIX0wQDpmClZ_lTW&q=85&s=f09c02a288df1431a28eb1e279359ae5" width="24" height="24" data-path="images/clients/claude.svg">
    <Steps>
      <Step title="Open connector settings">
        In the **Claude desktop app** or **claude.ai**, go to **Customize → Connectors**, click the
        **+** button, and select **Add custom connector**.
      </Step>

      <Step title="Add the Fanvue server">
        Name it **Fanvue** and paste the server URL:

        ```
        https://mcp.fanvue.com/mcp
        ```
      </Step>

      <Step title="Connect and sign in">
        Click **Add → Connect**, authorize with Fanvue, then try asking Claude to check your messages.
      </Step>
    </Steps>
  </Tab>

  <Tab title="ChatGPT" icon="https://mintcdn.com/fanvue-bad99af4/WWzYL9dXlCadu6rn/images/clients/openai.svg?fit=max&auto=format&n=WWzYL9dXlCadu6rn&q=85&s=905029ee64b6516dbb47f8c18ef09766" width="24" height="24" data-path="images/clients/openai.svg">
    <Steps>
      <Step title="Enable developer mode">
        In ChatGPT (Plus, Pro, Business, Enterprise or Edu), open **Settings → Apps & Connectors →
        Advanced settings** and turn on **Developer mode**.
      </Step>

      <Step title="Create the connector">
        Go to **Settings → Connectors → Create**. Name it **Fanvue** and enter the server URL:

        ```
        https://mcp.fanvue.com/mcp
        ```
      </Step>

      <Step title="Authorize and enable">
        Save and sign in with Fanvue when prompted. In a chat, enable Fanvue from the **+** (apps) menu,
        then start asking.
      </Step>
    </Steps>

    <Note>Custom MCP connectors in ChatGPT use **Developer mode**, currently in beta.</Note>
  </Tab>

  <Tab title="Cursor" icon="https://mintcdn.com/fanvue-bad99af4/WWzYL9dXlCadu6rn/images/clients/cursor.svg?fit=max&auto=format&n=WWzYL9dXlCadu6rn&q=85&s=eb0cbaec9e4f0ae23573b41bfa89a1f1" width="24" height="24" data-path="images/clients/cursor.svg">
    <Steps>
      <Step title="Open MCP settings">
        In Cursor, go to **Settings → Cursor Settings → Tools & MCP → New MCP Server**, or edit `~/.cursor/mcp.json` directly.
      </Step>

      <Step title="Add the server">
        ```json title="~/.cursor/mcp.json" theme={null}
        {
          "mcpServers": {
            "fanvue": {
              "url": "https://mcp.fanvue.com/mcp"
            }
          }
        }
        ```
      </Step>

      <Step title="Authorize">
        Cursor prompts you to sign in with Fanvue on first use.
      </Step>
    </Steps>
  </Tab>

  <Tab title="Claude Code" icon="https://mintcdn.com/fanvue-bad99af4/IIX0wQDpmClZ_lTW/images/clients/claude.svg?fit=max&auto=format&n=IIX0wQDpmClZ_lTW&q=85&s=f09c02a288df1431a28eb1e279359ae5" width="24" height="24" data-path="images/clients/claude.svg">
    Add the server from your terminal:

    ```bash theme={null}
    claude mcp add --transport http Fanvue https://mcp.fanvue.com/mcp
    ```

    On first use, Claude Code opens your browser to authorize with Fanvue.
  </Tab>

  <Tab title="Codex" icon="https://mintcdn.com/fanvue-bad99af4/WWzYL9dXlCadu6rn/images/clients/openai.svg?fit=max&auto=format&n=WWzYL9dXlCadu6rn&q=85&s=905029ee64b6516dbb47f8c18ef09766" width="24" height="24" data-path="images/clients/openai.svg">
    Add the server to `~/.codex/config.toml`:

    ```toml title="~/.codex/config.toml" theme={null}
    [mcp_servers.fanvue]
    command = "npx"
    args = ["-y", "mcp-remote", "https://mcp.fanvue.com/mcp"]
    ```
  </Tab>

  <Tab title="Other clients" icon="plug">
    Any MCP client can connect. Use the URL directly if the client supports remote (HTTP) servers, or
    bridge it with [`mcp-remote`](https://www.npmjs.com/package/mcp-remote):

    ```json theme={null}
    {
      "mcpServers": {
        "fanvue": {
          "command": "npx",
          "args": ["-y", "mcp-remote", "https://mcp.fanvue.com/mcp"]
        }
      }
    }
    ```
  </Tab>
</Tabs>

<Info>On first connection you'll authorize through Fanvue's standard OAuth flow in your browser. There are no API keys to copy or paste.</Info>

## One connection, your whole account

The MCP server exposes the full Fanvue API as tools your assistant can call directly.

<CardGroup cols={3}>
  <Card title="Auto-reply to fans" icon="comments">
    Read unread chats, draft on-brand replies, and send messages, keep conversations warm around the clock.
  </Card>

  <Card title="Pull account info" icon="user">
    Fetch your profile, followers, subscribers and notifications so the assistant always has live context.
  </Card>

  <Card title="Manage posts" icon="feather">
    Create, edit, pin, repost and schedule content, spin up an image post from a prompt and publish straight to your feed.
  </Card>

  <Card title="Insights on demand" icon="chart-line">
    Ask for earnings, top spenders and subscriber trends in plain language, pulled from the Insights API.
  </Card>

  <Card title="Media & vault" icon="photo-film">
    Browse the vault, organise folders, upload media and grant access, all through natural language.
  </Card>

  <Card title="Mass messaging & lists" icon="bullhorn">
    Build smart and custom lists, then send targeted mass messages to the right segment of your audience.
  </Card>
</CardGroup>

<Card title="Agencies: run every creator from one place" icon="users-gear" horizontal>
  With agency scopes, the same connection lets your assistant act across all managed creators, review
  chats, check the chatter leaderboard, pull per-creator earnings, and manage posts and messages for each account.
</Card>

## Custom tools

Alongside the tools that mirror the [Fanvue API](/docs/api-reference/overview), the server includes a set of **custom tools**, easy to spot by their `custom__` prefix. Each one is purpose-built around a complete job, so your assistant can finish it reliably in one go. The first two take an image post from file to feed:

<CardGroup cols={2}>
  <Card title="custom__start-image-upload" icon="cloud-arrow-up">
    Hands your assistant a secure, short-lived link to upload one image. The image travels straight to
    Fanvue, it never passes through the conversation.
  </Card>

  <Card title="custom__create-image-post" icon="image">
    Publishes a post with the uploaded image, with the full set of post options: caption, audience,
    pay-to-view pricing, scheduling, expiry and collections. On a paid post, a second uploaded image can
    serve as the free teaser shown to non-subscribers. The post only goes live once the image is ready to
    display, so it never reaches your feed broken.
  </Card>
</CardGroup>

You never need to name these tools. Ask for the outcome, "post this photo as a \$9.99 pay-to-view with a teaser", and your assistant picks them up on its own.

<Card title="Custom tools reference" icon="book-open" href="/docs/mcp-server/custom-tools" horizontal>
  Building an agent? Every argument and result field for each custom tool, with examples.
</Card>

<Note>
  The custom toolset will grow over time as more jobs get their own purpose-built tool. If there's one
  you'd like next, tell us in the [community](https://discord.gg/dZe3tqVTq4).
</Note>

## Just ask

Once connected, you run your account in plain language, for example:

```text wrap title="Clear the inbox" theme={null}
Go through my unread chats, tell me who is waiting and what each fan wants, then draft a warm, on-brand reply to every one. Show me the drafts before anything sends.
```

<Card title="More example prompts" icon="sparkles" href="/docs/mcp-server/prompts" horizontal>
  A library of ready-to-use prompts for chats, insights, posts, mass messaging, the Vault, and agency. Copy one and adapt it.
</Card>

## Secure by design

You stay in control of access at every step.

<CardGroup cols={3}>
  <Card title="OAuth 2.0" icon="shield-halved">
    Connecting runs the standard Fanvue OAuth flow, no API keys to copy, paste or leak.
  </Card>

  <Card title="Revoke any time" icon="key">
    The assistant acts on your behalf and can only do what your own account can do. You approve access when you first connect, and can revoke it from your Fanvue settings at any time.
  </Card>

  <Card title="Rate-limited" icon="gauge-high">
    Every call respects the same rate limits and safeguards as the rest of the Fanvue API.
  </Card>
</CardGroup>

## FAQ

<AccordionGroup>
  <Accordion title="Which assistants can connect?">
    Any client that supports the Model Context Protocol, including Claude (web and desktop), ChatGPT
    (Developer mode), Claude Code, Cursor and Codex. Use the custom-connector flow in apps with a UI, or
    the CLI/config approach for terminal-based tools.
  </Accordion>

  <Accordion title="Do I need to write any code?">
    No. Connecting is a settings change in your AI client, and authorisation happens through Fanvue OAuth
    in your browser. Developers who prefer to self-host can run the open-source
    [fanvue-api-mcp](https://github.com/fanvue/fanvue-api-mcp) server instead.
  </Accordion>

  <Accordion title="What can the assistant actually access?">
    Everything your authorised scopes allow on the Fanvue API: chats and messages, posts, media and vault,
    insights, followers and subscribers, lists, tracking links, and agency endpoints. See the
    [API Reference](/docs/api-reference/overview) for the full surface. On top of that, a growing set of
    [custom tools](#custom-tools) covers complete jobs like publishing an image post.
  </Accordion>

  <Accordion title="Can agencies use it across multiple creators?">
    Yes. With agency scopes the connection works against the creator-scoped endpoints, so your assistant
    can manage chats, posts, media and insights for every creator you manage from a single connection.
  </Accordion>

  <Accordion title="How do I disconnect?">
    Remove the connector in your client's settings (for example `claude mcp remove Fanvue` in Claude Code),
    then revoke the app's access from your Fanvue account settings.
  </Accordion>
</AccordionGroup>
