Privacy-first web analytics. Query pageviews, referrers, trends, and AI insights.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer token (mk_...). Get key: https://lets.measure.events after sign-up.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Add a site. Returns its site_key and tracking script.
The site's domain, e.g. example.com.
Display name (defaults to the domain).
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Tool list last changed Oct 23, 2026.
Add a site. Returns its site_key and tracking script.
| Argument | Type | Description |
|---|---|---|
| name | string | Display name (defaults to the domain). |
| domain* | string | The site's domain, e.g. example.com. |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"name": {
"type": "string",
"description": "Display name (defaults to the domain)."
},
"domain": {
"type": "string",
"description": "The site's domain, e.g. example.com."
}
}
}Everything in one call: 7- and 30-day traffic, daily series, pages, referrers, channels, agents, insights, check-ins and recommended actions.
| Argument | Type | Description |
|---|---|---|
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key"
],
"properties": {
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}Every AI agent that fetched the site: operator, purpose (assistant, training, search), requests, top page.
| Argument | Type | Description |
|---|---|---|
| to | string | End date, YYYY-MM-DD (UTC, inclusive). |
| from | string | Start date, YYYY-MM-DD (UTC, inclusive). |
| period | string | Time period. Ignored when from and to are given. |
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key"
],
"properties": {
"to": {
"type": "string",
"description": "End date, YYYY-MM-DD (UTC, inclusive)."
},
"from": {
"type": "string",
"description": "Start date, YYYY-MM-DD (UTC, inclusive)."
},
"period": {
"enum": [
"24h",
"7d",
"30d",
"90d",
"year",
"day",
"week",
"month"
],
"type": "string",
"description": "Time period. Ignored when from and to are given."
},
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}Top values of one dimension: path, referrer, source, channel, country, device, browser, os, utm_source, utm_medium, utm_campaign or agent.
| Argument | Type | Description |
|---|---|---|
| to | string | End date, YYYY-MM-DD (UTC, inclusive). |
| dim* | string | |
| from | string | Start date, YYYY-MM-DD (UTC, inclusive). |
| limit | integer | |
| period | string | Time period. Ignored when from and to are given. |
| traffic | string | Which traffic to count (default all). |
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key",
"dim"
],
"properties": {
"to": {
"type": "string",
"description": "End date, YYYY-MM-DD (UTC, inclusive)."
},
"dim": {
"enum": [
"path",
"referrer",
"source",
"channel",
"country",
"device",
"browser",
"os",
"utm_source",
"utm_medium",
"utm_campaign",
"agent"
],
"type": "string"
},
"from": {
"type": "string",
"description": "Start date, YYYY-MM-DD (UTC, inclusive)."
},
"limit": {
"type": "integer",
"maximum": 1000,
"minimum": 1
},
"period": {
"enum": [
"24h",
"7d",
"30d",
"90d",
"year",
"day",
"week",
"month"
],
"type": "string",
"description": "Time period. Ignored when from and to are given."
},
"traffic": {
"enum": [
"all",
"humans",
"agents",
"bots"
],
"type": "string",
"description": "Which traffic to count (default all)."
},
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}Anomalies and trends: page spikes, new referrers, new AI agents, traffic drops, weekly trend.
| Argument | Type | Description |
|---|---|---|
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key"
],
"properties": {
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}Visitors on the site now and the latest requests.
| Argument | Type | Description |
|---|---|---|
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key"
],
"properties": {
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}The last 30 days as a short Markdown document, for context windows.
| Argument | Type | Description |
|---|---|---|
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key"
],
"properties": {
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}Pageviews, visitors (humans), AI agent and bot requests, top pages and referrers for a period.
| Argument | Type | Description |
|---|---|---|
| to | string | End date, YYYY-MM-DD (UTC, inclusive). |
| from | string | Start date, YYYY-MM-DD (UTC, inclusive). |
| period | string | Time period. Ignored when from and to are given. |
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key"
],
"properties": {
"to": {
"type": "string",
"description": "End date, YYYY-MM-DD (UTC, inclusive)."
},
"from": {
"type": "string",
"description": "Start date, YYYY-MM-DD (UTC, inclusive)."
},
"period": {
"enum": [
"24h",
"7d",
"30d",
"90d",
"year",
"day",
"week",
"month"
],
"type": "string",
"description": "Time period. Ignored when from and to are given."
},
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}A plain-language summary of the last 7 days with week-over-week change and highlights.
| Argument | Type | Description |
|---|---|---|
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
{
"type": "object",
"required": [
"site_key"
],
"properties": {
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
}
}
}List your sites with their site_key, tracking script and last-7-day pageviews.
No arguments.
{
"type": "object",
"required": [],
"properties": {}
}Record something you did to the site (published a post, deployed, changed a page) so it shows beside the traffic it caused.
| Argument | Type | Description |
|---|---|---|
| note | string | |
| agent | string | Agent name (default: the API key's name). |
| action* | string | What you did, e.g. 'published /blog/launch'. |
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
| timestamp | string | ISO 8601; default now. |
{
"type": "object",
"required": [
"site_key",
"action"
],
"properties": {
"note": {
"type": "string"
},
"agent": {
"type": "string",
"description": "Agent name (default: the API key's name)."
},
"action": {
"type": "string",
"description": "What you did, e.g. 'published /blog/launch'."
},
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
},
"timestamp": {
"type": "string",
"description": "ISO 8601; default now."
}
}
}Create a Measure account without a human. Starts a 14-day trial and returns an API key and tracking script; the billing contact is emailed a link to claim the account and add a card. No API key needed.
| Argument | Type | Description |
|---|---|---|
| site* | object | |
| agent* | object | |
| billing_contact_name | string | |
| billing_contact_email* | string | Email of the person who will pay. Receives the claim link. |
{
"type": "object",
"required": [
"billing_contact_email",
"site",
"agent"
],
"properties": {
"site": {
"type": "object",
"required": [
"domain"
],
"properties": {
"name": {
"type": "string"
},
"domain": {
"type": "string"
}
}
},
"agent": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Your display name, e.g. Claude."
},
"identifier": {
"type": "string",
"description": "Stable identifier, e.g. anthropic/claude."
}
}
},
"billing_contact_name": {
"type": "string"
},
"billing_contact_email": {
"type": "string",
"description": "Email of the person who will pay. Receives the claim link."
}
}
}Record a pageview: an agent's own visit, or a request your server forwards. Pass user_agent to classify a forwarded request; otherwise it counts as an AI agent visit under `agent` (default: the API key's name).
| Argument | Type | Description |
|---|---|---|
| path* | string | Page path, e.g. /about. |
| agent | string | Agent name for attribution. |
| referrer | string | Referring URL (only the host is kept). |
| site_key* | string | The site's tracking ID (site_key), from list_sites. |
| user_agent | string | User agent of a forwarded request (classified, never stored). |
| utm_medium | string | |
| utm_source | string | |
| utm_campaign | string |
{
"type": "object",
"required": [
"site_key",
"path"
],
"properties": {
"path": {
"type": "string",
"description": "Page path, e.g. /about."
},
"agent": {
"type": "string",
"description": "Agent name for attribution."
},
"referrer": {
"type": "string",
"description": "Referring URL (only the host is kept)."
},
"site_key": {
"type": "string",
"description": "The site's tracking ID (site_key), from list_sites."
},
"user_agent": {
"type": "string",
"description": "User agent of a forwarded request (classified, never stored)."
},
"utm_medium": {
"type": "string"
},
"utm_source": {
"type": "string"
},
"utm_campaign": {
"type": "string"
}
}
}