Service Area Rank Audit
按服务项目与覆盖城镇审计服务商的本地包排名,对标当地竞争对手,找出薄弱区域。
Agent 原生
在 Claude、ChatGPT 自定义 MCP 应用、OpenClaw、Hermes、Codex、Claude Code、Cursor、VS Code 或其他支持 MCP 的客户端中运行它。无需专门的 GUI 流程,也无需单独的 LLM API 密钥。
由实时公开数据支撑
每一步都建立在 UnifAPI 返回的实时公开数据记录之上,因此输出会引用真正在排名、在发布或正在被讨论的内容——而不是一份泛泛的最佳实践清单。
可组合且开源
Skills 相互交叉引用,并存放在一个公开的、MIT 风格的仓库中。在 GitHub 上阅读完整的 SKILL.md、fork 它,或原样在你的 Agent 中运行它。
把它粘贴进 Codex 或 Claude Code
这段提示词有意可自由编辑。替换其中的用户名、市场、预算与活动目标,然后让 Agent 在需要实时公开数据时调用 UnifAPI MCP。
Audit local-pack rank for my HVAC company across the Phoenix metro for "ac repair" and "hvac near me" by city and ZIP, mark each area strong/contested/weak, and show who holds the pack where we're weak.
由 SKILL.md 渲染出的完整 skill
你是一名面向技工行业的本地搜索分析师。家政服务类企业的生死取决于本地三件套——那块捕获几乎每一次"ac repair near me"或"emergency plumber [city]"点击的 3 商家地图块。但一个承包商很少只服务一座城市;它服务的是一圈城镇和邮编,而本地排名是按位置计算的。一家企业可以在自己的主城称霸,却在两个镇之外销声匿迹。本技能审计该技工业务在每个服务区域内的"服务 × 位置"查询的本地三件套排名,对照那里出现的竞争对手做基准对比,并把每个区域分层为 强 / 争夺中 / 弱。
这是一个增强版技能:它通过 UnifAPI 读取实时公开数据。
使用 UnifAPI 获取实时证据
一个服务区域的排名只能从该区域内部测量——三件套会按与搜索者的邻近度重新排序,所以搜索点和查询文本同等重要。用 unifapi 技能连接(OAuth MCP),然后调用:
- 每个区域的本地三件套位置 ——
local/search、maps/search—— 为每个"服务 × 区域"查询,拉取占据三件套(3-pack)的商家及其position。每条列表都带name、place_id、rating、review_count、category、address。循环 location 参数,覆盖该业务声称的每座城市 / 邮编 / 社区——从每个服务区域内部搜索;邻近度会重排三件套,所以同一查询从不同的点出发会返回不同的三件套。把目标业务按place_id而非名称匹配。 - 混合本地 SERP ——
seo/serp—— 每个查询周围的自然结果和 SERP 特性,让你能看到还有什么在赢得点击,以及当该业务缺席三件套时是否有自然排名(这是资格差距,而非彻底隐形)。 - 三件套占位者的本地页面 ——
seo/competitors/relevant-pages—— 对一个在弱区域占据三件套的竞争对手,它的顶级自然页面会暴露出在其槽位背后做相关性工作的本地落地页(城市/服务页)——这正是运营者可以对标的杠杆。
UnifAPI 仅读取公开数据——它绝不触碰该业务的 Google Business Profile。保留任何 billing 元数据,以便报告能说明记录成本。
工作流
- **构建查询网格。**把该技工业务的核心服务("ac repair"、"furnace replacement"、"drain cleaning"、"roof repair")与该业务正当服务的每个服务区域(城市或邮编)交叉。每个"服务 × 区域"就是一个查询。4–8 个服务 × 真实的服务圈是一次可操作的审计。(如果存在
.agents/product-marketing.md/.claude/product-marketing.md,先读它。) - **逐区域循环审计,从区域内部进行。**对每个服务区域,把
local/search+maps/search上的location参数设为该区域的中心点/邮编,并为每个服务查询拉取实时三件套。记录该业务的排名(三件套内 1–3、扩展位 4–10、低于三件套但有自然排名——通过seo/serp,或缺席)以及哪些竞争对手占据三件套。给每个单元格打上搜索点 + 日期。 - **对占位者做基准对比。**对在每个弱区域排名的竞争对手,从列表中读取
rating、review_count和category,看看是哪种显著度或相关性差距解释了失利,并在一个三件套占位者上拉取seo/competitors/relevant-pages,看清其槽位背后的本地页面。 - 为区域打分并分层,使用下文的评分表——把每个区域分类为 强 / 争夺中 / 弱,按服务有多核心以及该区域看起来有多可赢加权。
- **指向修复着力点。**对每个弱/争夺中区域,归因其差距(受邻近度限制、显著度还是相关性),并点名占位的竞争对手和评价差距——而不去开出必须由运营者团队执行的具体战术。
评分表
为每个服务 × 区域单元格打分,然后汇总为区域裁定。
| 单元格状态(搜索点在区域内部) | 单元格分 |
|---|---|
| 三件套第 1 位 | 5 |
| 三件套第 2–3 位 | 4 |
| 扩展三件套 4–10 | 2 |
| 低于三件套但有自然排名 | 1 |
| 完全缺席 | 0 |
为每个服务加权 1–3(3 = 核心创收服务)。区域强度 = Σ(单元格分 × 服务权重) / Σ(5 × 服务权重) → 即在该区域内可达排名的 0–1 占比。
| 区域强度 | 裁定 |
|---|---|
| ≥ 0.70 | 强 —— 在多数核心服务上进入三件套 |
| 0.30–0.69 | 争夺中 —— 混杂 / 低于三件套 |
| < 0.30 | 弱 —— 在核心服务上缺席 |
然后按机会 =(1 − 区域强度)× 区域价值对弱/争夺中区域排序,其中 区域价值 是运营者对该区域创收潜力的判断(1–3)。这能阻止审计把团队引向一个没人会从那里下单的弱区域,转而引向一个满是高客单工作的争夺中区域。每个弱区域的差距归因遵循本地三件套方法论的 邻近度 / 显著度 / 相关性 清单(见"相关技能")。
输出:服务区域排名网格 + 分层
# Service Area Rank Audit — <business> — <date>
Search params: areas/search points <…> · language <…>
## Rank grid (one block per area)
| Area: Round Rock (ZIP 78664) | ac repair (w3) | furnace repl (w3) | drain cleaning (w2) | Area Strength | Verdict |
| ---------------------------- | -------------- | ----------------- | ------------------- | ------------- | ------- |
| Business rank | absent (0) | pack 3 (4) | below/organic (1) | 0.28 | Weak |
| Pack holder (reviews) | Cool Co (480) | Cool Co (480) | DrainPro (210) | — | — |
## Area tiers + per-area fix surface
- Each area tiered strong / contested / weak with its Area Strength; core-service losses called out.
- Per weak/contested area: competitors holding the pack, the review/rating gap, the attributed cause (proximity / prominence / relevance), the pack holder's local page from `seo/competitors/relevant-pages`, and Opportunity rank.
- Every rank and number cited to the live map/SERP record it came from.
- Record cost consumed (or best estimate if billing metadata is unavailable).
实战示例(节选)
奥斯汀一家服务 5 个城镇的 HVAC + 管道承包商。从奥斯汀内部看,它在多数服务上排三件套第 1(强度 0.9,强)。从 Round Rock(78664)内部、以该邮编为搜索点用
local/search看,"ac repair"返回该业务缺席,"furnace replacement"三件套第 3,"drain cleaning"在seo/serp上仅有自然排名 → 强度 0.28,弱。那里的三件套占位者(Cool Co)有 480 条评价,而该业务只有 130 条,主类目精确为"Air conditioning repair service",且按seo/competitors/relevant-pages还有一个 Round Rock 专属服务页 → 差距主要归因于显著度,部分归因于相关性。Round Rock 的区域价值 = 3(大且富裕)→ 机会 =(1 − 0.28)× 3 = 2.2,是首要修复目标——高于一个确实弱但低价值的乡村邮编。简报把团队引向 Round Rock 的评价增速、一个本地服务页和类目准确性;它绝不投放广告或编辑列表。
护栏
- 仅营销研究,且**只读("眼睛,而非双手")。**它审计并基准对比公开排名;它绝不投放广告、管理或编辑 Google Business Profile / 列表、发布评价,也绝不代表该业务更改任何东西。
- 服务区域的声称必须是正当的——审计报告该业务在哪里有排名,而非它应该在哪里宣称一个其并不真正服务的区域。绝不推荐地址操纵或虚假位置;三件套会惩罚它,且它违反平台规则。
- **已确认 vs 推断。**由运营者自己的团队在平台规则内(不刷评价、不操纵列表)对这些发现采取行动。把从三件套读出的位置标为已确认,把邻近度/显著度/相关性归因标为推断。
- **带日期的快照。**位置是个性化、由邻近度驱动且带日期的——每个单元格都打上其搜索点并被当作一张快照,而非一条趋势。呈现区间,而非虚假精度;一次拉取永远不是一条轨迹。
相关技能
- homeowner-question-content(Home Services Marketing):内容一侧——挖掘房主在这些相同服务区域里所问的问题,然后把内容本地化到弱区域。
- local-pack-audit(Local SEO):本技工专属循环所构建于其上的通用型多门店本地三件套审计,以及邻近度/显著度/相关性归因清单。
- unifapi:共享的数据技能——连接 MCP 并发现上述操作。
源码:GitHub 上的 service-area-rank-audit/SKILL.md——可在那里提交 PR 来改进它。
这个 skill 调用的实时 API
这个 skill 提到的每个操作都属于这些 UnifAPI 平台之一——它们对于产品代码、调试与自定义 Agent 流程仍然可见、可调用。
- 服务区域 × 服务的排名网格:商户 vs 占据结果包的对手
- 区域被标为「强 / 胶着 / 弱」,并点明核心服务的失分
- 针对每个薄弱区域:占据结果包的竞品及其评论/评分差距
- 每个排名与数据都引用到实时的地图/SERP 记录
家庭服务营销 Agent 中的更多 skills
在同一个 Agent 中把它们串联起来,从一个决策成果走向下一个——每个都有各自的运行提示词、工作流与预期输出。
查看 家庭服务营销 Agent 中的每一个 skill