Skip to main content

Client setup

Configure your AI client to connect to the PostSyncer MCP server.
Create a token first: open app.postsyncer.com → Settings → API Integrations, click Create, and copy the key. It is a Sanctum personal access token—same as the REST API. Choose abilities (workspaces, accounts, labels, campaigns, posts) to match what you need; see Authentication.

Connection details

SettingValue
URLhttps://postsyncer.com/mcp
TransportStreamable HTTP
AuthorizationBearer YOUR_TOKEN (send as the Authorization HTTP header)
Replace YOUR_TOKEN with the token from API Integrations (include the Bearer prefix in the header value).

Claude Desktop

Claude Desktop only loads MCP servers as local processes (command + args). It does not use the url / headers shape from HTTP-native clients. Use the mcp-remote proxy so stdio speaks to PostSyncer’s HTTPS endpoint. Add PostSyncer under mcpServers in your Claude Desktop config:
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
  "mcpServers": {
    "postsyncer": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://postsyncer.com/mcp",
        "--header",
        "Authorization: Bearer YOUR_TOKEN_HERE"
      ]
    }
  }
}
On Linux, the file is usually ~/.config/Claude/claude_desktop_config.json. Tips: If npx prompts to install packages, add -y as the first entry in args (for example ["-y", "mcp-remote", ...]). Node 18+ must be on your PATH—Claude Desktop uses your system Node. Restart Claude Desktop after saving. On Windows (and some Cursor builds), spaces inside a single args string can be mangled; if the header fails, use the env workaround: put Authorization:Bearer ${POSTSYNCER_TOKEN} in args (no space after the colon) and set POSTSYNCER_TOKEN to Bearer YOUR_TOKEN_HERE in env.

Claude Code

Claude Code supports HTTP MCP servers natively (recommended for PostSyncer). Use the CLI or a .mcp.json / ~/.claude.json entry as in the Claude Code MCP docs. CLI (Bearer token):
claude mcp add --transport http postsyncer https://postsyncer.com/mcp \
  --header "Authorization: Bearer YOUR_TOKEN_HERE"
JSON (for example project .mcp.json or user config)—HTTP servers use type, url, and headers:
{
  "mcpServers": {
    "postsyncer": {
      "type": "http",
      "url": "https://postsyncer.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_TOKEN_HERE",
        "Accept": "application/json"
      }
    }
  }
}
Alternatively, you can use the same mcp-remote + npx block as Claude Desktop if you prefer one config shape everywhere.

Cursor

  1. Open Cursor Settings → MCP and add a new server, or edit ~/.cursor/mcp.json (global) or .cursor/mcp.json (project)—see Cursor’s MCP docs.
  2. For a remote server, use url and headers (Cursor’s supported remote shape). Prefer an env var for the token via config interpolation:
{
  "mcpServers": {
    "postsyncer": {
      "url": "https://postsyncer.com/mcp",
      "headers": {
        "Authorization": "Bearer ${env:POSTSYNCER_TOKEN}",
        "Accept": "application/json"
      }
    }
  }
}
Set POSTSYNCER_TOKEN to your personal access token only (the same secret string as in API Integrations—not the word Bearer; the JSON adds Bearer for you). For a one-off test you can use "Authorization": "Bearer YOUR_TOKEN_HERE" instead of ${env:...}. If your Cursor version does not connect with url + headers, use the same mcp-remote + npx block as Claude Desktop (mcp-remote notes that some clients still need this for OAuth or compatibility). Restart Cursor so the tool list refreshes.

Other MCP clients

Any MCP-compatible client that supports Streamable HTTP (or remote HTTP) and custom headers can use PostSyncer:
  • URL: https://postsyncer.com/mcp
  • Transport: Streamable HTTP
  • Header: Authorization: Bearer YOUR_TOKEN_HERE
  • Recommended: Accept: application/json
Follow that product’s own docs for where to enter the URL and headers.

Verify the connection

After connecting, ask your assistant to run a read-only tool, for example:
List my workspaces
If setup is correct, it should call list-workspaces and return data. Then try list my connected accounts to exercise list-accounts.

Troubleshooting

SymptomWhat to check
401 / UnauthorizedToken missing, revoked, or Authorization not formatted as Bearer plus your token (no typos or extra spaces). Create a new token from API Integrations if unsure.
Missing toolsToken abilities: you need posts for post, comment, and analytics tools; workspaces and accounts to discover IDs.
Empty or partial toolsUpdate the client; some older builds mishandle tools/list pagination.

See also