ReputeMap

ReputeMap é uma plataforma de reputação agêntica para marcas com múltiplas unidades: mais avaliações no Google, respostas por IA que você aprova, alertas e relatórios de 1 a 3 estrelas, a partir de US$ 19/mês.

Servidor MCP hospedado

npx add-mcp 'https://api.reputemap.com/mcp'

Instala no Claude Code, Codex, Cursor e outros

Documentação

ReputeMap MCP: gerenciamento de avaliações do Google para agentes de IA

O servidor Model Context Protocol da ReputeMap. Ele dá ao Claude, Cursor, Cline, VS Code, Codex, Gemini CLI e qualquer outro cliente MCP as avaliações do seu Perfil Empresarial do Google: uma caixa de entrada de avaliações filtrável com respostas do proprietário incorporadas, estatísticas por local, rascunhos de respostas com IA, publicação de uma resposta que você aprovou e e-mails honestos de solicitação de avaliação.

"Mostre-me todas as avaliações sem resposta com menos de 3 estrelas da última semana, das piores primeiro." "Elabore respostas para as três avaliações negativas mais recentes em um tom calmo." "Publique o segundo rascunho para a avaliação da Riverside, exatamente como escrito." "Acabamos de concluir o trabalho dos Hendersons. Envie a eles uma solicitação de avaliação."

Você provavelmente não precisa executar nada. O servidor está hospedado:

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

Registro: com.reputemap/reputemap · incluído em todos os planos pagos, a partir do Solo (US$ 19/mês), e no teste de 14 dias.

Ferramentas

Sete ferramentas: quatro de leitura, três de ação.

FerramentaO que fazTipoCréditos
list_locationsCada local que a organização gerencia, com os IDs que as outras ferramentas usamsomente leitura1
list_reviewsAvaliações do Google, das mais recentes primeiro, com a resposta publicada do proprietário incorporada. Filtre por local, faixa de estrelas, apenas sem resposta ou os últimos N dias; até 50 por página com paginação offset. Cada avaliação traz o estado de moderação da resposta pelo Google (reply_state, reply_policy_violation)somente leitura1
get_review_statsPor local e em toda a organização: número de avaliações, classificação média, detalhamento de 1–5★, contagem de sem resposta e atividade em uma janela móvel (padrão de 30 dias)somente leitura1
draft_reply2–3 rascunhos de resposta para uma avaliação do gerador próprio da ReputeMap, com a voz e a assinatura salvas da empresa. instructions opcional de uso único (ex.: "mantenha abaixo de 40 palavras"). Salva o rascunho no editor do aplicativo e nunca publicasalva um rascunho1
publish_replyPublica o texto exato da resposta que o usuário aprovou na avaliação no Googlepublica no Google1
send_review_requestEnvia um e-mail real de solicitação de avaliação a um cliente pelo mecanismo de campanhas da ReputeMapenvia e-mail1
get_usageUso de créditos deste mês, limite e limite de taxasomente leituragrátis

As ferramentas trazem anotações MCP: as quatro ferramentas de leitura têm readOnlyHint; as outras três não, e publish_reply também é marcada como destructiveHint. Esses são os sinais que fazem um cliente perguntar antes de executar uma ferramenta.

Segurança: o que um agente ansioso pode e não pode fazer

  • Somente seus dados. A chave alcança exatamente o que sua organização possui: seus locais, avaliações e estatísticas. Chamadas de navegador de origem cruzada são recusadas.
  • Rascunhar nunca publica. draft_reply armazena rascunhos na ReputeMap. Nada chega ao Google até que publish_reply seja chamada ou alguém clique em Publicar no aplicativo.
  • Publicar exige seu sim explícito. publish_reply recebe o texto exato que você aprovou e nada mais. Ela substitui qualquer resposta existente do proprietário naquela avaliação, por isso é marcada como destrutiva, e toda publicação é registrada em auditoria. Se o Google recusar a solicitação, o texto permanece na ReputeMap com uma alternativa manual (status: "manual_required"), para que suas palavras nunca se percam.
  • O Google modera as respostas do proprietário, e as ferramentas informam você. publish_reply responde com google_state: pending significa que o Google está verificando a resposta antes de exibi-la. status: "rejected_by_google" significa que o Google não a exibirá; policy_violation e detail dizem o motivo, então escreva uma resposta diferente. list_reviews traz o mesmo estado em cada avaliação, e uma resposta rejeitada conta como sem resposta para unanswered_only.
  • As exclusões ainda vencem. send_review_request passa pelas mesmas verificações de exclusão e supressão das campanhas no aplicativo. Se este local já solicitou este endereço, você recebe status: "already_requested": nenhum segundo e-mail é enviado e o crédito é devolvido. Ainda é um e-mail real para uma pessoa real, então é anotado como não idempotente e os clientes confirmam primeiro.
  • Revogue com um clique. As chaves são armazenadas apenas como hashes e mostradas uma vez. Revogar uma corta o acesso imediatamente.

Obtenha uma chave de API

  1. Tenha um espaço de trabalho ReputeMap em qualquer plano pago, ou no teste de 14 dias (cartão obrigatório). Comece aqui.
  2. No aplicativo: Configurações → Chaves de API (proprietários e administradores). A chave começa com rmk_ e é mostrada uma vez.

Depois escolha seu cliente abaixo. Cada cliente tem duas formas de entrada:

  • Remoto (recomendado): o cliente fala com https://api.reputemap.com/mcp diretamente e envia a chave como um cabeçalho Authorization: Bearer.
  • Ponte stdio local: para clientes que só podem iniciar um programa local. O cliente executa npx -y @reputemap/mcp (Node 18+) com REPUTEMAP_API_KEY definido, e a ponte encaminha tudo para o endpoint hospedado.

Configuração por cliente

Claude Code

Remoto, um comando, sem reiniciar:

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

Escrevendo .mcp.json à mão? Inclua "type": "http" na entrada. Sem isso, o Claude Code lê a entrada como um programa local e falha.

Ponte stdio em vez disso:

claude mcp add reputemap -e REPUTEMAP_API_KEY=rmk_YOUR_KEY -- npx -y @reputemap/mcp

Claude Desktop

Use a ponte stdio em claude_desktop_config.json (Configurações → Desenvolvedor → Editar Config), depois saia completamente e reabra o aplicativo. Precisa de Node.js 18+.

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

A ponte genérica mcp-remote também funciona: "args": ["-y", "mcp-remote", "https://api.reputemap.com/mcp", "--header", "Authorization: Bearer rmk_YOUR_KEY"].

Cursor

Remoto, em ~/.cursor/mcp.json (todos os projetos) ou .cursor/mcp.json (um projeto):

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

Ponte stdio em vez disso:

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

Cline

Abra o Cline → Servidores MCP → Configurar Servidores MCP, que abre cline_mcp_settings.json, e adicione o servidor. Remoto:

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

Ponte stdio em vez disso:

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

VS Code (modo agente Copilot)

.vscode/mcp.json no espaço de trabalho. A chave de nível superior é servers, não mcpServers. O VS Code pede a chave uma vez e a armazena, então ela fica fora do arquivo:

{
  "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}" }
    }
  }
}

Ponte stdio em vez disso: substitua a entrada reputemap por { "type": "stdio", "command": "npx", "args": ["-y", "@reputemap/mcp"], "env": { "REPUTEMAP_API_KEY": "${input:reputemap-key}" } }.

Windsurf

~/.codeium/windsurf/mcp_config.json. Observe que o campo é serverUrl:

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

Codex CLI

~/.codex/config.toml, depois exporte REPUTEMAP_API_KEY no seu shell:

[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"

Ou em ~/.gemini/settings.json, onde o campo é httpUrl:

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

Qualquer outro cliente 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)

O ChatGPT ainda não é suportado: seus conectores aceitam apenas OAuth, e este servidor usa uma chave de API.

Verifique a conexão: pergunte "liste meus locais da ReputeMap". Se os IDs voltarem, você está conectado.

Créditos e limites

  • 1.000 créditos por mês por organização, o mesmo em todos os planos e compartilhado com a API REST. Os créditos são redefinidos no dia 1º.
  • Cada chamada de ferramenta custa 1 crédito, exceto get_usage, que é grátis. Uma chamada com argumentos malformados é rejeitada antes de um crédito ser cobrado, e um send_review_request que retorna already_requested é reembolsado.
  • 60 solicitações por minuto por organização.
  • Quando os créditos acabam, as ferramentas respondem com um erro que seu agente pode ler ("Limite mensal de créditos da API atingido"). get_usage informa onde você está.
SintomaCausa e correção
401 chave de API inválida ou ausenteErro de digitação, ou a chave foi revogada. Crie uma nova em Configurações → Chaves de API
403 … requer um plano pago ativoO espaço de trabalho não tem assinatura. Escolha um plano; o teste de 14 dias conta
"Limite mensal de créditos da API atingido"Os créditos são redefinidos no dia 1º; verifique get_usage
O Claude Desktop não mostra ferramentasnpx precisa de Node.js 18+; saia completamente e reabra o aplicativo após editar a configuração

O que há neste repositório

Uma ponte stdio sem dependências para clientes que falam MCP via stdio e não podem enviar cabeçalhos HTTP, em duas versões: bin/cli.mjs (Node 18+, publicado como @reputemap/mcp) e server.py (Python 3.9+, apenas biblioteca padrão). Ambas encaminham cada mensagem JSON-RPC para o endpoint hospedado via TLS e transmitem as respostas de volta. A ponte não mantém uma lista própria de ferramentas, então novas ferramentas chegam até você assim que o servidor hospedado as envia.

# 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 é o manifesto publicado no registro oficial de MCP como com.reputemap/reputemap. .plugin/plugin.json e .mcp.json descrevem o mesmo servidor para clientes com suporte a plugins.

A ponte tem cerca de 120 linhas legíveis, então também documenta o que trafega pela rede: sua chave de API vai apenas no cabeçalho Authorization de solicitações TLS para api.reputemap.com.

Notas de protocolo

  • Métodos: initialize → notifications/initialized → tools/list / tools/call, além de ping. Revisões suportadas: 2024-11-05, 2025-03-26, 2025-06-18, 2025-11-25.
  • Descoberta (initialize, ping, tools/list) responde sem chave, então clientes e diretórios podem mostrar o catálogo de ferramentas antes de você autenticar. tools/call sempre precisa da chave.
  • Erros de protocolo usam códigos JSON-RPC padrão. Erros de nível de ferramenta (ID inválido, sem créditos) retornam como resultados de ferramenta com isError: true, para que seu agente possa lê-los e informar você.
  • O servidor é sem estado: apenas POST, sem sessão e sem fluxo SSE iniciado pelo servidor (GET responde 405). A ponte ainda honra Mcp-Session-Id e aceita respostas tanto em JSON quanto em quadros SSE.
  • Lotes JSON-RPC são aceitos apenas de clientes que negociaram uma revisão anterior a 2025-06-18, que removeu lotes. Solicitações com um cabeçalho Origin estrangeiro são recusadas.

Links

A ReputeMap é uma ferramenta independente e não é afiliada ao Google.

Licença

MIT, veja LICENSE.