LabscoMCP early access ↗
MacawlsMCP SERVER

Umami MCP Server by Macawls

Ask your Umami analytics questions directly — traffic, sources, devices, live visitors and recorded sessions.

SEO, Web & Product AnalyticsCommunity

LABSCO SUMMARY

Analytics questions answered without opening the dashboard.

It covers both halves of the picture — the aggregate numbers and the individual session timelines — so a question like "which of my posts is losing traffic and what do those visitors do next" can be answered in one pass.

What it is

A single Go binary that speaks to a Umami instance, self-hosted or Cloud, and exposes the analytics surface as tools. It runs over stdio locally, or as a Streamable HTTP service with credentials passed in headers, and there is a hosted instance you can point at without installing anything.

What you get

  • get_websites — the websites you have, which is where the IDs for everything else come from
  • get_stats — pageviews, visitors, bounces and total time for a period
  • get_pageviews — pageview and session counts grouped by time unit
  • get_metrics — the breakdown by page, referrer, browser, OS, device or country
  • get_active — how many people are on the site right now
  • get_sessions — individual visitor sessions with a total count, the same ones session replay records
  • get_session_stats — aggregated session totals across pageviews, visitors, visits, countries and events
  • get_session_activity — the ordered pageview and event timeline for one session

Requirements

For a self-hosted Umami: UMAMI_URL plus UMAMI_USERNAME and UMAMI_PASSWORD. Umami Cloud does not accept username and password — use UMAMI_API_KEY with UMAMI_URL set to https://api.umami.is. If your websites belong to a team rather than to you, get_websites comes back empty until you set UMAMI_TEAM_ID. Install by downloading a release binary, go install, or the container image; a config.yaml next to the binary works instead of environment variables, which take priority over it. TRANSPORT=http exposes a /mcp endpoint on PORT, default 8080, where credentials arrive as X-Umami-* headers on the initialize request. On macOS, xattr -c clears the quarantine flag if the binary will not start.

Setup effort

One command plus a key — go install github.com/Macawls/umami-mcp-server@latest, then supply credentials