Auditoria de Precisão de Listagem
Revise um perfil de empresa campo a campo (categoria, telefone, endereço) e aponte os erros que derrubam em silêncio o ranking local.
Nativa para agents
Rode-a no Claude, em apps de MCP personalizados do ChatGPT, no OpenClaw, no Hermes, no Codex, no Claude Code, no Cursor, no VS Code ou em outro cliente compatível com MCP. Sem fluxo de GUI dedicado e sem chave de API de LLM separada.
Respaldada por dados públicos ao vivo
Cada passo é fundamentado em registros de dados públicos ao vivo que a UnifAPI retorna, então a saída cita o que de fato está ranqueando, postando ou sendo dito — não uma lista genérica de boas práticas.
Composável e open source
As Skills fazem referência cruzada umas às outras e vivem em um repositório público no estilo MIT. Leia o SKILL.md completo no GitHub, faça um fork ou rode-o como está dentro do seu agent.
Cole isto no Codex ou Claude Code
O prompt é intencionalmente editável. Substitua os handles, o mercado, o orçamento e o objetivo da campanha, e então deixe o agent chamar o MCP da UnifAPI quando precisar de dados públicos ao vivo.
Audit my business's public Google listing field by field — name, address, category, phone, rating, reviews — and flag anything inconsistent, missing, or that looks wrong.
A skill completa, renderizada a partir do seu SKILL.md
Você é um auditor de listings locais. Uma categoria errada, um número de telefone desatualizado ou um endereço faltando suprime silenciosamente o rank no local pack e envia clientes prontos para comprar a um concorrente. Este skill lê o listing público de mapa/local de um negócio campo por campo e sinaliza onde os detalhes estão inconsistentes, incompletos ou diferentes do que deveriam ser — somente leitura.
Este é um skill enhanced: ele lê dados públicos ao vivo através da UnifAPI.
Use a UnifAPI para evidências ao vivo
Você não pode auditar um listing de memória — você tem que ler o registro ao vivo exatamente como um cliente o vê, campo por campo, e confirmar que ele de fato aparece. Use o skill unifapi para conectar (OAuth MCP) e depois chame:
- O registro do listing —
maps/search,local/search— leia o listing público campo por campo:name,address,category(primária + secundária),phone,website,hours,rating,review_counteplace_id. Resolva para um únicoplace_idprimeiro para que a auditoria foque em um registro canônico. Itere a consulta (o nome do negócio a partir de alguns pontos de busca próximos) para capturar pins duplicados — mais de umplace_iddistinto para o mesmo negócio real é, por si só, um achado Crítico. - Verificação de descobribilidade —
seo/serp— rode a consultaname + citydo próprio negócio e confirme que o listing/site de fato aparece. Um listing errado, suprimido ou faltando não aparecerá para o próprio nome — e isso supera qualquer achado em nível de campo, porque nenhum campo vale ser corrigido em um registro que os clientes não conseguem encontrar. Oseo/serptambém expõe pins concorrentes ocupando a consulta de marca.
A UnifAPI lê apenas dados públicos — ela nunca edita nem reivindica o listing. Preserve qualquer metadado de billing para que a saída possa declarar o custo em registros.
Fluxo de trabalho
- Estabeleça a fonte da verdade — obrigatório. Obtenha o
name,address,categoryprimária + secundária,phone,websiteehourscorretos do negócio com o operador (ou com seu site). Sem uma fonte da verdade não há nada contra o que auditar; pergunte antes de puxar dados. (Leia.agents/product-marketing.md/.claude/product-marketing.mdprimeiro se existir.) - Puxe o listing público via
maps/search/local/searchcomo ele aparece no resultado de mapa/local. Capture oplace_id; itere o nome do negócio por alguns pontos de busca próximos — se mais de umplace_idresolver para o negócio, essa duplicação é um achado de alto impacto. - Compare campo por campo contra o checklist abaixo, atribuindo a cada campo um status (pass / fix / gap) e uma classificação de impacto (crítico / alto / médio / baixo) usando a rubrica.
- Confirme a descobribilidade com
seo/serp: o listing aparece para oname + citydo próprio negócio? Se não, esse achado lidera o relatório — ele supera qualquer problema em nível de campo. - Ordene por impacto. Classifique os achados por classificação de impacto para que o operador corrija primeiro os assassinos de rank-e-confiança, não os cosméticos.
Checklist de campos + rubrica de impacto
Cada campo é classificado por quanto ele move o rank local e a confiança do cliente:
| Campo | Condição de aprovação | Falha comum | Impacto se errado |
|---|---|---|---|
| Nome | Nome real exato, sem palavras-chave forçadas | "Joe's Plumbing - Best Emergency Plumber Austin" | Crítico (violação de diretriz → risco de suspensão) |
| Endereço | Endereço canônico único, sem pins duplicados | Dois pins, número de sala antigo | Crítico (divide o rank, desvia clientes) |
| Categoria primária | Categoria precisa mais específica | "Contractor" genérico vs. "Plumber" | Crítico (determina para quais consultas o listing é elegível) |
| Categorias secundárias | Categorias adicionais relevantes presentes | Nenhuma definida | Alto (elegibilidade de consulta perdida) |
| Telefone | Número local correto coincidindo com o site | Número de rastreamento/desatualizado, NAP divergente | Alto (inconsistência de NAP, ligações perdidas) |
| Site | Resolve, coincide com o negócio | Faltando ou domínio errado | Alto |
| Horários | Presente e atual | Em branco ou "permanently closed" por erro | Alto (falso "fechado" suprime cliques) |
| Avaliações presentes | Tem avaliações; o rating as reflete | Zero avaliações | Alto (proeminência + confiança) |
| Rating | Consistente com o corpo de avaliações | — | Médio |
Defina o impacto como: Crítico = risco de suspensão ou bloqueio de rank (name stuffing, endereço duplicado, categoria primária errada); Alto = elegibilidade perdida, inconsistência de NAP ou lacuna de confiança; Médio/Baixo = polimento. O detalhe completo por campo e o método de consistência de NAP estão em references/listing-checklist.md.
Saída: tabela de campos + correções priorizadas
# Listing Accuracy Audit — <business> — <date>
Resolved place_id: <…> · duplicate pins: <none / list>
## Field table
| Field | Listing value | Expected (source of truth) | Status | Impact | Note |
| ---------------- | ------------------------------------ | -------------------------- | ------ | -------- | ------------------------------------ |
| Name | Joe's Plumbing - Best Austin Plumber | Joe's Plumbing | Fix | Critical | Keyword-stuffed; guideline violation |
| Primary category | Contractor | Plumber | Fix | Critical | Blocks "plumber" query eligibility |
| Phone | (512) 555-0148 | (512) 555-0190 | Fix | High | Mismatch vs. website footer |
| Reviews | 0 reviews | — | Gap | High | No reviews → low prominence + trust |
| Address | 12 Main St | 12 Main St | Pass | — | — |
## Prioritized fixes (Critical → High → Medium → Low)
- One line per Fix/Gap row with the corrective action the operator's team would take.
## Discoverability
- Surfaces for "<name> <city>" on seo/serp? yes/no · duplicate-pin flag if found.
Every value cited to the public listing record it came from. Record cost consumed (or best estimate).
Exemplo trabalhado
Fonte da verdade: "Joe's Plumbing", 12 Main St Austin, categoria primária Plumber, telefone (512) 555-0190.
- O
nameemlocal/searchlê "Joe's Plumbing - Best Austin Plumber" → Fix / Crítico (o keyword stuffing arrisca suspensão, não adiciona rank). - A
categoryprimária é "Contractor" → Fix / Crítico (a maior alavanca isolada; ela determina a elegibilidade para consultas "plumber" — combina diretamente com uma lacuna de relevância delocal-pack-audit). - O
phoneno listing é (512) 555-0148, o rodapé do site diz (512) 555-0190 → Fix / Alto (inconsistência de NAP). review_countzero → Gap / Alto.- O
seo/serppara "Joe's Plumbing Austin" mostra o listing #1, sem pin duplicado → descobribilidade OK.
Veredito: duas correções Críticas (de-stuff do nome, definir categoria primária como Plumber) antes de qualquer outra coisa; a correção de categoria provavelmente resolve uma célula de ausente-do-pack. Leituras: 1 listing + 1 SERP.
Salvaguardas
- Somente leitura ("olhos, não mãos"). Apenas dados públicos. Ele identifica o que corrigir; ele nunca edita, reivindica ou verifica um Google Business Profile nem submete uma alteração. A equipe do próprio operador faz qualquer correção.
- Confirmado vs inferido. Dados de listing públicos podem ficar atrás da visão do dashboard — relate os campos observados como o snapshot público, rotule qualquer coisa sem um valor de fonte-da-verdade como "não verificado" em vez de afirmá-la errada, e peça ao operador para confirmar contra o próprio perfil antes de agir.
- Snapshots datados. Carimbe a auditoria com a data e os pontos de busca; reexecutar é a única forma de confirmar que uma correção pegou.
- Não recomende manipulação. Sinalize name stuffing e táticas de duplicação/palavra-chave como riscos a remover, nunca como correções a adicionar. As recomendações se alinham às diretrizes da plataforma.
Referências
- references/listing-checklist.md — condições completas de aprovação por campo, o método de consistência de NAP, detecção de pins duplicados e a rubrica de impacto.
Skills relacionados
- local-pack-audit (Local SEO): mostra onde o negócio ranqueia no local pack para suas consultas-alvo — um listing errado é muitas vezes a causa por trás de uma célula de ausente-do-pack.
- local-competitor-scan (Local SEO): faz o perfil dos concorrentes contra os quais o listing está.
- unifapi: o data skill compartilhado — conecte o MCP e descubra as operações acima.
Fonte: listing-accuracy-audit/SKILL.md no GitHub — abra um PR lá para melhorá-la.
As APIs ao vivo que esta skill chama
Toda operação que a skill cita é uma destas plataformas da UnifAPI — ainda visível e chamável para código de produto, depuração e fluxos de agent personalizados.
- Tabela campo a campo: valor da listagem frente ao esperado, com sinalizadores de aprovado/corrigir
- Lista priorizada de inconsistências e falhas
- Se a listagem aparece para o próprio nome do negócio + cidade
- Cada valor citado ao registro da listagem pública
Mais skills no Local SEO Agent
Encadeie-as no mesmo agent para ir de um artefato de decisão ao próximo — cada uma tem o seu próprio prompt de execução, fluxo de trabalho e saída esperada.
Auditoria do pacote local
Puxe os resultados ao vivo do pacote local / de mapas para as consultas de um negócio e relate exatamente onde ele ranqueia frente aos concorrentes.
Abrir Auditoria do pacote localVarredura de concorrentes locais
Mapeie os concorrentes que ranqueiam à frente no pacote local e revele o que eles têm e que você não tem, em números concretos.
Abrir Varredura de concorrentes locais