# Synup MCP — Getting Connected

Source: https://developer.synup.com/mcp/getting-connected

## Synup MCP — Getting Connected

Synup MCP lets you run your local presence — locations, reviews, rankings, social posts —
straight from the AI tools you already talk to, like Claude, Cursor, or Windsurf. No new
dashboard to learn. You just ask, and your assistant does the work in your Synup account.

This guide gets you connected. When you're in, head over to
**[Putting It to Work](/mcp/putting-it-to-work)** to start asking.

### Find your tool

Know what you're using? Jump straight to its setup:

| Your tool | How you connect | Go to |
|-----------|-----------------|-------|
| **Claude.ai** | Sign in | [Connect by signing in →](#connect-by-signing-in) |
| **Claude Desktop** | Sign in | [Connect by signing in →](#connect-by-signing-in) |
| **Claude Code** | API key | [Set up Claude Code →](#claude-code) |
| **Cursor** | One click or API key | [Set up Cursor →](#cursor) |
| **Windsurf** | API key | [Set up Windsurf →](#windsurf) |

Using something else? Any tool that supports custom MCP connectors works — follow
[Pick the way that fits you](#pick-the-way-that-fits-you) to choose your route.

### In this guide

- [What Synup MCP does](#what-synup-mcp-does)
- [Pick the way that fits you](#pick-the-way-that-fits-you)
- [Connect by signing in](#connect-by-signing-in) — Claude.ai, Claude Desktop
- [Connect with an API key](#connect-with-an-api-key) — Claude Code, Cursor, Windsurf
- [Read access or write access](#read-access-or-write-access)
- [A look under the hood](#a-look-under-the-hood)
- [Keeping your assistant fast](#keeping-your-assistant-fast)
- [When something doesn't work](#when-something-doesnt-work)

---

### What Synup MCP does

Think of it as a secure handshake between your Synup account and your AI assistant. Once
that handshake is in place, your assistant can pull up your reviews, check your rankings,
update a location, or schedule a post — all from a plain-English request.

You're always in charge of how much it can touch. Connect for a look-only experience, or
give it the green light to make changes. We'll cover that in
[Read access or write access](#read-access-or-write-access).

[↑ Back to top](#in-this-guide)

---

### Pick the way that fits you

There are two ways in, and the right one depends on the tool you're using:

- **Signing in** is the simplest. If you're using Claude.ai or Claude Desktop, you'll log
  in to Synup right in your browser — nothing to copy or paste.
- **An API key** is the way to go for code editors like Claude Code, Cursor, or Windsurf,
  where you drop a small bit of config into a settings file.

Not sure? If you're working inside a chat window, [sign in](#connect-by-signing-in). If
you're in a code editor, [use an API key](#connect-with-an-api-key).

[↑ Back to top](#in-this-guide)

---

### Connect by signing in

This is the no-fuss option for Claude.ai and Claude Desktop. You sign in to Synup the same
way you'd log in anywhere — no keys to manage.

1. In Claude, open **Settings → Connectors → Add custom connector**.
2. Paste in your server address. **Use your own Synup domain with `/mcp` added to the
   end** — the same web address you use to sign in to Synup (for example,
   `https://yourbrand.synup.com/mcp`). Connecting through your own domain takes you
   straight to your account.
3. Click **Add**. Claude will pop open a **Synup sign-in page**.
4. Log in, approve the access you're comfortable with, and you're done. Synup's tools show
   up right in your conversation.

> Using your own domain matters here: it's what sends you to the right sign-in page and
> connects you to your account rather than the default one.

Changed your mind later? You can disconnect from that same Connectors screen anytime.

> **Menus look different?** Claude's own setup guide is always the most current source:
> [Get started with custom connectors](https://support.anthropic.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp).
> Wherever it asks for the server URL, use your Synup domain + `/mcp`.

[↑ Back to top](#in-this-guide)

---

### Connect with an API key

If you're in a code editor, you'll use an API key instead. Grab yours first from Synup
under **Settings → Integrations**, then follow the steps for your tool below.

A couple of quick heads-ups before you start:

- Your API key is like a password. Keep it private, and swap the `YOUR_API_KEY`
  placeholder below for your real one.
- **Point the address at your own Synup domain** with `/mcp` on the end — the same web
  address you sign in to Synup at (for example `https://yourbrand.synup.com/mcp`). In the
  configs below, replace `YOUR_SYNUP_DOMAIN` with it.

#### Cursor

The fastest route is one click:

To connect through your own Synup domain, set it up by hand — open `~/.cursor/mcp.json`
and add:

```json
{
  "mcpServers": {
    "synup": {
      "type": "http",
      "url": "https://YOUR_SYNUP_DOMAIN/mcp",
      "headers": { "X-api-key": "YOUR_API_KEY", "X-access-mode": "write" }
    }
  }
}
```

> Cursor's own MCP guide stays current if their setup screens change:
> [cursor.com/docs/mcp](https://cursor.com/docs/mcp).

#### Claude Code

Paste this into your terminal (that's Terminal on a Mac, PowerShell on Windows) and press
Enter:

```bash
claude mcp add --transport http synup-mcp https://YOUR_SYNUP_DOMAIN/mcp \
  --header "X-api-key: YOUR_API_KEY" \
  --header "X-access-mode: write"
```

Then open Claude Code and run `/mcp` to make sure the connection took.

> Anthropic's Claude Code guide stays current if the command changes:
> [docs.claude.com/en/docs/claude-code/mcp](https://docs.claude.com/en/docs/claude-code/mcp).

#### Windsurf

Open your config file:

- macOS / Linux: `~/.codeium/windsurf/mcp_config.json`
- Windows: `%USERPROFILE%\.codeium\windsurf\mcp_config.json`

```json
{
  "mcpServers": {
    "synup": {
      "type": "http",
      "url": "https://YOUR_SYNUP_DOMAIN/mcp",
      "headers": { "X-api-key": "YOUR_API_KEY", "X-access-mode": "write" }
    }
  }
}
```

Save it, then restart your editor so the change takes effect.

> Windsurf's own MCP guide stays current if their config format or menus change:
> [docs.windsurf.com/plugins/cascade/mcp](https://docs.windsurf.com/plugins/cascade/mcp).

[↑ Back to top](#in-this-guide)

---

### Read access or write access

When you connect, you're also deciding how much your assistant can do.

- **Read** lets it look at everything but change nothing. It's the safe way to explore,
  pull reports, or try things out.
- **Write** lets it act — create, update, and delete on your behalf.

If you signed in, your access matches the permission you approved during sign-in. If you
used an API key, it's set by the `X-access-mode` value in your config (`read` or `write`).

A good rule of thumb: start in read, switch to write once you're ready to let the
assistant make changes.

[↑ Back to top](#in-this-guide)

---

### A look under the hood

Curious how the connection actually works? Here's the short version — feel free to
[skip ahead](#keeping-your-assistant-fast) if you just want to use it.

When you sign in, your assistant and Synup run a standard OAuth 2.1 exchange behind the
scenes: it discovers Synup's sign-in page, registers itself, sends you through the browser
login, and receives a secure token it uses from then on. Nothing sensitive is stored in
your client — the token is issued and refreshed by Synup.

If you'd rather pass credentials directly, here are the options:

| Way in | What you send | Good to know |
|--------|---------------|--------------|
| Sign-in (OAuth) | Browser login | Most convenient; nothing stored locally |
| API key | `X-api-key: YOUR_API_KEY` | Add `X-user-email` too if your account needs it |
| Bearer token | `Authorization: Bearer …` | Accepts an API key, an encoded credential, or a Synup token |
| Environment vars | `SYNUP_API_KEY`, `SYNUP_USER_EMAIL` | For local or embedded setups with no headers |

And the endpoint everything points at: your Synup domain followed by `/mcp`. The server is
tenant-aware — the domain you use is what routes you to your account and your sign-in page.

[↑ Back to top](#in-this-guide)

---

### Keeping your assistant fast

You might wonder why your assistant doesn't list every single tool the moment it connects.
That's on purpose. Rather than load all 120+ tools at once, it keeps a light footprint and
pulls in exactly the tool it needs, when it needs it. The upshot for you: faster, smoother
responses. There's nothing to set up — this just happens.

If you're building your own agent that calls tools by name and would rather see them all
up front, you can ask for everything at once by adding the header `X-MCP-Mode: direct`.

[↑ Back to top](#in-this-guide)

---

### When something doesn't work

**The API key won't authenticate.** Double-check there are no stray spaces, and that it
reads exactly `X-api-key: YOUR_API_KEY`. If you're unsure it's still valid, regenerate it
under Settings → Integrations.

**Sign-in won't complete or keeps looping.** Make sure pop-ups aren't blocked and you're
logged into the right Synup account. Removing and re-adding the connector restarts the
whole flow cleanly.

**It just won't connect.** Confirm the address is your Synup domain with `/mcp` on the end
and nothing missing, then fully restart your tool — not just the window, the whole app.

**The config file throws an error.** A single missing comma or quote will do it. Give the
JSON a quick once-over and restart.

[↑ Back to top](#in-this-guide)

---

✅ **You're in.** Next stop: **[Putting It to Work](/mcp/putting-it-to-work)**.

Stuck on any of the above? Reach out to your Synup account team.
