Examples
Real questions and the tool calls an agent would make. Not every call is shown. The agent typically follows up with filters or a related tool to confirm its reading of the data.
Traffic
What happened to traffic last week?
The agent pulls the overview, checks channel and country splits, then narrows in on any outlier.
get_overview({ period: "7d" })
get_top_referrers({ period: "7d", limit: 10 })
get_countries({ period: "7d", limit: 10 })
get_timeseries({ period: "7d" })Which pages did Hacker News traffic actually read?
Filter top pages by referrer host to see where the HN visit landed.
get_top_pages({
period: "30d",
referrer_host: "news.ycombinator.com",
limit: 10,
})Is anyone on the site right now?
Real-time window plus the pages they’re looking at.
get_current_visitors({ window_minutes: 5 })Revenue
How much revenue did we make from Google Ads last month?
get_revenue sums Money-typed properties, split by currency, with any filter.
get_revenue({
period: "30d",
utm_source: "google",
utm_medium: "cpc",
})Which country generated the most revenue?
Group the revenue sum by country. Each currency stays separate.
get_revenue({ period: "30d", group_by: "country" })What’s the revenue trend for checkout_completed events?
Timeseries works on any event name, not just pageviews.
get_timeseries({ event: "checkout_completed", period: "90d" })Sessions and engagement
Which pages hold attention and which get bounced?
Per-page engagement seconds plus bounce rate, from pageview_end beacons.
get_page_engagement({ period: "30d", limit: 20 })What do visitors actually do after landing on /pricing?
Session paths return top (entry → exit) pairs with session count and average duration.
get_session_paths({
period: "30d",
pathname: "/pricing",
min_pages: 2,
limit: 10,
})Funnels
Build a pricing-to-signup funnel and tell me what’s breaking.
create_funnel accepts pageviews (pageview:/path) and custom event names as steps.
create_funnel({
name: "pricing-to-signup",
steps: ["pageview:/pricing", "signup", "checkout_completed"],
})
// Follow up: same funnel, only mobile US visitors
get_funnel({
name: "pricing-to-signup",
period: "30d",
device_type: "mobile",
country: "US",
})Custom events
How many signups by plan?
Grouping a custom event by a property returns one row per value.
get_events({
name: "signup",
group_by: "plan",
period: "30d",
})Compare this month's pageviews to last month.
compare_periods takes two arbitrary ranges and returns both plus the delta.
compare_periods({
metric: "pageviews",
a: "2026-03-01:2026-03-31",
b: "2026-02-01:2026-02-28",
})Alerts
Alert me if bounce rate on /pricing goes above 60% this week.
create_alert evaluates on each MCP session connect. Scope with pathname.
create_alert({
metric: "bounce_rate",
condition: "above",
threshold: 60,
period: "7d",
pathname: "/pricing",
})See Prompts for pre-built workflows that chain these patterns automatically.