Back to Discover

mcp

connector

reputemap

Read and filter your Google Business Profile reviews, get stats, and send review requests.

View on GitHub
0 starsSynced Aug 2, 2026

Install to Claude Code

/plugin marketplace add reputemap/mcp

README

ReputeMap MCP — Google review management for AI agents

The Model Context Protocol surface of ReputeMap: Google Business Profile reviews — a filterable review inbox, per-location stats, and honest review-request campaigns — for Claude, Cursor, Codex, Gemini CLI and any other MCP-capable agent.

"Show me every unanswered review under 3 stars from the last week, worst first." "Draft replies to the three newest negative reviews in a calm tone." "We just finished the Hendersons' job — send them a review request."

You probably don't need to run anything. The server is hosted:

https://api.reputemap.com/mcp          Streamable HTTP · JSON-RPC 2.0
Authorization: Bearer rmk_YOUR_KEY     app.reputemap.com → Settings → API keys

Registry: com.reputemap/reputemap · any paid plan (the 14-day free trial counts).

Setup per client

Claude Code — one command, no restart:

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

Cursor.cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

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

Claude Desktopclaude_desktop_config.json, then restart the app fully:

{
  "mcpServers": {
    "reputemap": {
      "command": "npx",
      "args": ["-y", "@reputemap/mcp"],
      "env": { "REPUTEMAP_API_KEY": "rmk_YOUR_KEY" }
    }
  }
}

VS Code (Copilot agent mode).vscode/mcp.json:

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

Windsurf~/.codeium/windsurf/mcp_config.json (the field is serverUrl):

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

Codex CLI~/.codex/config.toml, then export REPUTEMAP_API_KEY:

[mcp_servers.reputemap]
url = "https://api.reputemap.com/mcp"
bearer_token_env_var = "REPUTEMAP_API_KEY"

Gemini CLI~/.gemini/settings.json (the field is httpUrl):

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

ChatGPT — Settings → Connectors → create a custom connector (Developer mode), point it at https://api.reputemap.com/mcp and pick API key authentication, then paste your key.

Full walkthroughs with screenshots: reputemap.com/docs/mcp. More recipes (cron digests, CRM sync): reputemap/examples. Companion agent skills: reputemap/review-skills (npx skills add reputemap/review-skills).

What's in this repo

A zero-dependency stdio bridge for clients that speak MCP over stdio and can't send HTTP headers — in two flavours: bin/cli.mjs (Node 18+, published as @reputemap/mcp) and server.py (Python 3.9+, stdlib only). Both forward every JSON-RPC message to the hosted endpoint over TLS and stream responses back.

# Node — one-liner, no install
REPUTEMAP_API_KEY="rmk_..." npx -y @reputemap/mcp

# Python — no dependencies
REPUTEMAP_API_KEY="rmk_..." python3 server.py

server.json is the manifest published to the official MCP registry as com.reputemap/reputemap.

Being ~120 readable lines, the bridge doubles as a reference for what travels over the wire: your API key goes only into the Authorization header of TLS requests to api.reputemap.com — nothing else, nowhere else.

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 text1
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; idempotent)1
get_usageCurrent month's credit usagefree

Credits ship with every ReputeMap plan (1,000/month, shared with the REST API); get_usage is free and tells you where you stand. Rate limit: 60 requests/minute per org.

The one write action — send_review_request — goes through the same suppression/opt-out engine as in-app campaigns, so an over-eager agent can't spam your customers. Tools carry MCP annotations (readOnlyHint/destructiveHint), and discovery (initialize, tools/list) works without a key, so clients can render the catalog before you authenticate. Revoke the key at any time and access dies instantly.

Protocol notes

  • Methods: initializenotifications/initializedtools/list / tools/call. Protocol errors use standard JSON-RPC codes; tool-level errors (bad id, out of credits) come back as tool results your agent can read.
  • The server is stateless — no session required; the bridge still honours Mcp-Session-Id and accepts both JSON and SSE-framed responses.
  • Batch requests are rejected (removed in MCP 2025-11-25); foreign Origin headers are refused.

Links

License

MIT — see LICENSE.

Rendered live from reputemap/mcp's GitHub README — not stored, always reflects the source repo.

2 Install Methods

NameDescriptionCategorySource
npm packageInstall via npm (stdio transport)mcp-server@reputemap/mcp
streamable-http remoteHosted streamable-http endpointmcp-serverhttps://api.reputemap.com/mcp

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.