aptabase-mcp
Unofficial MCP server that lets AI agents query Aptabase analytics using cookie-authenticated dashboard endpoints, providing tools for metrics, events, and sessions.
README
Aptabase MCP Server
Unofficial TypeScript MCP server that lets AI agents (Cursor, Claude Desktop, etc.) query Aptabase analytics.
Aptabase has no public query API. This server wraps the same cookie-authenticated dashboard endpoints used by the web UI (/api/_apps, /api/_stats/*, /api/_export/usage). Those endpoints are undocumented and may change.
Security
APTABASE_AUTH_SESSION is a full dashboard login cookie. Anyone with it can read your analytics (and anything else that session can do in the Aptabase UI).
- Store it only in local MCP config or a secret manager — never commit it.
- Prefer a throwaway / limited account if your org supports one.
- Rotate by signing out of Aptabase (or clearing the cookie) if it leaks.
- Do not paste real cookies into issues, PRs, or chat logs.
Requirements
- Node.js 20+
- An Aptabase account (cloud US/EU or self-hosted)
- A browser session cookie named
auth-session
Install (Cursor)
Clone and build:
git clone https://github.com/billylo1/aptabase-mcp.git
cd aptabase-mcp
npm install
Add to Cursor MCP settings (~/.cursor/mcp.json or project .cursor/mcp.json):
{
"mcpServers": {
"aptabase": {
"command": "node",
"args": ["/absolute/path/to/aptabase-mcp/dist/index.js"],
"env": {
"APTABASE_BASE_URL": "https://us.aptabase.com",
"APTABASE_AUTH_SESSION": "<paste-cookie-value>"
}
}
}
}
For local development without building:
{
"mcpServers": {
"aptabase": {
"command": "npx",
"args": ["tsx", "/absolute/path/to/aptabase-mcp/src/index.ts"],
"env": {
"APTABASE_BASE_URL": "https://us.aptabase.com",
"APTABASE_AUTH_SESSION": "<paste-cookie-value>"
}
}
}
}
Get the auth-session cookie
- Log into Aptabase (
https://us.aptabase.com,https://eu.aptabase.com, or your self-hosted URL). - Open DevTools → Application (Chrome) / Storage (Firefox) → Cookies.
- Copy the value of
auth-session(not the name). - Paste into
APTABASE_AUTH_SESSION. Cookies last up to ~365 days; refresh on 401.
Base URL
| Deployment | APTABASE_BASE_URL |
|---|---|
| Aptabase Cloud (US) | https://us.aptabase.com |
| Aptabase Cloud (EU) | https://eu.aptabase.com |
| Self-hosted | https://your-host.example.com (no trailing slash) |
Use the same host you logged into when copying the cookie.
Tools
| Tool | Description |
|---|---|
list_apps |
List apps for the authenticated account |
get_app |
Get one app by id |
get_metrics |
Key metrics (daily users, sessions, events, duration) |
get_periodic_stats |
Time-series buckets |
get_top_events |
Top event names |
get_top_countries |
Top countries |
get_top_os |
Top operating systems |
get_top_os_versions |
Top OS versions |
get_top_app_versions |
Top app versions |
get_top_devices |
Top device models |
get_top_regions |
Top regions |
get_event_props |
Custom props for a given eventName |
get_live_sessions |
Recent/live sessions |
get_live_geo |
Live geo points |
get_session_details |
Session timeline |
get_historical_sessions |
Historical sessions |
get_monthly_usage |
Monthly event counts |
Most stats tools accept:
appId(required)buildMode:release(default) ordebugperiodpreset orstartDate/endDate(ISO)- Optional filters:
eventName,osName,appVersion,countryCode,deviceModel
Period presets
Same as the Aptabase dashboard: 24h, 48h, today, yesterday, 7d, 14d, 30d, month, last-month, 90d, 180d, 365d, all.
If neither period nor dates are provided, stats tools default to 24h.
Note: dailyUsers from get_metrics is average daily users for the window, not a multi-day distinct user total (Aptabase’s privacy model).
Example prompts
- “List my Aptabase apps.”
- “Show key metrics for app
<appId>over the last 7 days.” - “What are the top events in the last 30 days for
<appId>?” - “Break down properties for the
purchaseevent over the last 90 days.” - “Show live sessions and then detail session
<sessionId>.”
Scripts
| Script | Purpose |
|---|---|
npm install |
Install deps and build (prepare) |
npm run dev |
Run with tsx (no build) |
npm run build |
Compile to dist/ |
npm start |
Run dist/index.js |
npm test |
Unit tests |
npm run typecheck |
tsc --noEmit |
Notes
- Read-only: does not create/update/delete apps or download bulk CSV exports.
- Dashboard stats are rate-limited (~1000 req/hour); retry on
429. - App Key (
A-US-…) is for ingestion only — querying needs theauth-sessioncookie. - Not affiliated with Aptabase.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.