Skip to main content
Glama
Macawls

Umami MCP Server

Umami MCP 服务器

将您的 Umami Analytics 连接到任何 MCP 客户端 - Claude Desktop、VS Code、Cursor、Windsurf、Zed、Smithery 等。

提示词

分析与流量

  • "给我一份过去 30 天我网站的综合分析报告"

  • "本月哪些页面的流量最高?显示前 10 名"

  • "分析我网站的流量模式 - 我在什么时候访问量最大?"

用户洞察

  • "我的访客来自哪里?按国家和城市细分"

  • "我的用户正在使用哪些设备和浏览器?"

  • "向我展示用户旅程 - 访客通常按什么顺序查看页面?"

实时监控

  • "现在有多少人在我的网站上?他们正在查看哪些页面?"

  • "我的网站是否有任何问题?检查流量是否大幅下降"

内容与营销活动分析

  • "我应该更新哪些博客文章?显示流量下降的文章"

  • "我最近的电子邮件营销活动表现如何?追踪来自营销活动 UTM 的访客"

  • "比较来自不同社交媒体平台的流量"

Related MCP server: Customized MCP Server

快速开始

选项 1:下载二进制文件

Releases 获取适用于您平台的最新版本

选项 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

选项 3:Go 安装

go install github.com/Macawls/umami-mcp-server@latest

安装到 ~/go/bin/umami-mcp-server (或 $GOPATH/bin)

设置

根据您的偏好选择以下两种方法之一。

远程(无需安装)

托管实例位于 https://umami-mcp.macawls.dev/mcp。直接从任何支持 HTTP 传输的 MCP 客户端连接 - 无需二进制文件或 Docker。

凭据通过 initialize 请求上的 X-Umami-* 标头传递。

添加到您的配置中(Windows 上为 %APPDATA%\Claude\claude_desktop_config.json,macOS 上为 ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "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"
    }
  }
}

添加到 .vscode/mcp.json

{
  "servers": {
    "umami": {
      "type": "http",
      "url": "https://umami-mcp.macawls.dev/mcp",
      "headers": {
        "X-Umami-Host": "https://your-instance.com",
        "X-Umami-Username": "${input:umami-username}",
        "X-Umami-Password": "${input:umami-password}"
      }
    }
  }
}
claude mcp add --transport http \
  --header "X-Umami-Host: https://your-instance.com" \
  --header "X-Umami-Username: admin" \
  --header "X-Umami-Password: pass" \
  umami https://umami-mcp.macawls.dev/mcp

添加到 .cursor/mcp.json

{
  "mcpServers": {
    "umami": {
      "url": "https://umami-mcp.macawls.dev/mcp",
      "headers": {
        "X-Umami-Host": "https://your-instance.com",
        "X-Umami-Username": "admin",
        "X-Umami-Password": "pass"
      }
    }
  }
}

添加到 ~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "umami": {
      "serverUrl": "https://umami-mcp.macawls.dev/mcp",
      "headers": {
        "X-Umami-Host": "https://your-instance.com",
        "X-Umami-Username": "admin",
        "X-Umami-Password": "pass"
      }
    }
  }
}

添加到 opencode.json

{
  "mcp": {
    "umami": {
      "type": "remote",
      "url": "https://umami-mcp.macawls.dev/mcp",
      "headers": {
        "X-Umami-Host": "https://your-instance.com",
        "X-Umami-Username": "admin",
        "X-Umami-Password": "pass"
      }
    }
  }
}

任何支持 Streamable HTTP 的 MCP 客户端都可以连接到 https://umami-mcp.macawls.dev/mcp,并在 X-Umami-HostX-Umami-UsernameX-Umami-Password 标头中包含凭据。

本地

在本地运行二进制文件或 Docker 镜像。凭据通过环境变量设置。

添加到您的配置中(Windows 上为 %APPDATA%\Claude\claude_desktop_config.json,macOS 上为 ~/Library/Application Support/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"
      }
    }
  }
}

创建 .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"
      }
    }
  }
}
claude mcp add \
  umami-mcp-server \
  -e UMAMI_URL="https://your-umami-instance.com" \
  -e UMAMI_USERNAME="your-username" \
  -e UMAMI_PASSWORD="your-password" \
  -- ~/go/bin/umami-mcp-server

添加到 .cursor/mcp.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"
      }
    }
  }
}

添加到 ~/.codeium/windsurf/mcp_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"
      }
    }
  }
}

添加到您的 Zed 设置中的 assistant.mcp_servers 下:

{
  "umami": {
    "command": "~/go/bin/umami-mcp-server",
    "env": {
      "UMAMI_URL": "https://your-umami-instance.com",
      "UMAMI_USERNAME": "your-username",
      "UMAMI_PASSWORD": "your-password"
    }
  }
}

对于使用 command 字段的客户端(Claude Desktop、Cursor 等):

{
  "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"
      }
    }
  }
}

可用工具

工具

描述

get_websites

列出所有网站(首先调用此项以获取网站 ID)

get_stats

聚合统计数据 - 页面浏览量、访客、跳出率、总时间

get_pageviews

按时间单位分组的页面浏览量和会话计数

get_metrics

按页面、引荐来源、浏览器、操作系统、设备、国家/地区等细分

get_active

当前实时活跃访客数

配置

环境变量

变量

默认值

描述

UMAMI_URL

必需

您的 Umami 实例 URL

UMAMI_USERNAME

必需

Umami 用户名

UMAMI_PASSWORD

必需

Umami 密码

UMAMI_TEAM_ID

团队网站 的团队 ID

TRANSPORT

stdio

传输模式 (stdiohttp)

PORT

8080

HTTP 服务器端口

ALLOWED_ORIGINS

*

逗号分隔的 CORS 允许来源

MAX_SESSIONS

1000

最大并发 HTTP 会话数

配置文件

除了环境变量,您可以在二进制文件旁边创建一个 config.yaml 文件:

umami_url: https://your-umami-instance.com
username: your-username
password: your-password
team_id: your-team-id  # optional

环境变量的优先级高于配置文件。

团队网站

如果您的 Umami 实例使用团队,并且您的网站分配给团队而不是个人用户,get_websites 可能会返回空列表。设置 UMAMI_TEAM_ID 以从您的团队获取网站。对于 HTTP 传输,请使用 X-Umami-Team-Id 标头。

您可以在 Umami 仪表板的 设置 > 团队 下找到您的团队 ID。

自托管 (HTTP 传输)

服务器支持用于远程部署的 Streamable HTTP。设置 TRANSPORT=http 以公开 /mcp 端点:

TRANSPORT=http PORT=9999 ./umami-mcp-server

凭据通过 initialize 请求上的 X-Umami-* 标头传递。响应包含用于后续请求的 Mcp-Session-Id 标头。

Docker 默认为 HTTP 模式:

docker run -p 8080:8080 ghcr.io/macawls/umami-mcp-server

从源码构建

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

故障排除

  • macOS 二进制文件无法运行:使用 xattr -c umami-mcp-server 移除隔离属性

  • Linux 二进制文件无法运行:使用 chmod +x umami-mcp-server

  • 连接错误:验证您的 Umami 实例是否可访问且凭据正确

  • 工具未显示:检查您的 MCP 客户端日志,验证二进制路径是否为绝对路径

许可证

MIT

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

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

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