ReputeMap について
ReputeMapは、Google Business Profileのレビューを管理する地域事業者や代理店向けのホスト型MCPサーバーです。レビューの絞り込みや拠点別統計に対応し、公開せずに返信案を作成できるほか、承認済みの文面の公開やレビュー依頼メールの送信も行えます。
主な機能
- 01拠点、評価、日付でレビューを絞り込み
- 02拠点別・組織全体の統計を確認
- 03公開せずに返信案を作成
- 04承認済み返信をGoogleに公開
- 05レビュー依頼メールを送信
活用シーン
- 01未返信の低評価レビューを探す
- 02否定的な意見への返信案を作る
- 03承認済みのオーナー返信を公開
- 04作業完了後に顧客へレビューを依頼
MCP 対応
Streamable HTTP経由で、Google Business Profileのレビュー管理ツールをMCPクライアントに提供します。クライアントはReputeMap APIキーで認証し、ヘッダー付きHTTP接続に対応しない場合はローカルstdioブリッジを利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://api.reputemap.com/mcpclaude mcp add --transport http com-reputemap-reputemap https://api.reputemap.com/mcp{"mcpServers":{"com-reputemap-reputemap":{"type":"http","url":"https://api.reputemap.com/mcp"}}}Cursor で開く{"servers":{"com-reputemap-reputemap":{"type":"http","url":"https://api.reputemap.com/mcp"}}}VS Code で開く{"mcpServers":{"com-reputemap-reputemap":{"type":"http","url":"https://api.reputemap.com/mcp"}}}{"mcpServers":{"com-reputemap-reputemap":{"serverUrl":"https://api.reputemap.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://api.reputemap.com/mcp認証が必要ツール
7このツールにパラメーターはありません。
詳細
ReputeMap MCP:AI エージェント向け Google レビュー管理
ReputeMap の Model Context Protocol サーバーです。Claude、Cursor、Cline、VS Code、Codex、Gemini CLI など、あらゆる MCP クライアントで Google ビジネスプロフィールのレビューを管理できます。オーナーからの返信がインライン表示されるフィルター可能なレビュー受信トレイ、拠点ごとの統計、AI による返信の下書き、承認した返信の公開、誠実なレビュー依頼メールに対応しています。
「先週の星3つ未満の未返信レビューを、評価の低い順にすべて表示してください。」 「新しい順に3件の低評価レビューへの返信を、落ち着いたトーンで下書きしてください。」 「Riverside のレビューへの2つ目の下書きを、書かれているとおりに公開してください。」 「Henderson 家の仕事が終わりました。レビュー依頼を送ってください。」
おそらく何も実行する必要はありません。 サーバーはホストされています。
https://api.reputemap.com/mcp Streamable HTTP · JSON-RPC 2.0
Authorization: Bearer rmk_YOUR_KEY app.reputemap.com → Settings → API keys
レジストリ:com.reputemap/reputemap
· Solo(月額19ドル)から、すべての有料プランに含まれます。14日間のトライアルでも利用できます。
ツール
ツールは7つあります。読み取り専用が4つ、操作用が3つです。
| ツール | 機能 | 種別 | クレジット |
|---|---|---|---|
list_locations | 組織が管理するすべての拠点と、ほかのツールで使用する ID を一覧表示します | 読み取り専用 | 1 |
list_reviews | Google レビューを新しい順に表示し、公開済みのオーナー返信をインライン表示します。拠点、星の範囲、未返信のみ、過去 N 日間で絞り込めます。offset によるページ送りに対応し、1ページあたり最大50件を取得できます。各レビューには、返信に関する Google のモデレーション状態(reply_state、reply_policy_violation)が含まれます | 読み取り専用 | 1 |
get_review_stats | 拠点ごとおよび組織全体のレビュー件数、平均評価、星1~5の内訳、未返信件数、期間内のアクティビティを表示します(期間のデフォルトは30日間です) | 読み取り専用 | 1 |
draft_reply | ReputeMap 独自の生成機能で、1件のレビューへの返信案を2~3件作成します。ビジネスに保存された文体と署名を使用します。任意で、その都度の instructions(例:「40語以内にしてください」)を指定できます。下書きはアプリのエディターに保存され、公開されることはありません | 下書きを保存 | 1 |
publish_reply | ユーザーが承認した返信テキストを、そのまま Google のレビューに公開します | Google に投稿 | 1 |
send_review_request | ReputeMap のキャンペーンエンジンを通じて、顧客にレビュー依頼メールを1通送信します | メールを送信 | 1 |
get_usage | 今月のクレジット使用量、上限、レート制限を表示します | 読み取り専用 | 無料 |
ツールには MCP アノテーションが付いています。読み取り専用ツール4つには readOnlyHint があり、残り3つにはありません。また、publish_reply には destructiveHint も付いています。これらのシグナルによって、クライアントはツールの実行前に確認を求めます。
安全性:積極的なエージェントにできること、できないこと
- アクセスできるのはお客様のデータのみです。 キーでアクセスできるのは、お客様の組織が所有するロケーション、レビュー、統計情報だけです。オリジンをまたぐブラウザー呼び出しは拒否されます。
- 下書きが公開されることはありません。
draft_replyは ReputeMap に下書きを保存します。publish_replyが呼び出されるか、アプリで誰かが「公開」をクリックするまでは、Google に送信されません。 - 公開には明示的な承認が必要です。
publish_replyに渡すのは、お客様が承認した正確なテキストのみです。そのレビューに既存のオーナー返信がある場合は置き換えるため、破壊的操作としてマークされており、公開はすべて監査ログに記録されます。Google がリクエストを拒否した場合、テキストは ReputeMap に残り、手動での対応が必要であることを示すフォールバック(status: "manual_required")が設定されるため、お客様の文章が失われることはありません。 - オーナー返信は Google の審査を受け、ツールから結果を確認できます。
publish_replyの応答にはgoogle_stateが含まれます。pendingは、返信が表示される前に Google が確認中であることを意味します。status: "rejected_by_google"は Google が返信を表示しないことを意味します。理由はpolicy_violationとdetailに示されるため、別の返信を作成してください。list_reviewsでは各レビューに同じ状態が含まれ、拒否された返信はunanswered_onlyでは返信なしとして扱われます。 - 配信停止の設定が優先されます。
send_review_requestは、アプリ内キャンペーンと同じ配信停止および抑止のチェックを実行します。このロケーションからこのメールアドレスにすでにリクエストを送信済みの場合、status: "already_requested"が返されます。2通目のメールは送信されず、クレジットは返還されます。実在する人に実際のメールを送る操作であるため、非冪等として注記され、クライアント側で事前確認が行われます。 - ワンクリックで取り消せます。 キーはハッシュとしてのみ保存され、一度だけ表示されます。キーを取り消すと、アクセスは直ちに遮断されます。
API キーを取得する
- 有料プラン、または14日間のトライアル(カードが必要)で ReputeMap ワークスペースを用意します。こちらから開始してください。
- アプリで Settings → API keys を開きます(オーナーと管理者が利用できます)。キーは
rmk_で始まり、一度だけ表示されます。
次に、以下からクライアントを選びます。各クライアントでは、次の2つの接続方法を利用できます。
- リモート(推奨):クライアントは
https://api.reputemap.com/mcpと直接通信し、Authorization: Bearerヘッダーとしてキーを送信します。 - ローカル stdio ブリッジ:ローカルプログラムしか起動できないクライアント向けです。クライアントが
REPUTEMAP_API_KEYを設定してnpx -y @reputemap/mcp(Node 18+)を実行し、ブリッジがすべてのリクエストをホストされたエンドポイントに転送します。
クライアントごとのセットアップ
Claude Code
リモート接続なら、再起動不要でコマンドを1つ実行するだけです。
claude mcp add --transport http reputemap https://api.reputemap.com/mcp \
--header "Authorization: Bearer rmk_YOUR_KEY"
.mcp.json を手動で記述する場合は、エントリに "type": "http" を含めてください。これがないと、Claude Code はエントリをローカルプログラムとして読み込み、失敗します。
代わりに stdio ブリッジを使う場合:
claude mcp add reputemap -e REPUTEMAP_API_KEY=rmk_YOUR_KEY -- npx -y @reputemap/mcp
Claude Desktop
stdio ブリッジを claude_desktop_config.json に設定し(Settings → Developer →
Edit Config)、アプリを完全に終了してから再起動します。Node.js 18+ が必要です。
{
"mcpServers": {
"reputemap": {
"command": "npx",
"args": ["-y", "@reputemap/mcp"],
"env": { "REPUTEMAP_API_KEY": "rmk_YOUR_KEY" }
}
}
}
汎用の mcp-remote ブリッジも使えます:
"args": ["-y", "mcp-remote", "https://api.reputemap.com/mcp", "--header", "Authorization: Bearer rmk_YOUR_KEY"]。
Cursor
リモート接続の場合は、~/.cursor/mcp.json(すべてのプロジェクト)または .cursor/mcp.json(1つのプロジェクト)に設定します。
{
"mcpServers": {
"reputemap": {
"url": "https://api.reputemap.com/mcp",
"headers": { "Authorization": "Bearer rmk_YOUR_KEY" }
}
}
}
代わりに stdio ブリッジを使う場合:
{
"mcpServers": {
"reputemap": {
"command": "npx",
"args": ["-y", "@reputemap/mcp"],
"env": { "REPUTEMAP_API_KEY": "rmk_YOUR_KEY" }
}
}
}
Cline
Cline → MCP Servers → Configure MCP Servers を開くと
cline_mcp_settings.json が開きます。ここにサーバーを追加します。リモート接続の場合:
{
"mcpServers": {
"reputemap": {
"type": "streamableHttp",
"url": "https://api.reputemap.com/mcp",
"headers": { "Authorization": "Bearer rmk_YOUR_KEY" },
"disabled": false
}
}
}
代わりに stdio ブリッジを使う場合:
{
"mcpServers": {
"reputemap": {
"command": "npx",
"args": ["-y", "@reputemap/mcp"],
"env": { "REPUTEMAP_API_KEY": "rmk_YOUR_KEY" },
"disabled": false
}
}
}
VS Code(Copilot エージェントモード)
ワークスペース内の .vscode/mcp.json に設定します。トップレベルのキーは
mcpServers ではなく servers です。VS Code はキーを一度だけ尋ねて保存するため、ファイル内には残りません。
{
"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}" }
}
}
}
代わりに stdio ブリッジを使う場合:reputemap エントリを
{ "type": "stdio", "command": "npx", "args": ["-y", "@reputemap/mcp"], "env": { "REPUTEMAP_API_KEY": "${input:reputemap-key}" } } に置き換えます。
Windsurf
~/.codeium/windsurf/mcp_config.json に設定します。フィールド名は serverUrl です。
{
"mcpServers": {
"reputemap": {
"serverUrl": "https://api.reputemap.com/mcp",
"headers": { "Authorization": "Bearer rmk_YOUR_KEY" }
}
}
}
Codex CLI
~/.codex/config.toml に設定し、シェルで REPUTEMAP_API_KEY をエクスポートします。
[mcp_servers.reputemap]
url = "https://api.reputemap.com/mcp"
bearer_token_env_var = "REPUTEMAP_API_KEY"
Gemini CLI
gemini mcp add --transport http reputemap https://api.reputemap.com/mcp \
--header "Authorization: Bearer rmk_YOUR_KEY"
または、フィールドが httpUrl の ~/.gemini/settings.json に設定します。
{
"mcpServers": {
"reputemap": {
"httpUrl": "https://api.reputemap.com/mcp",
"headers": { "Authorization": "Bearer rmk_YOUR_KEY" }
}
}
}
その他の MCP クライアント
URL: https://api.reputemap.com/mcp
Transport: Streamable HTTP (JSON-RPC 2.0 over POST)
Header: Authorization: Bearer rmk_YOUR_KEY (X-API-Key: rmk_YOUR_KEY also works)
ChatGPT はまだサポートされていません。コネクターは OAuth のみを受け付けますが、このサーバーは API キーを使用します。
接続を確認するには: 「自分の ReputeMap のロケーションを一覧表示して」 と尋ねてください。ID が返ってくれば、接続されています。
クレジットと利用制限
- 組織ごとに月 1,000 クレジット。すべてのプランで同じで、REST API と共有されます。クレジットは毎月 1 日にリセットされます。
get_usageを除き、ツール呼び出し 1 回につき 1 クレジットを消費します。形式が正しくない引数を含む呼び出しはクレジットが課金される前に拒否され、send_review_requestの結果がalready_requestedの場合はクレジットが返還されます。- 組織ごとに毎分 60 リクエストです。
- クレジットがなくなると、ツールはエージェントが読み取れるエラー(「Monthly API credit limit reached」)を返します。
get_usageで現在の利用状況を確認できます。
| 症状 | 原因と対処 |
|---|---|
401 API キーが無効または見つからない | 入力ミス、またはキーが取り消されています。Settings → API keys で新しいキーを作成してください |
403 … requires an active paid plan | ワークスペースにサブスクリプションがありません。プランを選択してください。14 日間のトライアルも対象です |
| "Monthly API credit limit reached" | クレジットは毎月 1 日にリセットされます。get_usage を確認してください |
| Claude Desktop にツールが表示されない | npx には Node.js 18 以降が必要です。設定を編集した後、アプリを完全に終了して再度開いてください |
このリポジトリの内容
MCP を stdio 経由で通信するものの、HTTP ヘッダーを送信できないクライアント向けの、依存関係ゼロの stdio ブリッジです。2 種類あります。Node 18 以降向けの bin/cli.mjs(@reputemap/mcp として公開)と、Python 3.9 以降向けの server.py(標準ライブラリのみ)です。どちらもすべての JSON-RPC メッセージを TLS 経由でホストされたエンドポイントに転送し、応答をストリーミングで返します。ブリッジは独自のツール一覧を保持しないため、ホストされたサーバーに新しいツールが追加されると、すぐに利用できます。
# 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 は、公式 MCP レジストリに com.reputemap/reputemap として公開されるマニフェストです。.plugin/plugin.json と .mcp.json は、プラグイン対応クライアント向けに同じサーバーを記述しています。
ブリッジは読みやすい約 120 行のコードで、通信される内容も示しています。API キーは、api.reputemap.com への TLS リクエストの Authorization ヘッダーにのみ含まれます。
プロトコルに関する注意事項
- メソッド:
initialize→notifications/initialized→tools/list/tools/call、およびping。サポートされるリビジョン:2024-11-05、2025-03-26、2025-06-18、2025-11-25。 - 検出(
initialize、ping、tools/list)はキーなしで応答するため、クライアントやディレクトリは認証前にツールカタログを表示できます。tools/callでは常にキーが必要です。 - プロトコルエラーには標準の JSON-RPC コードが使用されます。ツールレベルのエラー(ID が無効、クレジット不足など)は、
isError: trueを含むツール結果として返されるため、エージェントがそれを読み取ってユーザーに伝えられます。 - サーバーはステートレスです。POST のみを受け付け、セッションもサーバーから開始する SSE ストリームもありません(
GETは 405 を返します)。ブリッジは引き続きMcp-Session-Idを尊重し、JSON と SSE フレーム形式の応答の両方を受け付けます。 - JSON-RPC バッチは、2025-06-18 より前のリビジョンをネゴシエートしたクライアントからのみ受け付けます。このリビジョンではバッチ処理が削除されています。外部の
Originヘッダーを含むリクエストは拒否されます。
リンク
- reputemap.com:地域のビジネスや代理店向けの Google レビュー管理
- MCP サーバーの概要 · MCP セットアップリファレンス · REST API ドキュメント
- レシピ(cron ダイジェスト、CRM 同期):reputemap-com/examples
- 連携するエージェントスキル:reputemap-com/review-skills (
npx skills add reputemap-com/review-skills) - LinkedIn · [email protected]
ReputeMap は独立したツールであり、Google とは提携していません。
ライセンス
MIT。詳細はLICENSEをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。