Agent Analytics
by dannyshmueli · remote · no sign-in to list tools · v1.0.0 · published by GitHub user dannyshmueli
Analytics your AI agent can actually use. Track, experiment, and optimize via MCP.
28 tools: 3 can delete or cancel things, 18 change things and 7 only read.
Scanned Oct 21, 2026
- Deletes or cancels3Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things18Claude Code: ask: see these tools
- Only reads7Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http agent-analytics https://mcp.agentanalytics.sh/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnquery
The server marks "query" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "query" says "query": a word for reading.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
28 tools
Deletes or cancels 3Claude Code: deny
delete_experimentDelete an experimentNo findings
Why it is in this group
- The name "delete_experiment" says "delete": a word for removing or ending something.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Delete an experiment
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- openWorldHint: false
set_project_contextSet or replace compact project context.No findings
Why it is in this group
- The name "set_project_context" says "set": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Set or replace compact project context. The encoded API request body is capped at 512KB. Read existing context first, merge still-valid entries, inspect event names with properties or properties_received, and save only durable product truth tied to goals, activation events, event-name glossary entries, or date annotations for major product changes. Use annotations for meaningful landing page, pricing, onboarding, feature, release, or experiment changes; do not store git commit logs, noisy edits, PII, secrets, or long release notes.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- openWorldHint: false
update_experimentUpdate experiment status (pause, resume, complete)No findings
Why it is in this group
- The name "update_experiment" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Update experiment status (pause, resume, complete)
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- openWorldHint: false
Changes things 18Claude Code: ask
all_sites_bot_trafficFiltered automated traffic across all active projects in your account.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Filtered automated traffic across all active projects in your account.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
all_sites_overviewHistorical summary across all projects in your account: total events, active project count, daily trend, and top projects.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Historical summary across all projects in your account: total events, active project count, daily trend, and top projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_breakdownTop property values ranked by count (pages, referrers, UTM sources, etc.) Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own project…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Top property values ranked by count (pages, referrers, UTM sources, etc.) Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_funnelFunnel analysis: track where users drop off across a sequence of events (e.g.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Funnel analysis: track where users drop off across a sequence of events (e.g. page_view → signup → purchase). Returns per-step user counts, conversion rates, and average time between steps. Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_heatmapDay-of-week × hour traffic grid with peak detection (times in UTC) Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Day-of-week × hour traffic grid with peak detection (times in UTC) Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_insightsPeriod-over-period comparison with trend (events, users, bounce rate, session duration) Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for yo…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Period-over-period comparison with trend (events, users, bounce rate, session duration) Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_pagesEntry/exit page stats with bounce rate, avg duration, events per session Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Entry/exit page stats with bounce rate, avg duration, events per session Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_panelUse this when you want to explore an authorized project's analytics beside the conversation.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Use this when you want to explore an authorized project's analytics beside the conversation. Opens a compact project/view picker; accepts empty input. Analysis queries retain their existing plan and access checks. Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
- idempotentHint: true
analytics_pathsBounded session path analysis from entry pages to goal, drop-off, or truncation.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Bounded session path analysis from entry pages to goal, drop-off, or truncation. Useful for connecting page behavior to funnels, retention, and experiments. Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_retentionCohort retention analysis — track what % of users return over time.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Cohort retention analysis — track what % of users return over time. By default uses session-based retention (any return visit counts). Pass 'event' to switch to event-based retention. Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
analytics_sessionsSession duration histogram with engaged percentage and median bucket Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Session duration histogram with engaged percentage and median bucket Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
bot_traffic_overviewFiltered automated traffic for a single project: automated requests, dropped events, categories, and top actors.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Filtered automated traffic for a single project: automated requests, dropped events, categories, and top actors.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
create_experimentCreate an A/B experimentNo findings
Why it is in this group
- The name "create_experiment" says "create": a word for a change.
Description, as the server wrote it Create an A/B experiment
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- openWorldHint: false
create_projectCreate a new Agent Analytics project.No findings
Why it is in this group
- The name "create_project" says "create": a word for a change.
Description, as the server wrote it Create a new Agent Analytics project. Returns the tracking snippet and API example. Idempotent — returns existing project if name already taken.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- openWorldHint: false
live_nowReal-time snapshot: active visitors, sessions, events per minute, top pages, and recent events.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Real-time snapshot: active visitors, sessions, events per minute, top pages, and recent events. Reads from in-memory ring buffer — no D1 query.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
propertiesDiscover event names and property keys from recent events Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Discover event names and property keys from recent events Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
properties_receivedProperty keys by event name, sampled from recent events Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Property keys by event name, sampled from recent events Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
queryRun a flexible ad-hoc analytics query with custom metrics, filters, grouping, date ranges, and privacy-first customer email lookup.1 finding
Why it is in this group
- The name "query" says "query": a word for reading.
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "query" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "query" says "query": a word for reading.
Description, as the server wrote it Run a flexible ad-hoc analytics query with custom metrics, filters, grouping, date ranges, and privacy-first customer email lookup. This is the most powerful endpoint — use it when other tools don't answer the question. Examples of questions this tool answers: - "How many signups from Germany this week?" → filters: [{field:"event",op:"eq",value:"signup"},{field:"country",op:"eq",value:"DE"}] - "Which events contain 'page' in the name?" → filters: [{field:"event",op:"contains",value:"page"}], group_by: ["event"] - "Daily unique users for the last 30 days" → metrics: ["unique_users"], group_by: ["date"], date_from: "30d" - "Events per country" → group_by: ["country"] Filter operators: eq, neq, gt, lt, gte, lte, contains Filterable fields: event, user_id, date, country, session_id, timestamp, and any properties.* field (e.g. properties.path) For customer-specific reads, use the top-level email input instead of hashing locally. Raw email is sent only in the authenticated HTTPS POST body; the server matches via a project-scoped HMAC index and does not store raw email in event rows or profile traits. Built-in fields are a closed list. Event properties such as referrer, utm_source, path, browser, and hostname must be queried as properties.referrer, properties.utm_source, properties.path, properties.browser, and properties.hostname. Invalid filter fields fail loudly and return /properties-style guidance instead of being silently ignored. Group by: event, date, user_id, session_id, country Metrics: event_count, unique_users, session_count, bounce_rate, avg_duration Count modes: raw, session_then_user. The default for event_count is session_then_user for activation-safe counting: session-backed rows count by session, no-session rows fall back to user only when that user has no session-backed row in the same group, and fully anonymous rows fall back to event id. count_mode is ignored when event_count is not requested.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
Only reads 7Claude Code: allow
account_usageRead current account plan, usage, billing estimate and spend cap, Pro pricing, and a human payment handoff when needed.No findings
Why it is in this group
- The description's first verb is "read": a word for reading.
Description, as the server wrote it Read current account plan, usage, billing estimate and spend cap, Pro pricing, and a human payment handoff when needed. Requires account:read. Read-only: cannot charge or manage billing. Call again after checkout to verify hosted entitlement, then retry the original task.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
- idempotentHint: true
analytics_overviewGet time series chart, KPIs (events, users), and country breakdown (events, unique users) for a project over N days Anonymous preview is limited to agentanalytics-demo synthetic re…No findings
Why it is in this group
- The description's first verb is "get": a word for reading.
Description, as the server wrote it Get time series chart, KPIs (events, users), and country breakdown (events, unique users) for a project over N days Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
get_experimentGet experiment details with results Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- The name "get_experiment" says "get": a word for reading.
Description, as the server wrote it Get experiment details with results Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
get_project_contextGet compact self-improving project context: goals, activation events, event-name glossary, and major date annotations used to interpret analytics results.No findings
Why it is in this group
- The name "get_project_context" says "get": a word for reading.
Description, as the server wrote it Get compact self-improving project context: goals, activation events, event-name glossary, and major date annotations used to interpret analytics results. Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
list_experimentsList A/B experiments for a project Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- The name "list_experiments" says "list": a word for reading.
Description, as the server wrote it List A/B experiments for a project Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
list_projectsList all your Agent Analytics projects Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- The name "list_projects" says "list": a word for reading.
Description, as the server wrote it List all your Agent Analytics projects Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
sessionsList individual session records Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.No findings
Why it is in this group
- The description's first verb is "list": a word for reading.
Description, as the server wrote it List individual session records Anonymous preview is limited to agentanalytics-demo synthetic read-only data; sign in for your own projects.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http agent-analytics https://mcp.agentanalytics.sh/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__agent-analytics__account_usage",
"mcp__agent-analytics__list_projects",
"mcp__agent-analytics__get_project_context",
"mcp__agent-analytics__sessions",
"mcp__agent-analytics__list_experiments",
"mcp__agent-analytics__get_experiment",
"mcp__agent-analytics__analytics_overview"
],
"ask": [
"mcp__agent-analytics__analytics_panel",
"mcp__agent-analytics__create_project",
"mcp__agent-analytics__properties",
"mcp__agent-analytics__properties_received",
"mcp__agent-analytics__create_experiment",
"mcp__agent-analytics__live_now",
"mcp__agent-analytics__all_sites_overview",
"mcp__agent-analytics__bot_traffic_overview",
"mcp__agent-analytics__all_sites_bot_traffic",
"mcp__agent-analytics__query",
"mcp__agent-analytics__analytics_funnel",
"mcp__agent-analytics__analytics_retention",
"mcp__agent-analytics__analytics_insights",
"mcp__agent-analytics__analytics_breakdown",
"mcp__agent-analytics__analytics_pages",
"mcp__agent-analytics__analytics_paths",
"mcp__agent-analytics__analytics_sessions",
"mcp__agent-analytics__analytics_heatmap"
],
"deny": [
"mcp__agent-analytics__set_project_context",
"mcp__agent-analytics__update_experiment",
"mcp__agent-analytics__delete_experiment"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as agent-analytics. Review it before you use it.
