MCP server setup reference

ReputeMap MCP server setup: connect Claude by signing in, or Claude Code, Claude Desktop and Cursor with an API key. Tools, credits, troubleshooting.

Setup reference

This page is the reference: configs, tools, credits and troubleshooting. For what the server is, which clients it works with and how it compares to building your own, start at the MCP server overview.

Included with every paid plan — and it works during the 14-day trial.

What you need

  1. A ReputeMap account with an active plan (or trial) — start here.
  2. For Claude (claude.ai or Claude Desktop): nothing else, you sign in when you connect. For every other client: an API key from Settings → API keys (looks like rmk_…, shown once).

The server lives at:

https://api.reputemap.com/mcp

Claude (claude.ai and Claude Desktop): sign in, no key

ReputeMap is listed in Claude’s connectors directory and on MCP Market; every listing, with the browser extension and the reviews widget, is on ReputeMap apps.

  1. In Claude, open Customize → Connectors → Discover and search for ReputeMap (or click + Add → Add custom connector, name it ReputeMap and paste https://api.reputemap.com/mcp).
  2. Click Connect.
  3. Sign in to ReputeMap and pick the workspace Claude may use. The screen lists what Claude asks for: read your reviews (locations, reviews, stats, usage) and act on your reviews (save reply drafts, send review-request emails, publish replies you approve).
  4. Click Approve. You’re back in Claude, connected.

In Claude’s connector settings you can set each tool to run freely, ask first, or be blocked — for example, block the three write tools to keep Claude read-only.

Claude asks you before every draft, email or publish. On Team and Enterprise plans an Owner adds the connector once under Organization settings → Connectors; members then click Connect in Customize → Connectors.

Who can connect: owners, admins and analysts of the workspace (client viewers can’t). To disconnect, go to Settings → API keys → Connected apps in ReputeMap, or remove the connector in Claude.

Claude Code

One command:

claude mcp add --transport http reputemap https://api.reputemap.com/mcp \
  --header "Authorization: Bearer rmk_YOUR_KEY"

Then just ask: claude "which of my locations has the most unanswered reviews?"

Prefer to sign in instead of using a key? Leave out --header, then run /mcp inside Claude Code and pick ReputeMap to sign in through the browser.

Claude Desktop with an API key

The easy way is the custom connector above. If you’d rather use a key, Claude Desktop connects through the mcp-remote bridge (needs Node.js installed). Add this to claude_desktop_config.json (Settings → Developer → Edit Config):

{
  "mcpServers": {
    "reputemap": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote", "https://api.reputemap.com/mcp",
        "--header", "Authorization: Bearer rmk_YOUR_KEY"
      ]
    }
  }
}

Restart Claude Desktop; the ReputeMap tools appear under the 🔨 tools icon.

Cursor

Add to ~/.cursor/mcp.json (or .cursor/mcp.json inside a project):

{
  "mcpServers": {
    "reputemap": {
      "url": "https://api.reputemap.com/mcp",
      "headers": { "Authorization": "Bearer rmk_YOUR_KEY" }
    }
  }
}

Copy-paste-ready versions of all three configs are in the reputemap-examples repo.

Available tools

ToolWhat it doesCredits
list_locationsEvery location the org manages, with ids1
list_reviewsReviews, filterable (location, rating range, unanswered, last N days) — includes published reply text and Google’s moderation state of it1
get_review_statsPer-location + totals: counts, average rating, 1–5 breakdown, unanswered, trailing-window activity1
send_review_requestSends a real review-request email through the campaign engine (respects opt-outs and the suppression list; a repeat ask for the same address at the same location is rejected, not re-sent)1
draft_replyReply variants from ReputeMap’s tuned generator; saves the draft into the app editor — never publishes1
publish_replyPublishes an explicitly approved reply to Google; destructive-flagged, audit-logged, manual fallback on failure; says whether Google is still checking it or rejected it1
get_usageCurrent month’s credit usagefree

Every tool has a title and a read-only or destructive flag. In Claude, the four read tools run without asking; draft_reply, send_review_request and publish_reply ask you first, every time.

MCP tool calls share the same 1,000 credits/month allowance as the REST API — plenty for daily use; get_usage tells you where you stand at any time.

Troubleshooting

SymptomCause & fix
401 Invalid or missing API keyKey typo, or the key was revoked — create a new one in Settings → API keys
403 … requires an active paid planThe org has no subscription — pick a plan (the 14-day trial counts)
Tool answers “Monthly API credit limit reached”Credits reset on the 1st; check get_usage
Claude Desktop doesn’t show the toolsnpx needs Node.js ≥ 18; fully restart the app after editing the config
Claude: tools answer “requires an active paid plan”The workspace you picked has no plan or trial — pick a plan, or reconnect and pick another workspace
The workspace isn’t offered on the sign-in screenYou’re a client viewer there, or it’s the demo workspace; ask an owner or admin

Is it safe?

A key, or a Claude sign-in, only reaches one workspace you already own: its locations, reviews and stats. A Claude connection ends the moment you disconnect it, or when you leave the workspace. The one write action — send_review_request — goes through the same suppression/opt-out engine as the in-app campaigns, so anyone who unsubscribed stays unsubscribed, and a repeat ask for the same address at the same location is not re-sent: the tool returns status: "already_requested", no second email goes out and no credit is spent. It is annotated so your client asks before running it. Revoke the key, or disconnect Claude, at any time and access dies instantly.

Publishing is explicit, never a side effect. publish_reply posts only the exact text you approved in the conversation, is annotated destructive/non-idempotent so well-behaved clients ask before running it, and every publish is audit-logged. If Google refuses the request, your text is preserved in ReputeMap with a manual fallback — words are never lost.

Google also moderates owner replies. publish_reply answers with google_state: pending means Google is checking the reply before showing it; status rejected_by_google means Google won’t show it, with policy_violation and detail saying why — write a different reply. list_reviews carries the same state on every review (reply_state, reply_policy_violation), and a rejected reply counts as no reply in unanswered_only.