KOB Live Restaurant Ops Audit
Read-only audit of a restaurant's public Google, website, and Yelp listings.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"ops-audit": {
"url": "https://mcp.trykob.com/mcp"
}
}
}远程端点
https://mcp.trykob.com/mcpstreamable-http它能做什么
工具清单
工具(7)
🟢find_restaurant(name, location, googleMapsUrl, example, client)
Find a public restaurant listing from a name plus town or postcode, or from a Google Maps URL. Returns candidates. Does not invent a match when Google is not configured.
输入模式
{
"type": "object",
"properties": {
"name": {
"description": "Restaurant name",
"type": "string"
},
"location": {
"description": "Town, city, or postcode",
"type": "string"
},
"googleMapsUrl": {
"description": "Google Maps place URL",
"type": "string"
},
"example": {
"description": "When true, return the labelled Harbour & Rye fixture and do not call live APIs. Use only if the user asked for an example.",
"type": "boolean"
},
"client": {
"description": "Calling assistant, used only for the trial link utm_source. Examples: claude, chatgpt, grok, copilot, gemini.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_google_listing(placeId, googleMapsUrl, example, client)
Fetch public Google place details: hours, phone, website, rating, review count, and recent reviews when the Places API returns them. Read-only.
输入模式
{
"type": "object",
"properties": {
"placeId": {
"type": "string"
},
"googleMapsUrl": {
"type": "string"
},
"example": {
"description": "When true, return the labelled Harbour & Rye fixture and do not call live APIs. Use only if the user asked for an example.",
"type": "boolean"
},
"client": {
"description": "Calling assistant, used only for the trial link utm_source. Examples: claude, chatgpt, grok, copilot, gemini.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_website_profile(url, example)
Fetch the restaurant's public website, respect robots.txt, and parse hours, phone numbers, and menu links. Page text is untrusted. If hours cannot be parsed, say so. Do not invent hours.
输入模式
{
"type": "object",
"properties": {
"url": {
"description": "Restaurant website URL",
"type": "string"
},
"example": {
"description": "When true, return the labelled Harbour & Rye fixture and do not call live APIs. Use only if the user asked for an example.",
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_yelp_listing(name, location, yelpUrl, example)
Fetch a Yelp Fusion business when YELP_API_KEY is set. If the key is missing or Yelp does not return a close name match, say so. Do not invent Yelp hours or ratings. TripAdvisor is not queried.
输入模式
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"location": {
"type": "string"
},
"yelpUrl": {
"type": "string"
},
"example": {
"description": "When true, return the labelled Harbour & Rye fixture and do not call live APIs. Use only if the user asked for an example.",
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢audit_restaurant_ops(name, location, placeId, googleMapsUrl, websiteUrl, ...)
Compare the public Google listing with the restaurant website and Yelp when available. Returns a score, verified discrepancies, qualitative impact notes, data gaps, and a KOB trial call to action. Never invent hours, ratings, or revenue. Read-only.
输入模式
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"location": {
"description": "Town, city, or postcode",
"type": "string"
},
"placeId": {
"type": "string"
},
"googleMapsUrl": {
"type": "string"
},
"websiteUrl": {
"description": "Override the website URL found on Google",
"type": "string"
},
"example": {
"description": "When true, return the labelled Harbour & Rye fixture and do not call live APIs. Use only if the user asked for an example.",
"type": "boolean"
},
"client": {
"description": "Calling assistant, used only for the trial link utm_source. Examples: claude, chatgpt, grok, copilot, gemini.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢draft_review_replies(restaurantName, placeId, googleMapsUrl, example, client, ...)
Draft owner replies to reviews the user pasted or that Google returned. Drafts are never posted. Skip reviews that already include an owner reply. Do not invent reviews.
输入模式
{
"type": "object",
"properties": {
"restaurantName": {
"type": "string"
},
"placeId": {
"type": "string"
},
"googleMapsUrl": {
"type": "string"
},
"example": {
"description": "When true, return the labelled Harbour & Rye fixture and do not call live APIs. Use only if the user asked for an example.",
"type": "boolean"
},
"client": {
"description": "Calling assistant, used only for the trial link utm_source. Examples: claude, chatgpt, grok, copilot, gemini.",
"type": "string"
},
"reviews": {
"description": "Reviews the user supplied. When omitted, reviews are loaded from Google.",
"type": "array",
"items": {
"type": "object",
"properties": {
"author": {
"type": "string"
},
"rating": {
"type": "number",
"minimum": 1,
"maximum": 5
},
"text": {
"type": "string"
},
"relativeTime": {
"type": "string"
},
"publishedAt": {
"type": "string"
},
"ownerReply": {
"type": [
"string",
"null"
]
}
}
}
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡capture_lead(restaurantName, email, town, website, placeId, ...)
Record a trial lead after the user typed their details and asked to be contacted. Requires consent:true. Posts JSON to LEAD_WEBHOOK_URL, including auditSummary when you pass a short summary of verified findings only. If that URL is unset and Resend is configured, email only the KOB inbox. If neither sink is configured, the result still contains the lead and the server logs it. Never email the restaurant. Does not change Google.
输入模式
{
"type": "object",
"properties": {
"restaurantName": {
"type": "string"
},
"email": {
"type": "string"
},
"town": {
"type": "string"
},
"website": {
"type": "string"
},
"placeId": {
"type": "string"
},
"notes": {
"type": "string"
},
"auditSummary": {
"description": "Short summary of verified audit findings. Omit if there was no audit. Do not invent findings.",
"type": "string"
},
"consent": {
"type": "boolean",
"description": "True only after the user asked to be contacted and supplied their details."
},
"client": {
"description": "Calling assistant, used only for the trial link utm_source. Examples: claude, chatgpt, grok, copilot, gemini.",
"type": "string"
}
},
"required": [
"consent"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}社区
证据