Skip to main content
Glama

mcp-umami

by Macawls

Umami MCP Server

Connect your Umami Analytics to any MCP client - Claude Desktop, VS Code, Cursor, Windsurf, Zed, and more.

Prompts

Analytics & Traffic

  • "Give me a comprehensive analytics report for my website over the last 30 days"
  • "Which pages are getting the most traffic this month? Show me the top 10"
  • "Analyze my website's traffic patterns - when do I get the most visitors?"

User Insights

  • "Where are my visitors coming from? Break it down by country and city"
  • "What devices and browsers are my users using?"
  • "Show me the user journey - what pages do visitors typically view in sequence?"

Real-time Monitoring

  • "How many people are on my website right now? What pages are they viewing?"
  • "Is my website experiencing any issues? Check if traffic has dropped significantly"

Content & Campaign Analysis

  • "Which blog posts should I update? Show me articles with declining traffic"
  • "How did my recent email campaign perform? Track visitors from the campaign UTM"
  • "Compare traffic from different social media platforms"

Quick Start

Option 1: Download Binary

Get the latest release for your platform from Releases

Option 2: Docker

docker run -i --rm \ -e UMAMI_URL="https://your-instance.com" \ -e UMAMI_USERNAME="username" \ -e UMAMI_PASSWORD="password" \ ghcr.io/macawls/umami-mcp-server

Option 3: Go Install

go install github.com/Macawls/umami-mcp-server@latest # Or specific version go install github.com/Macawls/umami-mcp-server@v1.0.3

Installs to ~/go/bin/umami-mcp-server (or $GOPATH/bin)

Configure Your MCP Client

Claude Desktop

Add to your Claude Desktop config:

Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json

{ "mcpServers": { "umami": { "command": "~/go/bin/umami-mcp-server", "env": { "UMAMI_URL": "https://your-umami-instance.com", "UMAMI_USERNAME": "your-username", "UMAMI_PASSWORD": "your-password" } } } }
{ "mcpServers": { "umami": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "UMAMI_URL", "-e", "UMAMI_USERNAME", "-e", "UMAMI_PASSWORD", "ghcr.io/macawls/umami-mcp-server" ], "env": { "UMAMI_URL": "https://your-umami-instance.com", "UMAMI_USERNAME": "your-username", "UMAMI_PASSWORD": "your-password" } } } }
{ "mcpServers": { "umami": { "command": "~/go/bin/umami-mcp-server", "env": { "UMAMI_URL": "${input:umami_url}", "UMAMI_USERNAME": "${input:umami_username}", "UMAMI_PASSWORD": "${input:umami_password}" } } }, "inputs": [ { "type": "promptString", "id": "umami_url", "description": "Umami instance URL" }, { "type": "promptString", "id": "umami_username", "description": "Umami username" }, { "type": "promptString", "id": "umami_password", "description": "Umami password", "password": true } ] }

Restart Claude Desktop to load the server.

VS Code (GitHub Copilot)

Enable agent mode and add MCP servers to access Umami from Copilot.

For workspace: Create .vscode/mcp.json

{ "servers": { "umami": { "command": "~/go/bin/umami-mcp-server", "env": { "UMAMI_URL": "https://your-umami-instance.com", "UMAMI_USERNAME": "your-username", "UMAMI_PASSWORD": "your-password" } } } }
{ "inputs": [ { "type": "promptString", "id": "umami_url", "description": "Umami instance URL" }, { "type": "promptString", "id": "umami_username", "description": "Umami username" }, { "type": "promptString", "id": "umami_password", "description": "Umami password", "password": true } ], "servers": { "umami": { "command": "~/go/bin/umami-mcp-server", "env": { "UMAMI_URL": "${input:umami_url}", "UMAMI_USERNAME": "${input:umami_username}", "UMAMI_PASSWORD": "${input:umami_password}" } } } }

Access via: Chat view → Agent mode → Tools button

Other MCP Clients

Cursor: Ctrl/Cmd + Shift + P → "Cursor Settings" → MCP section

Windsurf: Settings → MCP Settings → Add MCP Server
Config location: %APPDATA%\windsurf\mcp_settings.json (Windows)

Zed: Settings → assistant.mcp_servers

Cline: VS Code Settings → Extensions → Cline → MCP Servers

All use similar JSON format as above. Docker and secure prompts work the same way.

Available Tools

  • get_websites - List all your websites
  • get_stats - Get visitor statistics
  • get_pageviews - View page traffic over time
  • get_metrics - See browsers, countries, devices, and more
  • get_active - Current active visitors

Alternative Configuration

Instead of environment variables, create a config.yaml file next to the binary:

umami_url: https://your-umami-instance.com username: your-username password: your-password

Environment variables take priority over the config file.

Build from Source

git clone https://github.com/Macawls/umami-mcp-server.git cd umami-mcp-server go build -o umami-mcp

Troubleshooting

Binary won't run

  • macOS: Run xattr -c umami-mcp-server to remove quarantine
  • Linux: Run chmod +x umami-mcp-server to make executable

Connection errors

  • Verify your Umami instance is accessible
  • Check your credentials are correct

Tools not showing up

  • Check your MCP client logs for errors
  • Verify the binary path is absolute
  • Try running the binary directly to check for errors

License

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Connect your Umami Analytics to any MCP client to derive insights from natural language.

  1. Prompts
    1. Analytics & Traffic
    2. User Insights
    3. Real-time Monitoring
    4. Content & Campaign Analysis
  2. Quick Start
    1. Option 1: Download Binary
    2. Option 2: Docker
    3. Option 3: Go Install
  3. Configure Your MCP Client
    1. Claude Desktop
    2. VS Code (GitHub Copilot)
    3. Other MCP Clients
  4. Available Tools
    1. Alternative Configuration
      1. Build from Source
        1. Troubleshooting
          1. Binary won't run
          2. Connection errors
          3. Tools not showing up
        2. License

          Related MCP Servers

          • -
            security
            A
            license
            -
            quality
            Enhances Claude's capabilities by providing access to website analytics data from Umami, enabling analysis of user behavior, website performance tracking, and data-driven insights generation.
            Last updated -
            4
            Python
            MIT License
            • Apple
          • A
            security
            F
            license
            A
            quality
            A lightweight MCP server that provides a unified interface to various LLM providers including OpenAI, Anthropic, Google Gemini, Groq, DeepSeek, and Ollama.
            Last updated -
            6
            411
            Python
          • -
            security
            A
            license
            -
            quality
            A server that integrates the MCP library with OpenAI's API, allowing users to interact with various tools, such as the weather tool, through natural language queries.
            Last updated -
            Python
            MIT License
          • -
            security
            A
            license
            -
            quality
            txtai is an all-in-one embeddings database for semantic search, LLM orchestration and language model workflows. All functionality can be served via it's API and the API supports MCP. Docs: https://neuml.github.io/txtai/api/mcp/
            Last updated -
            11,130
            Python
            Apache 2.0

          View all related MCP servers

          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/Macawls/umami-mcp-server'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server