Skip to main content
Glama
Macawls

Umami MCP Server

Umami MCP Server

Umami AnalyticsをClaude Desktop、VS Code、Cursor、Windsurf、Zed、SmitheryなどのあらゆるMCPクライアントに接続します。

プロンプト

分析とトラフィック

  • "過去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)にインストールされます。

セットアップ

好みに応じて、以下の2つのアプローチのいずれかを選択してください。

リモート(インストール不要)

ホストされたインスタンスが 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クライアントであれば、X-Umami-HostX-Umami-UsernameX-Umami-Password ヘッダーに認証情報を含めて https://umami-mcp.macawls.dev/mcp に接続できます。

ローカル

バイナリまたは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

ページ、リファラー、ブラウザ、OS、デバイス、国別の内訳

get_active

現在のリアルタイム訪問者数

設定

環境変数

変数

デフォルト

説明

UMAMI_URL

必須

UmamiインスタンスのURL

UMAMI_USERNAME

必須

Umamiのユーザー名

UMAMI_PASSWORD

必須

Umamiのパスワード

UMAMI_TEAM_ID

チームベースのセットアップ用のチームID

TRANSPORT

stdio

トランスポートモード (stdio または http)

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 ヘッダーを使用します。

チームIDは、Umamiダッシュボードの Settings > Teams で確認できます。

セルフホスティング (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