# Stick MCP setup: connect Claude, ChatGPT, Claude Code and Codex

> Add Stick's MCP server to your AI app and sign in to Stick: the assistant can then build and edit your pages as drafts, and you publish them in the editor. Every app uses the same server URL.

```url
https://app.stick.so/api/mcp
```

Last checked against Stick's code and Anthropic's and OpenAI's documentation on 2026-10-15.

## Before you connect

- A Stick account. Your AI app sends you to Stick to sign in, and you can sign up there if you don't have an account yet.
- An AI app that can connect: Claude on any plan, ChatGPT where your plan or workspace allows custom MCP servers, or Claude Code or Codex on your computer.

Stick's own screen then asks you to allow access, in these words:

> It will act on your behalf in Stick: see your sites and their data, create sites and change them. Nothing goes live until you publish it in the editor.

## Claude

Works on every Claude plan. On the Free plan you can add one custom connector, and Stick can be it.

1. [Open Claude's Add custom connector dialog](https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Stick&connectorUrl=https%3A%2F%2Fapp.stick.so%2Fapi%2Fmcp), which comes with the name and server URL filled in. Or go to **Customize → Connectors**, press **Add custom connector** and paste the server URL.
2. Press **Add**. If the dialog asks how people sign in, choose **Sign in now**, and **Register automatically** for the OAuth client.
3. Sign in to Stick when Claude sends you there — or press **Connect** next to Stick — and press **Allow access**.
4. In a new chat, ask: “Use Stick to list my sites.”

On a Team or Enterprise plan, an Owner adds Stick for the whole organization: [open the dialog in Organization settings](https://claude.ai/admin-settings/connectors?modal=add-custom-connector&connectorName=Stick&connectorUrl=https%3A%2F%2Fapp.stick.so%2Fapi%2Fmcp), or go to **Organization settings → Connectors** and choose **Add**, then **Custom**. Members then find Stick under **Customize → Connectors**, marked **Custom**, and press **Connect**.

To turn Stick off for one chat, use **Connectors** in the chat's **+** menu. To disconnect it, press **Remove** next to Stick under **Customize → Connectors**.

## ChatGPT

Stick isn't in ChatGPT's plugin directory, so in ChatGPT you add it as a custom MCP server. ChatGPT allows that on some plans only, and in a Business, Enterprise or Edu workspace only where an admin has turned it on. If you don't see **Add custom MCP server**, use Claude, which works on every plan.

1. On chatgpt.com, open **Settings → Security and login** and turn on **Developer mode** if your plan shows it. Some versions offer **Add custom MCP server** in Plugins without it.
2. Open [chatgpt.com/plugins](https://chatgpt.com/plugins), press **+** and choose **Add custom MCP server**.
3. Name it Stick, paste the server URL under **Connection** and set authentication to OAuth.
4. Accept the notice with **I understand and want to continue**, then press **Create as a plugin**.
5. Sign in to Stick when ChatGPT sends you there, and press **Allow access**.
6. In a new chat with Stick turned on, ask: “Use Stick to list my sites.”

## Claude Code

Claude Code adds Stick from your terminal and signs in through your browser.

1. Add the server:

   ```sh
   claude mcp add --transport http stick https://app.stick.so/api/mcp
   ```

2. In Claude Code, run `/mcp`, pick **stick** and sign in to Stick in the browser window it opens.
3. Stick's screen asks you to connect a program on this computer. Press **Allow access** if you have just started connecting from it.
4. Ask: “Use Stick to list my sites.”

Add `--scope user` to the command to have Stick in every project rather than only this one.

To disconnect, run `claude mcp remove stick`.

## Codex

Codex adds Stick from your terminal. Its CLI and IDE extension share one configuration, so adding Stick once covers both.

1. Add the server:

   ```sh
   codex mcp add stick --url https://app.stick.so/api/mcp
   ```

2. Sign in to Stick in the browser window that opens. If none does, run `codex mcp login stick`.
3. Stick's screen asks you to connect a program on this computer. Press **Allow access** if you have just started connecting from it.
4. Ask: “Use Stick to list my sites.”

Or add these lines to `~/.codex/config.toml` yourself, then run `codex mcp login stick`:

```toml
[mcp_servers.stick]
url = "https://app.stick.so/api/mcp"
```

To disconnect, run `codex mcp remove stick`.

## Other apps

For now Stick lets three kinds of app connect: Claude, ChatGPT, and programs on your own computer that finish signing in at a `localhost` address, the way Claude Code and Codex do. Any other app gets Stick's **This app can't connect** screen.

Desktop tools that sign in through `localhost`, such as recent versions of Cursor and VS Code, may connect with the same server URL. Whatever the app, it has to support remote MCP servers over Streamable HTTP, with OAuth sign-in.

## Tools

What Stick's server offers the assistant, with something to ask that uses each one. Read tools only look; Write tools save something to your account — a draft, your site or a photo — and none of them publishes.

| Tool | What it does | Example prompt | Access |
| --- | --- | --- | --- |
| `get_guide` | Stick's guide for the assistant: page structures, starting styles and the exact format of every block. It reads this before it builds. | — | Read |
| `list_sites` | Lists your sites, with each one's address, links to its editor, Analytics and Audience, and whether it is published or has changes you haven't published. | “Which of my pages have unpublished changes?” | Read |
| `get_site` | Reads a site's current draft: theme, font, background, blocks and stickers. | “What's on my ceramics page right now?” | Read |
| `create_site` | Creates your site as an unpublished draft and gives back its editor link. An account has one site: once it has one, the assistant changes it with `update_site`. | “Make a link in bio for my ceramics studio: the shop, workshop dates and my Instagram.” | Write |
| `update_site` | Saves a new draft of a site. Blocks it leaves out are removed from the draft, and it saves nothing if the site changed after the assistant read it. | “Make it darker with a serif font, and keep my text.” | Write |
| `upload_images` | Opens an upload card in the chat for photos from your device. In apps that can't show the card, it gives you the editor link instead. | “Add a gallery with my own photos.” | Read |
| `prepare_image_upload` | Used by the upload card, not the assistant: gets a one-time upload address for each photo you pick. | — | Write |
| `list_images` | Lists the photos uploaded to a site, newest first, and which of them the draft already uses. The assistant reads it to find photos you uploaded. | — | Read |
| `crop_image` | Saves a cropped copy of a photo already on the site, scaled to fit 2048 px. The original stays, and the copy goes on the page only once the assistant places it. | “Crop the cover photo to a square.” | Write |
| `search_stickers` | Searches GIPHY for animated stickers, rated up to PG-13. | “Add a couple of animated stickers.” | Read |

## Limits

- Stick builds one-column pages made for phones, from a link in bio to a landing page, from the same blocks and themes as the editor. A site has one page.
- The assistant saves drafts. It can't publish, unpublish or delete a site: publishing happens in the editor.
- It can add a form. A form's fields are set in the editor, and the assistant only passes them through.
- It can add, edit and remove Digital Product blocks, free ones that hand over a link and paid ones, price included. It can't connect Stripe or upload the file buyers get: that happens in Stick, and a paid product can't be published until Stripe is connected.
- Photos: JPEG, PNG, GIF, WebP, AVIF or SVG, up to 10 MB each. The upload card shows in apps that support MCP Apps, such as Claude and ChatGPT; elsewhere the assistant gives you the editor link to upload there.
- The editor's own limits apply: up to 100 blocks on a page, 50 items in one block and 100 stickers.
- An open editor shows each save as it lands. If you change the page in the editor while the assistant works, its next save is refused instead of overwriting yours.

## Troubleshooting

### This app can't connect

Stick lets only Claude, ChatGPT and programs on your computer connect for now, and this app is none of them. See [Other apps](#other-apps).

### This link has expired

The sign-in request ran out of time or was already used. Start connecting again from your AI app.

### Claude can't finish connecting

Remove Stick under **Customize → Connectors** and add it again. If the dialog asks about the OAuth client, choose **Register automatically**.

### Stick's tools don't show up, or old ones do

Check that Stick is turned on for the chat. In ChatGPT, press **Refresh** on Stick under Plugins; in Claude, remove Stick and add it again; in Claude Code, run `/mcp` and reconnect.

### The assistant says the site changed

The site was saved after the assistant read it — often by you, in the editor — so nothing was saved. Ask it to read the site again and redo the change.

### No upload card appears

Your app doesn't show MCP Apps cards. Upload the photos in the editor, through the link the assistant gives you.

### The wrong Stick account is signed in

Stick's screen names the account that is signed in. Press **Cancel**, sign out of Stick in your browser and connect again.

## Privacy

- Your assistant sees what Stick's tools return: your sites' names, addresses, blocks, text, photos and styling. When it reads or changes a site, that content goes to the company behind the app — Anthropic for Claude and Claude Code, OpenAI for ChatGPT and Codex — under that company's own terms.
- No tool reads your analytics, contacts, form submissions or orders. Sticker searches go to GIPHY.
- Photos you upload through the card are stored like every upload to Stick: anyone with a photo's address can open it, whether or not the site is published.
- To disconnect, remove Stick from the app: under **Customize → Connectors** in Claude, or with `claude mcp remove stick` or `codex mcp remove stick`. Stick has no list of connected apps of its own.
- The connector is covered by our [Privacy Policy](https://www.stick.so/privacy#7-who-we-share-with), with the rest of what Stick stores and why.
