What it does

Real reading time + scroll depth from the engagement beacon (fired on pagehide). Returns engaged_pages count, avg/median/p90 engagement seconds, and avg/median scroll depth. avg_scroll_depth_pct and median_scroll_depth_pct are percentages of page height: 58.3 means 58.3% scrolled. Better signal than session duration which counts inactive tabs.

Example prompts

Ask Claude (or any MCP client connected to mcp-analytics) something like:

How engaged are mysite.com visitors? Scroll depth and time on page.

The client will pick engagement_overview automatically based on the prompt and your account's available sites.

Arguments

Name Type Required Description / Default
site_id string required Site identifier from list_sites (8-character base32, e.g. 'wjxayhdd').
period string optional Time window. Keywords: today, yesterday, last_7_days, last_30_days, last_90_days, last_12_months. Or a custom date range YYYY-MM-DD..YYYY-MM-DD (inclusive).
default: last_7_days
conversion_event string optional Optional custom event name (case-sensitive, from list_events) to treat as the conversion. The response then adds `converters`: the same engagement stats restricted to units that fired the event — compare it against the top-level stats to see whether converters read longer or scroll deeper. The response gains a site-wide `conversion` block: conversion_base (units in the period), converted (how many fired the event), conversion_rate (ratio 0–1: 0.05 means 5%), `unit` and a `note` to relay. The unit depends on the site's privacy_mode: 'session' on strict and balanced sites (no identity survives UTC midnight there, so only conversions within one visit count), 'visitor' on privacy_mode=all sites (first-party cookie, so a visitor who arrives Monday and converts Thursday counts as converted, if both days are inside the period). The auto-tracked 'pageview' and 'engagement' are rejected — pick one of the site's own events.

How to call it directly

If you're integrating from your own code rather than a chat client, this is the JSON-RPC payload:

curl -X POST https://mcp-analytics.com/mcp \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "engagement_overview",
    "arguments": {
      "site_id": "abc12345"
    }
  }
}'

Token comes from /settings after you sign up. Replace any required arguments above.

Related tools

  • top_sources: Top UTM source/medium/campaign combinations.
  • viewport_breakdown: Pageviews bucketed by viewport width: mobile_xs (<480), mobile (<768), tablet (<1024), desktop (<1440), desktop_xl (≥1440).
  • list_sites: List all sites on the authenticated account.
  • top_pages: Most-viewed URL paths.
  • get_tracking_snippet: Return the HTML <script> snippet for a given site_id.