list_locations
List locations
List every business location this ReputeMap org manages, with ids to use in the other tools.
無需輸入參數。

com.reputemap由 reputemap.com 發布官方發布者v1.1.1更新於 Oct 24, 2026
Read Google reviews and stats, draft AI replies, publish the ones you approve, request reviews.
ReputeMap 讓助理讀取 Google 商家評論與統計、產生 AI 回覆草稿、發布已核准的回覆,並寄送評論邀請信件。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/com.reputemap%2Freputemap/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。把它新增到你客戶端的 mcpServers 設定中。
{
"mcpServers": {
"reputemap": {
"type": "http",
"url": "https://api.reputemap.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}The Model Context Protocol server of ReputeMap. It gives Claude, Cursor, Cline, VS Code, Codex, Gemini CLI and any other MCP client your Google Business Profile reviews: a filterable review inbox with owner replies inlined, per-location stats, AI reply drafts, publishing a reply you approved, and honest review-request emails.
"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." "Publish the second draft for the Riverside review, exactly as written." "We just finished the Hendersons' job. Send them a review request."
You probably don't need to run anything. The server is hosted:
Registry: com.reputemap/reputemap
· included in every paid plan, from Solo ($19/month), and in the 14-day trial.
Seven tools: four read, three act.
Tools carry MCP annotations: the four read tools have readOnlyHint; the
other three don't, and publish_reply is also marked destructiveHint. Those
are the signals that make a client ask you before it runs a tool.
draft_reply stores drafts in ReputeMap. Nothing
reaches Google until publish_reply is called or someone clicks Publish in the app.publish_reply takes the exact text you
approved and nothing else. It replaces any existing owner reply on that review,
which is why it is flagged destructive, and every publish is audit-logged. If
Google refuses the request, the text stays in ReputeMap with a manual fallback
(status: "manual_required"), so your words are never lost.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;
policy_violation and detail say why, so write a different reply.
list_reviews carries the same state on every review, and a rejected reply
counts as no reply for unanswered_only.send_review_request runs through the same opt-out and
suppression checks as in-app campaigns. If this location already asked this
address, you get status: "already_requested": no second email goes out and the
credit is given back. It is still a real email to a real person, so it is
annotated non-idempotent and clients confirm first.rmk_ and is shown once.Then pick your client below. Each client has two ways in:
https://api.reputemap.com/mcp
directly and sends the key as an Authorization: Bearer header.npx -y @reputemap/mcp (Node 18+) with REPUTEMAP_API_KEY set,
and the bridge forwards everything to the hosted endpoint.Remote, one command, no restart:
Writing .mcp.json by hand? Include "type": "http" in the entry. Without
it, Claude Code reads the entry as a local program and fails.
Stdio bridge instead:
Use the stdio bridge in claude_desktop_config.json (Settings → Developer →
Edit Config), then fully quit and reopen the app. Needs Node.js 18+.
The generic mcp-remote bridge works too:
"args": ["-y", "mcp-remote", "https://api.reputemap.com/mcp", "--header", "Authorization: Bearer rmk_YOUR_KEY"].
Remote, in ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):
Stdio bridge instead:
Open Cline → MCP Servers → Configure MCP Servers, which opens
cline_mcp_settings.json, and add the server. Remote:
Stdio bridge instead:
.vscode/mcp.json in the workspace. The top-level key is servers, not
mcpServers. VS Code asks for the key once and stores it, so it stays out of the file:
Stdio bridge instead: replace the reputemap entry with
{ "type": "stdio", "command": "npx", "args": ["-y", "@reputemap/mcp"], "env": { "REPUTEMAP_API_KEY": "${input:reputemap-key}" } }.
~/.codeium/windsurf/mcp_config.json. Note the field is serverUrl:
~/.codex/config.toml, then export REPUTEMAP_API_KEY in your shell:
Or in ~/.gemini/settings.json, where the field is httpUrl:
ChatGPT isn't supported yet: its connectors accept only OAuth, and this server uses an API key.
Check the connection: ask "list my ReputeMap locations". If the ids come back, you're connected.
get_usage, which is free. A call with
malformed arguments is rejected before a credit is charged, and a
send_review_request that comes back already_requested is refunded.get_usage tells you where you stand.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+, standard library only). Both forward
every JSON-RPC message to the hosted endpoint over TLS and stream the
responses back. The bridge holds no tool list of its own, so new tools reach
you as soon as the hosted server ships them.
server.json is the manifest published to the
official MCP registry as
com.reputemap/reputemap. .plugin/plugin.json and
.mcp.json describe the same server for plugin-aware clients.
The bridge is about 120 readable lines, so it also documents what travels
over the wire: your API key goes only into the Authorization header of TLS
requests to api.reputemap.com.
initialize → notifications/initialized → tools/list /
tools/call, plus ping. Supported revisions: 2024-11-05, 2025-03-26,
2025-06-18, 2025-11-25.initialize, ping, tools/list) answers without a key, so
clients and directories can show the tool catalogue before you authenticate.
tools/call always needs the key.isError: true, so your agent can
read them and tell you.GET answers 405). The bridge still honours Mcp-Session-Id and
accepts both JSON and SSE-framed responses.Origin header are refused.npx skills add reputemap-com/review-skills)ReputeMap is an independent tool and is not affiliated with Google.
MIT, see LICENSE.
來源:README.md,提交 bd69e06
List locations
List every business location this ReputeMap org manages, with ids to use in the other tools.
無需輸入參數。
List reviews
List Google reviews for the org (newest first) with the published reply text inlined. Filter by location, star-rating range, replied/unreplied, or a trailing day window. Google moderates owner replies: reply_state is approved, pending (Google is checking it) or rejected (not shown on Google - has_reply is false and reply_policy_violation says why; write a new reply).
limitoffsetrating_maxrating_minsince_dayslocation_idunanswered_onlyGet review stats
Review stats per location and org totals: review counts, average rating, 1-5 star breakdown, unanswered count, and activity in the trailing window (default 30 days).
dayslocation_idSend review request email
Send ONE review-request email to a real customer, through ReputeMap's campaign engine (respects unsubscribes and the suppression list). This emails a real person - only use it when the user explicitly asks to request a review. Returns status 'sent', 'skipped' (opted out or suppressed), 'already_requested' (this location already asked this address - no second email is sent and no credit is spent) or 'failed'.
nameemail必填location_id必填Draft reply variants
Generate 2-3 reply drafts for one review using ReputeMap's tuned generator (the same one the app uses, with the business's saved voice and sign-off), and save the draft so it appears in the app's editor. NEVER publishes anything - drafts only.
review_id必填instructionsPublish reply to Google
PUBLISH a reply to this review's public Google profile. This is a public, customer-visible action - call it ONLY when the user has explicitly approved this exact text (Google's policy: a person approves every reply; one call per approved reply, never in bulk). If Google refuses the request, the text is preserved in ReputeMap with a manual fallback (status 'manual_required') - words are never lost. Google also moderates replies: google_state 'pending' = it is checking the reply before showing it; status 'rejected_by_google' = it will not show it (policy_violation and detail say why) - write a different reply.
text必填review_id必填Get API usage
Current month's API credit usage for this org (shared between the REST API and MCP tools).
無需輸入參數。
已滿足適用檢查項的 100%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
https://api.reputemap.com/mcp Streamable HTTP · JSON-RPC 2.0Authorization: Bearer rmk_YOUR_KEY app.reputemap.com → Settings → API keysclaude mcp add --transport http reputemap https://api.reputemap.com/mcp \ --header "Authorization: Bearer rmk_YOUR_KEY"claude mcp add reputemap -e REPUTEMAP_API_KEY=rmk_YOUR_KEY -- npx -y @reputemap/mcp{ "mcpServers": { "reputemap": { "command": "npx", "args": ["-y", "@reputemap/mcp"], "env": { "REPUTEMAP_API_KEY": "rmk_YOUR_KEY" } } }}{ "mcpServers": { "reputemap": { "url": "https://api.reputemap.com/mcp", "headers": { "Authorization": "Bearer rmk_YOUR_KEY" } } }}{ "mcpServers": { "reputemap": { "command": "npx", "args": ["-y", "@reputemap/mcp"], "env": { "REPUTEMAP_API_KEY": "rmk_YOUR_KEY" } } }}{ "mcpServers": { "reputemap": { "type": "streamableHttp", "url": "https://api.reputemap.com/mcp", "headers": { "Authorization": "Bearer rmk_YOUR_KEY" }, "disabled": false } }}{ "mcpServers": { "reputemap": { "command": "npx", "args": ["-y", "@reputemap/mcp"], "env": { "REPUTEMAP_API_KEY": "rmk_YOUR_KEY" }, "disabled": false } }}{ "inputs": [ { "type": "promptString", "id": "reputemap-key", "description": "ReputeMap API key (rmk_...)", "password": true } ], "servers": { "reputemap": { "type": "http", "url": "https://api.reputemap.com/mcp", "headers": { "Authorization": "Bearer ${input:reputemap-key}" } } }}{ "mcpServers": { "reputemap": { "serverUrl": "https://api.reputemap.com/mcp", "headers": { "Authorization": "Bearer rmk_YOUR_KEY" } } }}[mcp_servers.reputemap]url = "https://api.reputemap.com/mcp"bearer_token_env_var = "REPUTEMAP_API_KEY"gemini mcp add --transport http reputemap https://api.reputemap.com/mcp \ --header "Authorization: Bearer rmk_YOUR_KEY"{ "mcpServers": { "reputemap": { "httpUrl": "https://api.reputemap.com/mcp", "headers": { "Authorization": "Bearer rmk_YOUR_KEY" } } }}URL: https://api.reputemap.com/mcpTransport: Streamable HTTP (JSON-RPC 2.0 over POST)Header: Authorization: Bearer rmk_YOUR_KEY (X-API-Key: rmk_YOUR_KEY also works)# Node: one-liner, no installREPUTEMAP_API_KEY="rmk_..." npx -y @reputemap/mcp
# Python: no dependenciesREPUTEMAP_API_KEY="rmk_..." python3 server.py