# MCP tools: analytics, taps and events

> Eight tools answer "how are my links doing" questions with the same numbers as the dashboard, and let you check that a test tap or a purchase arrived.

Source: https://straitlink.in/docs/mcp/analytics/

Numbers use the same definitions as **Dashboard → Analytics** ([how we count](https://straitlink.in/docs/analytics/)). Days are UTC, and one call covers at most 92 days.

## The tools

| Tool | What it does | Changes something? |
|---|---|---|
| `get_analytics` | Taps, app opens, installs, conversions and revenue, optionally by day, channel, link or platform (`GET /v1/analytics`) | No |
| `compare_analytics` | Two periods side by side with the change and the percent change; by default the period just before. Optionally per channel, platform or link | No |
| `get_top_links` | Your top links by taps, app opens, installs or conversions, with each one's share of the total | No |
| `list_taps` | Recent taps, newest first: link, platform, channel, in-app browser, where the tap was sent, and the app open and install it led to. Default: the last hour | No |
| `list_events` | Recent conversion and revenue events, newest first, with the tap's channel and campaign. Default: the last 7 days | No |
| `record_event` | Records a conversion from your server side (`POST /v1/event`), for example a purchase your backend confirmed | Yes, after you confirm |
| `get_usage` | This month's taps and new links against your plan, and whether new links are paused | No |
| `get_referrals` | Taps and installs per referral code (a preview; it says so until referrals are switched on) | No |

`list_taps` and `list_events` read the taps and events exports, so they need an owner's or admin's secret key. When a range has more rows than one call reads, the answer says `truncated`; ask for a shorter range.

`record_event` adds a real event to analytics and revenue and sends it to webhooks subscribed to `app.event`, so it previews first. Give it an `eventId` such as your order id, and a retry is stored once. Events from your app belong in the SDK's `track` call, not here.

## Things to ask

- "How did this week do against last week, by channel?"
- "Which five links brought the most installs in October?"
- "I just tapped `summer` on my phone. Was the tap recorded, and did it open the app?"
- "Did any purchases arrive today?"
- "How much of this month's plan have we used?"
