# Pinterest MCP server: create Pins from your AI agent, with your approval

A Pinterest MCP server lets an AI agent such as Claude, ChatGPT or Codex work with Pinterest through tools. Flaghand is
one for creating Pins: your agent drafts image, carousel and video Pins for boards you choose, and you approve each
exact Pin with your passkey before Flaghand posts it. One limit first: Flaghand's Pinterest API access is still in
Pinterest's Trial tier, so Pinterest shows each Pin Flaghand creates only to you, its owner, until Pinterest grants
Standard access. Flaghand isn't for searching or downloading other people's Pins, or for Pin analytics and trends.
For those jobs, see [other Pinterest MCP servers](#other-pinterest-mcp-servers) below.

Checked on November 3, 2026; [sources](#sources) below.

## What your agent can and can't do on Pinterest

| | Through Flaghand |
|---|---|
| Read your boards and sections | Yes. They're read live from Pinterest each time and never kept. |
| Draft an image Pin | Yes. One JPEG, PNG or WebP image, with optional title, description, link and alt text. |
| Draft a carousel Pin | Yes. 2 to 5 images in display order. |
| Draft a video Pin | Yes. One MP4, M4V or MOV video, 4 seconds to 5 minutes, with a cover image or a cover frame. |
| Check a Pin before you see it | Yes. The board, the section, Pinterest's text limits (title 100, description 800, alt text 500, link 2,048 characters) and the media. |
| Ask you to approve | Yes. One approval request for the whole plan. |
| Approve, schedule or post a Pin | No. Only you, with your passkey. |
| Check a posted Pin | Yes. Flaghand reads it back and compares title, description, link, board, section, alt text and media type. |
| Create, change or delete boards | No. Boards are made in Pinterest. |
| Read other people's Pins, Pin analytics, secret boards, comments or messages | No. |

One draft is one Pin on one board. There is no default board: your agent asks which board each time. To put a Pin on
two boards, it makes one draft per board in the same plan. Flaghand posts the text exactly as saved and never shortens
or rewrites it.

## Set it up in your app

The server is `https://app.flaghand.com/mcp`. Add it to your app, sign in, and click **Allow**.

- **Claude** (Free, Pro and Max; Free allows one custom connector): **Customize › Connectors › Add custom connector**.
  Enter Flaghand and `https://app.flaghand.com/mcp`, then **Add** and **Connect**, and sign in. On Team and Enterprise, an Owner adds
  it under **Organization settings › Connectors**, then each member connects.
- **ChatGPT** (Business, Enterprise and Edu, on the web): **Plugins › + › Add custom MCP server**. Enter
  `https://app.flaghand.com/mcp` under **Connection**, choose **OAuth**, create it as a plugin, install it and sign in. OpenAI's help
  describes read access only on Pro and doesn't establish custom servers on Plus.
- **Claude Code**, for a person typing it: `claude mcp add --scope user --transport http flaghand https://app.flaghand.com/mcp`, then
  `/mcp` to sign in.
- **Codex:** `codex mcp add flaghand --url https://app.flaghand.com/mcp`. It opens the sign-in.
- **Cursor:** merge `{"mcpServers": {"flaghand": {"url": "https://app.flaghand.com/mcp"}}}` into `~/.cursor/mcp.json`, then connect
  Flaghand in Cursor's MCP settings and sign in.
- **Gemini CLI:** merge `{"mcpServers": {"flaghand": {"httpUrl": "https://app.flaghand.com/mcp", "oauth": {"enabled": true}}}}` into
  `~/.gemini/settings.json`, then run `/mcp auth flaghand` in the next session and sign in.

[Start here](/schedule)
to get an account, or create it on the sign-in page your app opens. You add a card when you approve your first post, or
to continue after the free start ([current terms](/pricing)).

### An agent with a shell: sign up over HTTP

Claude Code, Codex and other agents with a shell don't need MCP to start. They sign up over Flaghand's API in the same
session.

With no Flaghand account yet:

1. **Read the plans** (no sign-in):

   ```sh
   curl https://app.flaghand.com/api/v1/plans
   ```

2. **Start the sign-up:**

   ```sh
   curl -X POST https://app.flaghand.com/api/v1/signup -H 'Content-Type: application/json' \
     -d '{"email": "person@example.com", "plan": "monthly", "agent_name": "Claude Code"}'
   ```

   Give the person `signup_url` and `for_person` as they are. Save `claim_code` to a private file such as `claim.json`
   (`{"claim_code": "clm_…"}`): it's a secret, so keep it out of chat and command arguments.
3. **Claim the token** once they've finished:

   ```sh
   curl -X POST https://app.flaghand.com/api/v1/signup/claim -H 'Content-Type: application/json' -d @claim.json
   ```

   A `202` with `"status": "pending"` means they haven't finished: wait the `Retry-After` seconds and claim again. Put
   the token in your secret store and send it as `Authorization: Bearer` on each request. `getMe`
   (`GET https://app.flaghand.com/api/v1/me`) names the workspace.

The full recipe is [set up and connect](https://app.flaghand.com/docs/setup.md).

## Connect Pinterest

Flaghand posts to Pinterest business accounts. A personal account connects nothing; switching to business is free in
Pinterest's settings.

- **From a chat app:** the connector's token can't start a connection. You connect Pinterest yourself in Flaghand's
  Settings, on Pinterest's own consent screen.
- **From an agent that signed you up:** a new account's token can start the connection. The agent calls
  `startConnection` for Pinterest and gives you the link. You consent on Pinterest, and the agent waits for the result.

Flaghand never creates, changes or deletes a board. Make the boards you want in Pinterest first.

## Draft, check and approve a Pin

Ask your agent something like: "Use Flaghand: make a Pin for my autumn soup recipe on my Recipes board, with this photo
and a link to the post, and send it to me for approval."

1. The agent lists your boards with `listPinterestBoards` (and sections with `listPinterestBoardSections`) and asks
   which one, if you didn't say.
2. It uploads the media and calls `createDraft` with the kind (`pinterest_image`, `pinterest_carousel` or
   `pinterest_video`), the account and the board.
3. `checkDraft` reads the board and section live and checks Pinterest's limits. It names the destination, such as
   `Board: Recipes › Autumn`.
4. `requestApproval` gives you an approval link. The approval sheet shows each Pin, its board and who will see it. While
   Flaghand's access is in Trial, it says Pinterest shows the Pin only to you.
5. You approve the exact Pin with your passkey. The approval covers the account, board, section, text, media, cover and
   any AI disclosure. If the draft changes, the approval no longer counts.

Every Pin needs your approval. Flaghand has no repeat, automation or feed-to-Pin publishing for Pinterest.

## Posting and the result

Pinterest has no publish time of its own. A scheduled Pin waits in Flaghand's queue and goes out at the time you
approved. You can cancel, pause or disconnect until then. A video goes to Pinterest first, and Flaghand creates the Pin
once Pinterest has processed it.

The job's result has the Pin's id and address, and `visibility`. `creator_only` means Pinterest shows the Pin only to
you, because Flaghand's access is still in Trial. When Pinterest refuses a Pin, the job says why and what to do: for
example, a deleted board holds the Pin until you choose another board and approve again. It never moves to another
board by itself.

Flaghand keeps only what you chose and what it created: the account, the board and section, and the Pin's ids, sealed
under the connection's own key. Disconnecting destroys that key, so nothing readable from Pinterest is left, in
backups either.

## Other Pinterest MCP servers

- **Pinterest's own MCP server** was announced on September 22, 2026, for Pinterest data and Ads: searching Pins,
  boards, trends and audience insights. On November 3, 2026, its developer page still said "Be the first to know when it
  launches."
- **Composio's Pinterest toolkit** lists 27 tools, including account and Pin analytics, trends, and creating, updating and
  deleting boards and Pins. It has a free Hobby plan.
- **terryso/mcp-pinterest** is an open-source server that searches Pinterest by keyword and downloads images. Its own
  README calls it "an unofficial scraper" that "does not use the official Pinterest API, which may conflict with
  Pinterest's Terms of Service."

## Questions

**Is there a Pinterest MCP for Claude?** Yes. In Claude, open Customize › Connectors › Add custom connector, add
https://app.flaghand.com/mcp and sign in. Claude can then draft Pins on your boards and ask you to approve them.

**Can my agent pin without asking me?** No. No Flaghand token can approve, schedule or post. Only your passkey approves
a Pin, and Flaghand checks that approval again right before it posts.

**Will other people see my Pins?** Not yet. Flaghand's Pinterest access is still in Pinterest's Trial tier, so
Pinterest shows each Pin Flaghand creates only to you. When Pinterest grants Flaghand Standard access, the Pins it creates show to everyone.

**Do I need a Pinterest business account?** Yes. Flaghand posts only to business accounts. Switching a personal account
to business is free in Pinterest's settings.

**Can it read my Pin analytics or other people's Pins?** No. It reads your boards and sections to place a Pin, and
reads back the Pins it posted to check them. It offers no analytics, search or comments.

**How do I take an agent's access away?** In Flaghand, open Settings › Agents and click Revoke. To cut Pinterest off,
disconnect the account in Settings: unsent Pins stop and everything kept from Pinterest is erased.

## More guides

[Let an AI agent post safely](/docs/guides/let-an-ai-agent-post-safely),
[the social media approval workflow](/docs/guides/social-media-approval-workflow) and
[social media image sizes](/docs/guides/social-media-image-sizes). Set Flaghand up in
[Claude](/docs/guides/connect-linkedin-and-x-to-claude), [ChatGPT](/docs/guides/connect-linkedin-and-x-to-chatgpt),
[Claude Code](/docs/guides/connect-linkedin-and-x-to-claude-code), [Codex](/docs/guides/connect-linkedin-and-x-to-codex),
[Cursor](/docs/guides/connect-linkedin-and-x-to-cursor) or [Gemini](/docs/guides/connect-linkedin-and-x-to-gemini).

## Sources

All read on November 3, 2026.

- Flaghand: [Pinterest](https://app.flaghand.com/docs/pinterest.md), [set up and connect](https://app.flaghand.com/docs/setup.md),
  [set up in a chat app](https://app.flaghand.com/docs/chat.md)
- Pinterest: [Pinterest MCP Server](https://developers.pinterest.com/about-pinterest-mcp/),
  [announcement](https://community.pinterest.biz/t/introducing-the-pinterest-mcp-server/51358)
- Composio: [Pinterest toolkit](https://composio.dev/toolkits/pinterest)
- [terryso/mcp-pinterest](https://github.com/terryso/mcp-pinterest)

Pinterest is a trademark of Pinterest, Inc. Other names are their owners' trademarks. Flaghand isn't affiliated with or
endorsed by them.

[All guides](/docs/guides.md)
