Browse developer documentation
Read-only tool
get_overview
Read headline revenue, traffic, conversion and advertising metrics with comparison changes.
Access: OAuth analytics:read or a privately configured workspace key.
Arguments
| Field | Type | Description |
|---|---|---|
compare | string | Comparison range. Values: previous_period, mom, qoq, yoy, none. Default: |
filters | array | JSON array of up to twenty visitor filters, for example [{"dim":"country","op":"is","value":"US"}]. Dimensions: source, channel, campaign, entry_page, page, hostname, country, device, browser, os, goal. Operators: is, is_not. Values are exact strings up to 500 characters. All filters must match the visitor across available history; report dates then select activity for that cohort. Unmatched payments are excluded. Crawler counts remain website-wide; spend requires every filter to be source/channel/campaign. Preserve filters when paging. |
from | string | Inclusive start date. Supply to as well. |
model | string | How recorded sources share revenue credit. Values: first_touch, last_touch, linear, time_decay. Default: |
period | string | UTC date selection. from and to override period. Values: realtime, today, yesterday, 7d, 30d, 90d, 12m, wtd, mtd, qtd, ytd, all. Default: |
site | string | Website ID or domain. Required when the workspace has more than one website. |
to | string | Inclusive end date. Supply from as well. |
filters[] fields
| Field | Type | Description |
|---|---|---|
dim | string | Values: source, channel, campaign, entry_page, page, hostname, country, device, browser, os, goal. |
op | string | Values: is, is_not. |
value | string |
Read overview
Use this JSON-RPC call through an initialized MCP client. Replace example values with your actual website, dates or confirmed setup details.
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_overview",
"arguments": {
"site": "site_example",
"from": "2026-10-01",
"to": "2026-10-07",
"compare": "none"
}
}
}Decoded result
Illustrative JSON parsed from the result’s text block.
{
"site": {
"id": "site_example",
"domain": "shop.example.com",
"currency": "USD"
},
"period": {
"from": "2026-10-01T00:00:00.000Z",
"to": "2026-10-08T00:00:00.000Z",
"label": "Custom",
"compare": "none",
"attribution_model": "first_touch"
},
"metrics": {
"visitors": 100,
"sessions": 120,
"pageviews": 240,
"revenue": 20000,
"orders": 4,
"buyers": 4,
"conversion_rate": 4,
"revenue_per_visitor": 200,
"average_order_value": 5000,
"avg_session_seconds": 60,
"bounce_rate": 40,
"live_visitors": 0,
"ad_spend": 5000,
"net_profit": 15000,
"roas": 4,
"ai_revenue": 5000
},
"changes_pct": {
"revenue": null,
"visitors": null,
"orders": null,
"conversion_rate": null,
"revenue_per_visitor": null,
"avg_session": null,
"bounce_rate": null
},
"notes": "Money is in integer cents. changes_pct is the percent change versus the comparison period (null when that period has no data)."
}Result fields
| Field | Type | Description |
|---|---|---|
site | object | Website ID, domain and currency. |
period | object | Resolved UTC boundaries; to is the exclusive timestamp after the selected end date. |
metrics | object | Headline metrics. Revenue, revenue_per_visitor, average_order_value, ad_spend, net_profit and ai_revenue are cents; roas is a ratio or null without spend. |
changes_pct | object | Percent changes for revenue, visitors, orders, conversion_rate, revenue_per_visitor, avg_session and bounce_rate. Null when no comparison is available. |
notes | string | Calculation and completeness notes. |
site fields
| Field | Type | Description |
|---|---|---|
id | string | Website ID. |
domain | string | Website domain. |
currency | string | Three-letter currency. |
period fields
| Field | Type | Description |
|---|---|---|
from | string | Inclusive UTC start. |
to | string | Exclusive UTC end. |
label | string | Human-readable date selection. |
compare | string | Comparison selection. |
attribution_model | string | Revenue-credit model. |
metrics fields
| Field | Type | Description |
|---|---|---|
visitors | number | visitors |
sessions | number | sessions |
pageviews | number | pageviews |
revenue | number | revenue |
orders | number | orders |
buyers | number | buyers |
conversion_rate | number | conversion rate |
revenue_per_visitor | number | revenue per visitor |
average_order_value | number | average order value |
avg_session_seconds | number | avg session seconds |
bounce_rate | number | bounce rate |
live_visitors | number | live visitors |
ad_spend | number | ad spend |
net_profit | number | net profit |
roas | number | null | roas |
ai_revenue | number | ai revenue |
The decoded data follows the overview response contract, without the REST envelope.
Full MCP result wrapper
{
"content": [
{
"type": "text",
"text": "{\n \"site\": {\n \"id\": \"site_example\",\n \"domain\": \"shop.example.com\",\n \"currency\": \"USD\"\n },\n \"period\": {\n \"from\": \"2026-10-01T00:00:00.000Z\",\n \"to\": \"2026-10-08T00:00:00.000Z\",\n \"label\": \"Custom\",\n \"compare\": \"none\",\n \"attribution_model\": \"first_touch\"\n },\n \"metrics\": {\n \"visitors\": 100,\n \"sessions\": 120,\n \"pageviews\": 240,\n \"revenue\": 20000,\n \"orders\": 4,\n \"buyers\": 4,\n \"conversion_rate\": 4,\n \"revenue_per_visitor\": 200,\n \"average_order_value\": 5000,\n \"avg_session_seconds\": 60,\n \"bounce_rate\": 40,\n \"live_visitors\": 0,\n \"ad_spend\": 5000,\n \"net_profit\": 15000,\n \"roas\": 4,\n \"ai_revenue\": 5000\n },\n \"changes_pct\": {\n \"revenue\": null,\n \"visitors\": null,\n \"orders\": null,\n \"conversion_rate\": null,\n \"revenue_per_visitor\": null,\n \"avg_session\": null,\n \"bounce_rate\": null\n },\n \"notes\": \"Money is in integer cents. changes_pct is the percent change versus the comparison period (null when that period has no data).\"\n}"
}
]
}Behavior and limits
net_profit is recorded revenue less ad spend; it is not accounting profit after every business expense.
Report history covers available records in the last 365 days; collection allowances and reporting capacity are separate.
Report tools return the report data directly inside MCP text content. They do not add the REST status/data envelope.
With multiple websites and no site argument, this report tool returns needs_site: true and the available websites. Choose a real website and call it again.