umami-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| UMAMI_API_KEY | No | API key, sent as x-umami-api-key (Umami Cloud / newer self-hosted) | |
| UMAMI_API_URL | Yes | Your Umami base URL, e.g. https://cloud.umami.is | |
| UMAMI_TEAM_ID | No | If set, get_websites lists that team's sites; otherwise yours | |
| UMAMI_TIMEOUT | No | Per-request timeout in seconds (default 30) | 30 |
| UMAMI_PASSWORD | No | Password for bearer token auth | |
| UMAMI_USERNAME | No | Username for bearer token auth |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_websitesA | List the websites in your Umami account, with their ids, names, and domains. Takes no arguments. Use the returned |
| get_website_statsA | Get overview metrics for a website over a date range. Returns pageviews, unique visitors, visits, bounces, and total time. If you get no data, double-check the date range before assuming there is none. Args: website_id: The website id (from get_websites). start_at: Range start, 'YYYY-MM-DD' or 'YYYY-MM-DD HH:MM:SS' (UTC). end_at: Range end, same formats (a bare date includes the whole day). |
| get_website_metricsA | Get a breakdown of visitors by a dimension over a date range.
Args: website_id: The website id (from get_websites). start_at: Range start (UTC). end_at: Range end (UTC). type: One of url, referrer, browser, os, device, country, event. |
| get_pageview_seriesA | Get a pageviews-and-sessions time series, bucketed by hour, day, or month. Use 'hour' for short ranges (1-7 days), 'day' for medium ranges, 'month' for long ranges. Args: website_id: The website id (from get_websites). start_at: Range start (UTC). end_at: Range end (UTC). unit: Bucket size: hour, day, or month. timezone: IANA timezone for bucketing, e.g. 'UTC' or 'Europe/London'. |
| get_active_visitorsA | Get the number of visitors currently active on a website (real-time). Args: website_id: The website id (from get_websites). |
| get_session_idsA | Get the unique session ids active in a range, optionally filtered to an event. Use this to find sessions to inspect with get_tracking_data, not to count unique
visitors (use get_website_stats for counts). Pass Args: website_id: The website id (from get_websites). start_at: Range start (UTC). end_at: Range end (UTC). event_name: Optional event name to filter by (e.g. 'checkout_completed'). |
| get_tracking_dataA | Get the full activity timeline (user journey) for one session. Args: website_id: The website id (from get_websites). start_at: Range start (UTC). end_at: Range end (UTC). session_id: The session to inspect (from get_session_ids). |
| get_docsA | Semantic search over many user journeys to surface the most relevant moments. Pulls every session for the range (optionally filtered to Requires the optional 'rag' extra; without it, this returns install instructions. Args: user_question: What you want to learn (used for the similarity search). website_id: The website id (from get_websites). start_at: Range start (UTC). end_at: Range end (UTC). selected_event: Optional event name to filter sessions by. |
| get_htmlA | Fetch the raw HTML of a live web page (HTTP GET, no JavaScript execution). Useful for giving the model the structure/markup of a page you're analyzing. Args: url: Full URL including scheme, e.g. 'https://example.com/pricing'. |
| get_screenshotA | Capture a rendered screenshot of a live web page. Requires the optional 'screenshot' extra (Playwright); without it, this returns install instructions instead of an image. Args: url: Full URL including scheme, e.g. 'https://example.com'. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| create_dashboard | Guide the model through building a comprehensive analytics dashboard. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MurkyPuma/umami-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server