Umami MCP Server
Umami MCP 서버
Umami Analytics를 Claude Desktop, VS Code, Cursor, Windsurf, Zed, Smithery 등 모든 MCP 클라이언트에 연결하세요.
프롬프트
분석 및 트래픽
"지난 30일간의 웹사이트 종합 분석 보고서를 보여줘"
"이번 달에 가장 트래픽이 많은 페이지는 어디인가요? 상위 10개를 보여줘"
"웹사이트 트래픽 패턴을 분석해줘 - 방문자가 가장 많은 시간대는 언제인가요?"
사용자 인사이트
"방문자가 어디에서 오나요? 국가 및 도시별로 분류해줘"
"사용자가 어떤 기기와 브라우저를 사용하나요?"
"사용자 여정을 보여줘 - 방문자가 일반적으로 어떤 순서로 페이지를 보나요?"
실시간 모니터링
"지금 내 웹사이트에 몇 명이 접속해 있나요? 어떤 페이지를 보고 있나요?"
"웹사이트에 문제가 있나요? 트래픽이 크게 감소했는지 확인해줘"
콘텐츠 및 캠페인 분석
"어떤 블로그 게시물을 업데이트해야 할까요? 트래픽이 감소하는 기사를 보여줘"
"최근 이메일 캠페인의 성과는 어땠나요? 캠페인 UTM을 통해 방문자를 추적해줘"
"다양한 소셜 미디어 플랫폼의 트래픽을 비교해줘"
Related MCP server: Umami 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-* 헤더를 통해 전달됩니다.
설정 파일(%APPDATA%\Claude\claude_desktop_config.json(Windows), ~/Library/Application Support/Claude/claude_desktop_config.json(macOS))에 추가하세요:
{
"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 클라이언트는 X-Umami-Host, X-Umami-Username, X-Umami-Password 헤더에 자격 증명을 포함하여 https://umami-mcp.macawls.dev/mcp에 연결할 수 있습니다.
로컬
바이너리나 Docker 이미지를 로컬에서 실행하세요. 자격 증명은 환경 변수를 통해 설정됩니다.
설정 파일(%APPDATA%\Claude\claude_desktop_config.json(Windows), ~/Library/Application Support/Claude/claude_desktop_config.json(macOS))에 추가하세요:
{
"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"
}
}
}
}사용 가능한 도구
도구 | 설명 |
| 모든 웹사이트 나열 (웹사이트 ID를 얻으려면 먼저 호출하세요) |
| 집계된 통계 — 페이지뷰, 방문자, 이탈률, 총 시간 |
| 시간 단위로 그룹화된 페이지뷰 및 세션 수 |
| 페이지, 리퍼러, 브라우저, OS, 기기, 국가별 분석 등 |
| 실시간 현재 활성 방문자 수 |
구성
환경 변수
변수 | 기본값 | 설명 |
| 필수 | Umami 인스턴스 URL (Umami Cloud의 경우 |
| 자체 호스팅 시 필수 | Umami 사용자 이름 |
| 자체 호스팅 시 필수 | Umami 비밀번호 |
| Umami Cloud 시 필수 | Umami Cloud 계정의 API 키 (사용자 이름/비밀번호 대신 사용) |
| 팀 기반 설정을 위한 팀 ID | |
|
| 전송 모드 ( |
|
| HTTP 서버 포트 |
|
| 쉼표로 구분된 CORS 허용 오리진 |
|
| 최대 동시 HTTP 세션 수 |
구성 파일
환경 변수 대신 바이너리 옆에 config.yaml 파일을 생성하세요:
umami_url: https://your-umami-instance.com
username: your-username
password: your-password
team_id: your-team-id # optionalUmami Cloud의 경우 대신 API 키를 사용하세요:
umami_url: https://api.umami.is
api_key: your-api-key환경 변수가 구성 파일보다 우선합니다.
Umami Cloud
Umami Cloud(cloud.umami.is에서 호스팅되는 버전)는 사용자 이름/비밀번호 인증을 지원하지 않습니다. Umami Cloud 계정 설정에서 API 키를 사용하고 UMAMI_URL=https://api.umami.is와 UMAMI_API_KEY=...를 함께 설정하세요. HTTP 전송의 경우 X-Umami-Username/X-Umami-Password 대신 X-Umami-Api-Key 헤더를 보내세요.
팀 웹사이트
Umami 인스턴스가 팀을 사용하고 웹사이트가 개별 사용자가 아닌 팀에 할당된 경우, get_websites가 빈 목록을 반환할 수 있습니다. 대신 팀에서 웹사이트를 가져오려면 UMAMI_TEAM_ID를 설정하세요. HTTP 전송의 경우 X-Umami-Team-Id 헤더를 사용하세요.
팀 ID는 Umami 대시보드의 설정 > 팀에서 찾을 수 있습니다.
자체 호스팅 (HTTP 전송)
서버는 원격 배포를 위해 Streamable HTTP를 지원합니다. /mcp 엔드포인트를 노출하려면 TRANSPORT=http를 설정하세요:
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
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Connect ChatGPT and Claude to your Mac, Windows or Linux with secure MCP remote access.
Connect Claude, Cursor, or any MCP client to your FlowContent account
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnhances 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.9MIT
- AlicenseCqualityCmaintenanceMCP server exposing Umami analytics (Cloud + self-hosted)5MIT
- AlicenseAqualityCmaintenanceAn MCP server that gives Claude read access to Umami web analytics, allowing natural language queries for stats, breakdowns, pageview trends, live visitors, and user journeys.101MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for Umami Analytics that provides read-only tools to query website stats, events, sessions, reports, and more, enabling natural language analytics queries.24 npm3MIT