Skip to main content
You need a PublishBuddy account on Pro or Business (a 14-day trial works) and at least one connected profile. There are two ways to connect. Apps that support sign-in (OAuth), such as ChatGPT and Claude, send you to PublishBuddy to approve the connection; nothing to copy. Clients configured with a file can use an API token instead.

Sign in (OAuth)

The server URL is https://api.publishbuddy.com/mcp.
1

Add the server in your app

  • Claude (claude.ai, Claude Desktop): Settings → Connectors → Add custom connector, with the URL above.
  • ChatGPT: add PublishBuddy from the apps directory once it is listed there, or as a custom connector with the URL above where your workspace allows it.
  • Claude Code: claude mcp add --transport http publishbuddy https://api.publishbuddy.com/mcp, then run /mcp, pick publishbuddy, and choose Authenticate.
  • Cursor, VS Code, and other clients: add the URL with no Authorization header. The client opens the sign-in page when it first connects.
2

Sign in to PublishBuddy

A browser page opens on app.publishbuddy.com. Sign in with your usual email and password or Google. If you are already signed in, you go straight to the next step.
3

Pick a workspace and allow

The page names the app, shows the website it will send you back to, and lists what it will be able to do. Pick the workspace the app should work in and click Allow. A workspace whose plan doesn’t include MCP access, or where your role can’t use AI features, can’t be picked.
4

Back in the app

You return to the app, connected. Try the prompt in Verify the connection.
Only click Allow for a connection you started yourself. When the page says the app runs on your own computer (a localhost address), make sure it is a program you are running, such as Claude Code or Cursor.
A signed-in app works in the workspace you picked. To use another workspace, connect the app again (most apps let you add the server twice under different names). Disconnect an app at any time under User Settings → Login & Security → Connected apps; it loses access at once. Sign-ins stay valid while the app keeps using them and expire after 90 days without use.

Use an API token

1. Create an API token with the MCP ability

1

Open the dashboard

2

Go to User Settings → Login & Security

Click your avatar → User Settings, then open the Login & Security tab.
3

Generate a token

In the API Keys section click Generate API Key, give it a name such as claude-code, and tick the MCP (AI clients) scope. Tick the REST scopes too only if the same token will also call the REST API.
4

Copy the value

You see the token once. Store it in a password manager or an environment variable. The examples below assume PUBLISHBUDDY_TOKEN.
Treat the token like a password. Anyone holding it can draft and schedule posts to every profile you can access. Revoke it from the same screen if it leaks.

2. Add the server to your client

The server speaks Streamable HTTP, so clients that support remote MCP servers connect directly. Clients that only launch local (stdio) servers, such as Claude Desktop, connect through the mcp-remote bridge.
  • Claude Code: the CLI command stores the server in your user config. A project-level .mcp.json in the repo root is shared with anyone who clones it, so keep the token in an environment variable there.
  • Cursor: .cursor/mcp.json in a project, or ~/.cursor/mcp.json for every project.
  • VS Code: .vscode/mcp.json in a workspace. The inputs block prompts for the token once and stores it securely.
  • Windsurf: ~/.codeium/windsurf/mcp_config.json.
  • Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows. Restart the app after editing.
npx must be launched through cmd on Windows:
The header is written as Authorization:${AUTH_HEADER} without a space on purpose. Claude Desktop splits arguments on spaces, so the space lives inside the environment variable instead.
Any client that supports remote MCP servers over Streamable HTTP can connect to https://api.publishbuddy.com/mcp, either by signing in (the client finds the sign-in page from the server’s 401 answer, as the MCP authorization spec describes) or with an Authorization: Bearer <token> header.

Verify the connection

Ask your assistant something that needs a tool:
You should see it call list_profiles and reply with your connected accounts. Most clients ask for permission before running a tool the first time. Approve it, and optionally allow the read-only tools permanently so you are only asked when something changes.

Choose a workspace

A signed-in app works in the workspace you picked when you allowed it. With an API token, requests run against your active workspace, the one you last used in the dashboard. If you belong to several workspaces and want a token-based client pinned to one of them, add an X-Workspace-Id header with that workspace’s UUID (from GET /workspaces on the REST API, or from the workspace switcher URL in the dashboard):
Configure the server twice under different names to switch between workspaces from the same client.

Try a real task

The assistant will call get_top_posts, then create_post (which makes a draft), then schedule_post. Creating a post never publishes anything on its own; scheduling or queueing is always a separate call, and your client asks before each one unless you have allowed it.

Troubleshooting

Next

Tool reference

Every tool, its inputs, and its credit cost.

REST API quickstart

The same actions over plain HTTP, for pipelines and integrations.