Connect your Umami Analytics to any MCP client - Claude Desktop, VS Code, Cursor, Windsurf, Zed, Smithery, and more.
Umami MCP server exists for a simple reason — assistants are far more useful when they can act on Umami directly instead of describing what you should do. Connect your Umami Analytics to any MCP client - Claude Desktop, VS Code, Cursor, Windsurf, Zed, Smithery, and more.
Being a remote server, there is no local install. You register the endpoint with your client, authorise it once, and the tools appear.
Once Umami is connected, these are the calls the assistant has available:
get_websites — List all websites (call this first to get website IDs)get_stats — Aggregated statistics — pageviews, visitors, bounces, total timeget_pageviews — Pageview and session counts grouped by time unitget_metrics — Breakdown by page, referrer, browser, OS, device, country, etcget_active — Current active visitor count in real-timeget_sessions — List individual visitor sessions, with total count — the sessions session replay recordsget_session_stats — Aggregated session totals — pageviews, visitors, visits, countries, eventsget_session_activity — Ordered pageview/event timeline for a single sessionLocal — Run the binary or Docker image locally. Credentials are set via environment variablesYou will need 5 environment variables: UMAMI_URL, UMAMI_USERNAME, UMAMI_PASSWORD, UMAMI_API_KEY, UMAMI_TEAM_ID. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
Among the browser automation options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Umami's toolset — get_websites, get_stats, get_pageviews and 6 more — is a fair guide to whether it matches your workflow. It is maintained by Macawls; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| get_websites | List all websites (call this first to get website IDs) |
| get_stats | Aggregated statistics — pageviews, visitors, bounces, total time |
| get_pageviews | Pageview and session counts grouped by time unit |
| get_metrics | Breakdown by page, referrer, browser, OS, device, country, etc. |
| get_active | Current active visitor count in real-time |
| get_sessions | List individual visitor sessions, with total count — the sessions session replay records |
| get_session_stats | Aggregated session totals — pageviews, visitors, visits, countries, events |
| get_session_activity | Ordered pageview/event timeline for a single session |
| Local | Run the binary or Docker image locally. Credentials are set via environment variables. |
{
"mcpServers": {
"umami": {
"type": "http",
"url": "https://umami-mcp.macawls.dev/mcp",
"headersHelper": "echo X-Umami-Host: https://your-instance.com && echo X-Umami-Username: admin && echo X-Umami-Password: pass"
}
}
}Configuration as documented by the project. Restart the client after saving.
| Variable | Description | Required |
|---|---|---|
| UMAMI_URL | Endpoint or connection string the server talks to. | Yes |
| UMAMI_USERNAME | Configuration value read at startup. | Optional |
| UMAMI_PASSWORD | Configuration value read at startup. | Optional |
| UMAMI_API_KEY | Credential the server authenticates with. | Yes |
| UMAMI_TEAM_ID | Configuration value read at startup. | Optional |
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.