https://app.reputably.net/api/mcp. The surface is read plus safe writes: it can read
your data and generate drafts. It cannot send anything to an external platform,
and it cannot trigger a sync. See What agents cannot do.
Tool descriptions here are the exact strings the model reads at runtime, generated
from the server catalog. If a tool is missing from this page it does not exist.
The 35 tools
list_workspaces
List workspaces — Read-only. It never changes anything in your account. The workspaces on this account — an agency keeps each client in its own. Pass an id to any other tool’s workspace_id to read that workspace instead of the default one. Omitting workspace_id everywhere reads the home workspace, which on an agency account is often NOT where the live businesses are: if list_businesses looks empty, check here before reporting that the account has none. Ids from one workspace do not resolve in another — pass business ids from list_businesses run against the SAME workspace, or you will get an empty result rather than an error. With platform (super-admin) access this lists every agency’s workspaces, each row carries businesses {active, prospects, total}, and the top-level businesses field sums them over every workspace (not just this page). Answer “how many businesses are live across all accounts” from that total in one call — do not add up list_businesses per workspace. active is exactly what list_businesses returns with is_active:true; total includes prospect audits.integer
default:"100"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
list_businesses
List businesses — Read-only. It never changes anything in your account. List the business locations in ONE workspace — the home workspace unless workspace_id is given. Optionally filter to active or prospect locations. Sorted by business name, A→Z. To count businesses across every workspace, do not call this once per workspace: with platform access, list_workspaces already carries per-workspace counts and a total.boolean
Only active (billed) locations.
boolean
Only prospect/unconverted locations.
integer
default:"100"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_business
Get business — Read-only. It never changes anything in your account. Fetch a single business location by id, including its AI insights and integration ids.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_business_usage
Get business usage — Read-only. It never changes anything in your account. Current billing-period usage and limits for a location.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_reviews
List reviews — Read-only. It never changes anything in your account. List reviews for a business location. Filter by needs_response or star rating. Sorted newest-WRITTEN first (review_created_at — when the customer left the review), not by when we imported it. Those differ sharply on a freshly-imported account, where a whole back-catalogue arrives with one import timestamp.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
boolean
integer
integer
Only reviews written in the last N days. Omit for all time.
integer
default:"50"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_mentions
List brand mentions — Read-only. It never changes anything in your account. The unified brand-mention feed across platforms (Reddit, Facebook groups, YouTube, X, web), with lead badges. Sorted by POST date, newest first — the same order and the same copy-paste de-duplication the Interactions feed shows in the app. Use sort:“found” for discovery order (“what turned up since I last looked”), which is a different question: a search can surface a years-old post today. Scoped to ACTIVE business locations, like the feed — mentions belonging to a deactivated location are not returned.string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
Restrict to one brand/topic tracker.
string
reddit | facebook | youtube | twitter | web. Omit for all.
positive | neutral | negative
string
Substring match over text, author, title, subreddit.
integer
Only mentions from the last N days. Omit for all time.
newest | found | oldest | engagement | reach | priority
default:"newest"
newest = post date (default). found = when we discovered it.
boolean
Return archived mentions instead of live ones.
integer
default:"1"
1-based page number.
integer
default:"50"
Page size.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_leads
List leads — Read-only. It never changes anything in your account. Sales leads detected from brand mentions. Each row carries the post text, the intent reasoning, post_url (the public thread where the human posts a reply) and reputably_url (the lead in the Reputably dashboard). Use draft_mention_reply with the mention_id to draft a reply the human can copy and post at post_url. Sorted by POST date, newest first — the same order the Leads board shows by default. That is deliberately NOT discovery order: a search can turn up a genuine post from 2023 today, so “newest lead” and “newest post” are different questions. Use sort:“found” for “what came in since I last looked”, or sort:“intent” for the strongest buying signal first. Posts we could not date carry undated:true and rank below every dated one.string
Filter by lead stage (e.g. new, contacted, won, lost).
string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
newest | found | intent
default:"newest"
newest = the mention’s post date (default). found = when we detected the lead. intent = LLM intent score, strongest first.
boolean
integer
Only leads whose post is from the last N days. Leads whose post date we could never establish are KEPT — an unknown date is not evidence of an old post.
integer
default:"50"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_brand_trackers
List brand trackers — Read-only. It never changes anything in your account. Brand/topic trackers configured for the account. Sorted by tracker name, A→Z.string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
default:"100"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
competitor_leaderboard
Competitor leaderboard — Read-only. It never changes anything in your account. Share-of-mention leaderboard comparing the brand to its competitors, built from the competitors named inside the tracker’s mentions. Returns the top 15, ranked by mention count. Covers ALL TIME unless you pass days (or from/to).string
Brand tracker id (required). From list_brand_trackers.
string
Deprecated alias for tracker_id.
integer
Window: only mentions from the last N days. Omit for all time.
string
Window start, YYYY-MM-DD. Ignored if days is set.
string
Window end, YYYY-MM-DD.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_visibility_trackers
List AI-visibility trackers — Read-only. It never changes anything in your account. AI-visibility trackers (how the brand shows up in LLM answers like ChatGPT/Gemini). Sorted by tracker name, A→Z. Each row carries its schedule and last-run state (run_frequency_hours, last_run_at, last_run_summary) so you can tell a tracker with no data from one that has simply not run yet.string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
default:"100"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_visibility_summary
Get AI-visibility summary — Read-only. It never changes anything in your account. Daily AI-visibility rollups for a tracker: visibility score, share of voice, average position. One row per day, most recent first. This is the ROLLUP — for “which prompts are we losing, and to whom”, use get_prompt_performance.string
required
AI-visibility tracker id. From list_visibility_trackers.
integer
default:"30"
Most recent N days.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_visibility_prompts
List AI-visibility prompts — Read-only. It never changes anything in your account. The prompts tracked for an AI-visibility tracker, with how much answer data sits behind each one (run_count, last_run_at, engines). Call this BEFORE get_prompt_performance: it is cheap, it gives you the prompt ids, and it is the only way to tell a prompt the brand never appears in from a prompt that has never been asked. Most-run first.string
From list_visibility_trackers.
string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
boolean
Include paused prompts.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_prompt_performance
Get AI-visibility prompt performance — Read-only. It never changes anything in your account. Per-prompt AI-visibility performance over a window: how often the brand appears in the answers, its average position, how sentiment breaks down, which competitors show up instead, and which competitor domains get cited. This is the “which prompts are we losing, and to whom” answer — prompts are returned WORST-performing first. appearance_rate is the percentage of ANSWERS in the window naming the brand, the same definition the AI Visibility screen uses, so the two reconcile. top_competitors[].share is that same measure for a competitor — the percentage of answers naming it. It is NOT share of voice: shares do not sum to 100, because one answer can name several brands. Never report it as share of voice. Answers are aggregated server-side and answer_text is NOT returned by default — one prompt’s answers would fill a context window. include_answer_text returns a small truncated sample. evidence_samples come from an optional field that is often left unwritten even when the brand IS present; treat its absence as no information, never as a lower-confidence mention.string
From list_visibility_trackers.
string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
Restrict to a single prompt.
integer
default:"30"
Window length. Defaults to 30.
boolean
Attach a small, truncated sample of raw answers. Off by default.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_fanout_stats
Get AI-visibility fan-out (retrieval) stats — Read-only. It never changes anything in your account. The retrieval layer beneath citations: the web searches the AI engines actually ran to answer a tracker’s prompts, the sites those searches surfaced, and which of those sites went on to be cited. queries[] is the phrasing the engines really search — often not the prompt as written — and domains[] carries retrieved and cited side by side, so a site the engine finds but declines to cite is visible here and nowhere else. Read these before quoting a number:- Only ChatGPT and Claude disclose a trail; Gemini and the Google surfaces do not. runs counts every answer, runs_with_trail only the ones that disclosed — “no searches” from a quiet engine is missing data, not an engine that searched nothing.
- Every figure here, cited counts included, is over runs_with_trail, so cited counts are SMALLER than get_visibility_sources, which counts over all answers. Name the denominator.
- ChatGPT’s page list is partial, so for chatgpt pages_seen and brand_retrieved are floors. Never say the brand was “never retrieved” on ChatGPT data alone.
- funnel.brand_retrieved is null when the tracker has no brand domain set — unknown, not zero. Check truncated.queries / truncated.domains and the notes array before treating a list as complete.
string
From list_visibility_trackers.
string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
default:"30"
Window length. Defaults to 30.
string
Restrict to one engine, e.g. chatgpt or claude. Omit for all.
string
Restrict to a single prompt.
integer
With prompt_id: one wording of it. 0 is the prompt as the user wrote it.
integer
default:"25"
Top searches to return, most-run first.
integer
default:"25"
Top retrieved domains to return.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_visibility_sources
Get AI-visibility sources — Read-only. It never changes anything in your account. Which websites the AI engines cite when answering a tracker’s prompts — the Sources screen. Each domain is classified by type (UGC, Directory, Editorial, Reference, Institutional, Company, Corporate, Web), tagged with owner (you = the brand’s own site, competitor = a rival’s own site, third_party = everything else), and carries how many answers cite it, cited_in_pct, and the specific pages cited on it. Most-used first. Use it for “where do AI answers get their picture of this market from” and “which sites could we get listed on”: actionable_only=true is the list of placements a business can realistically win. A competitor-owned domain can never be earned — filter with owner=competitor to see which rivals get cited directly. cited_in_pct is the percentage of ANSWERS citing the domain (the screen’s “Used”); answers cite several domains, so it does not sum to 100. by_type counts citations over the whole window and ignores the row filters. These counts span every answer, so they are larger than get_fanout_stats, which counts only answers that disclosed a retrieval trail. The window defaults to 30 days; the screen defaults to 7, so pass days:7 to match what a user is looking at.string
From list_visibility_trackers.
string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
default:"30"
Window length. Defaults to 30.
string
Restrict to one engine, e.g. chatgpt, gemini or claude. Omit for all.
string
Restrict to a single prompt.
integer
With prompt_id: one wording of it. 0 is the prompt as the user wrote it.
UGC | Directory | Editorial | Reference | Institutional | Company | Corporate | Web
Only domains of this type.
you | competitor | third_party
Only the brand’s own sites, competitors’ own sites, or everyone else.
boolean
Only types a business can get into: UGC, Directory, Editorial, Company, Web.
integer
default:"25"
Domains per page.
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
integer
default:"3"
Cited pages to list per domain, most-used first. pages_total has the count.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_visibility_countries
List AI-visibility countries — Read-only. It never changes anything in your account. The markets an AI-visibility tracker can be geo-targeted to. These are exact provider location names — a tracker will reject anything not on this list, so pick from here rather than composing a country name. Takes no parameters.list_ai_traffic_sites
List AI-traffic sites — Read-only. It never changes anything in your account. Websites with an AI-traffic tracker installed. verified_at and last_seen_at are what tell you whether a domain is actually reporting — a site that has never reported looks exactly like a site AI never visits, and only one of those is a traffic finding. The two capture paths are installed and verified SEPARATELY, so check them separately: crawler_verified_at/last_crawler_at cover the server-side half (the only one that can see GPTBot and friends, since AI crawlers do not execute JavaScript), and beacon_verified_at/last_referral_at cover the browser half (the only one that can see a human arriving from an AI answer). A site with one half installed will report zero for the other no matter how much of that traffic it gets.string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
default:"50"
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_ai_traffic_summary
Get AI-traffic summary — Read-only. It never changes anything in your account. Daily AI-traffic rollups for a site: crawler hits broken down by agent and category, and AI referral visits by referrer. One row per day, most recent first. TWO IMPORTANT CAVEATS, because both produce confident wrong answers:- Referral counts UNDER-REPORT Claude. A real click from Claude arrives with an empty referrer, so no referral row is written. by_referrer showing no claude.com is NOT evidence that Claude sends no traffic — check by_agent, which often shows verified Claude crawler hits on the very same day. Never report zero Claude referrals as a fact.
- spoofed_hits means something wore a crawler’s user-agent from an IP outside that operator’s published ranges — i.e. someone faking it. It is distinct from unchecked (no IP seen, or the operator publishes no ranges), which is crawler_hits - verified_hits - spoofed_hits.
string
From list_ai_traffic_sites.
string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
default:"30"
Most recent N days.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_posts
List GBP posts — Read-only. It never changes anything in your account. Google Business Profile posts (published, scheduled, draft).string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
e.g. draft, scheduled, published, cancelled.
integer
default:"50"
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_prospect_audits
List prospect audits — Read-only. It never changes anything in your account. Prospect audits the agency has run — the acquisition workflow. Read-only: generating a new audit is not exposed here, because each one spends vendor credits against a monthly agency quota. Includes that quota state so you can say how many remain. Takes no parameters.list_reports
List reports — Read-only. It never changes anything in your account. Generated reports for the account, most recently generated first. (Creation time IS the event here — a report is made, not discovered.)string
The business location id. From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
default:"25"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
download_report_csv
Download report CSV — Read-only. It never changes anything in your account. Return the CSV export of a generated report as text. Truncated at 60000 characters — a large report would otherwise consume the whole context window. The response says so explicitly when it has been cut, so a truncated file is never mistaken for a complete one.string
Report id (required). From list_reports.
string
Deprecated alias for report_id.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_active_syncs
Get active syncs — Read-only. It never changes anything in your account. List in-progress sync/tracker jobs. Syncs run automatically on a schedule — use this to see whether one is currently refreshing the data. A non-empty result means counts and lists you read right now may be mid-refresh and will change shortly.string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
get_mention_counts
Get mention counts — Read-only. It never changes anything in your account. Per-tracker counts of live (non-archived) mentions, bucketed by age. This is the dashboard’s headline number, computed in one SQL pass — use it instead of listing mentions and counting them, which is expensive and goes silently wrong the moment the true count passes the page cap.total is all-time; a mention lands in a window on its post date, falling back to when we found it.
integer[]
Day windows to bucket into. Defaults to 1, 7, 30, 90, 365.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
list_my_notifications
List notifications — Read-only. It never changes anything in your account. What this account is currently being alerted about — new leads, review alerts, finished syncs. Most recent first. Workspace-wide notifications plus any addressed to the signed-in user specifically.integer
default:"25"
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
mark_leads_seen
Mark leads as seen — Write. It changes data in your account. Mark specific leads as triaged, clearing their “new” badge for everyone in the account. Takes explicit lead ids — there is no mark-everything form. Already-seen leads keep their original timestamp, so re-running is safe. Use this after you have actually dealt with a lead, not merely read it, or you will hide it from the human.string[]
required
Lead ids from list_leads.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
query_records
Query records — Read-only. It never changes anything in your account. Flexible read over an allow-listed set of entities.query is an equality filter object (e.g. {“location_id”:“loc_1”}) — equality only, no ranges or operators.
IMPORTANT: sort_by on a field not listed below does NOT error. It silently returns rows in arbitrary order, which is indistinguishable from a correct answer. Sortable fields per entity:
Review: review_created_at, star_rating, created_date
Mention: posted_at, synced_at, google_rank, created_date
Lead: intent_score, stage, created_date
BusinessLocation: business_name, created_date
BrandTracker: tracker_name, created_date
VisibilityTracker: name, last_run_at, created_date
VisibilityPrompt: text, created_date
VisibilityDaily: date, created_date
VisibilityRun: run_date, run_at, brand_position, created_date
Report: created_date
Post: created_date
AiTrafficDaily: date, crawler_hits, referral_visits, created_date
Prefer the purpose-built tools where one exists — they apply the right ordering and the caveats that go with the data.
Review | Mention | Lead | BusinessLocation | BrandTracker | VisibilityTracker | VisibilityPrompt | VisibilityDaily | VisibilityRun | Report | Post | AiTrafficDaily
required
object
Equality filter, field → value.
string
Field name; prefix with - for descending. Must be one of the fields listed in the description for this entity, or the order is arbitrary.
integer
default:"50"
integer
default:"0"
Rows to skip — page 2 of a 50-row page is skip:50.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
generate_ai_insights
Generate AI insights — Write. It changes data in your account. Run the LLM insight pass for a location (positive/negative themes, action items, review velocity). Persists the insights on the business.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
draft_mention_reply
Draft a mention reply — Write. It changes data in your account. Generate an AI-drafted reply to a brand mention and save it as the suggested reply. Does NOT post anything to the platform.string
required
string
e.g. friendly, professional, apologetic.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
draft_review_reply
Draft a review reply — Write. It changes data in your account. Generate an AI-drafted reply to a review and return the text. Does NOT post the reply to Google/Facebook (posting requires a separate, gated action).string
required
string
e.g. warm, professional, apologetic.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
suggest_visibility_prompts
Suggest AI-visibility prompts — Write. It changes data in your account. Suggest prompts a customer might ask an LLM, for tracking brand visibility for a location.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
integer
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
generate_post_draft
Generate a GBP post draft — Write. It changes data in your account. Generate a draft Google Business Profile post from an intent. Creates a draft only — it does NOT publish.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
required
What the post should be about.
boolean
string
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
generate_report
Generate a report — Write. It changes data in your account. Queue a report render for a location. Returns immediately with a queued report; poll list_reports for the finished PDF. Does NOT email the report to anyone.string
required
Report template name.
string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
ISO date.
string
ISO date.
boolean
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
propose_tracking_setup
Propose tracking setup — Write. It changes data in your account. Analyze a business and propose its starter tracking config: 1 brand tracker + 2 topic trackers (one keyword each) and an AI-visibility tracker with up to 3 prompts. Proposes only — nothing is created. Review the proposal with the user, adjust to their feedback, then call apply_tracking_setup with the agreed config.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.
apply_tracking_setup
Apply tracking setup — Write. It changes data in your account. Create the starter tracking config for a business: a brand tracker and topic trackers (one keyword each, max 3 trackers per business) plus the AI-visibility tracker with up to 3 prompts. Safe to re-run: keywords that already have a tracker are skipped, as is the visibility tracker if one exists. First syncs and the first visibility run start automatically within about a minute. Confirm the config with the user before calling.string
The business location id (required). From list_businesses.
string
Deprecated alias for business_location_id.
string
Deprecated alias for business_location_id.
string
Exact brand term for the brand tracker (usually the business name).
string[]
Service/topic phrases — one tracker per phrase.
object
string
Which workspace to read. Accepts the id, name or slug from list_workspaces. Defaults to the account’s home workspace. Ids do not cross workspaces — pass a business or tracker id you read in THIS workspace, or the result is empty rather than an error.