mcpField
O
ObsidianCorps Umami Analytics

ObsidianCorps Umami Analytics

ローカル
github.com/obsidiancorpsデータ・分析06 週間前に更新

ObsidianCorps Umami Analytics について

ObsidianCorps Umami Analyticsは、Umami Cloudとセルフホスト版Umamiを照会する読み取り専用のMCPサーバーです。トラフィック、コンバージョン、パフォーマンスを調べる分析担当者やエージェント向けで、変更操作は初期状態で無効です。

主な機能

  1. 01Umami v3分析APIをカバー
  2. 0217個の読み取り専用分析ツール
  3. 03サイト名とドメインの自動解決
  4. 04構造化結果と期間指定クエリ
  5. 05書き込み・破壊的ツールの任意有効化

活用シーン

  1. 01期間別のサイトトラフィック比較
  2. 02コンバージョン元、収益、イベントの分析
  3. 03Web Vitalsとパフォーマンスレポートの調査
  4. 04リアルタイム活動、セッション、リプレイの確認

MCP 対応

MCPクライアントにUmami分析ツール、機能とサイトのリソース、再利用可能なプロンプトを提供します。ローカルstdioとステートレスなStreamable HTTPに対応し、初期状態では読み取りツールのみを有効にします。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"obsidiancorps-umami": {
"command": "npx",
"args": [
"-y",
"@obsidiancorps/umami-mcp"
],
"env": {
"UMAMI_API_KEY": "<UMAMI_API_KEY>",
"UMAMI_BASE_URL": "<UMAMI_BASE_URL>",
"UMAMI_TOKEN": "<UMAMI_TOKEN>",
"UMAMI_USERNAME": "<UMAMI_USERNAME>",
"UMAMI_PASSWORD": "<UMAMI_PASSWORD>",
"UMAMI_TWO_FACTOR_SECRET": "<UMAMI_TWO_FACTOR_SECRET>",
"UMAMI_DEFAULT_WEBSITE_ID": "<UMAMI_DEFAULT_WEBSITE_ID>"
}
}
}
}
起動コマンドnpx -y @obsidiancorps/umami-mcp
設定が必要な環境変数
UMAMI_API_KEYシークレットUmami Cloud API key. Configure this or one self-hosted authentication mode.
UMAMI_BASE_URLBase URL of a self-hosted Umami instance, for example https://analytics.example.com.
UMAMI_TOKENシークレットPre-issued self-hosted Umami token. Use with UMAMI_BASE_URL instead of login credentials.
UMAMI_USERNAMESelf-hosted Umami username. Use with UMAMI_BASE_URL and UMAMI_PASSWORD.
UMAMI_PASSWORDシークレットSelf-hosted Umami password. Use with UMAMI_BASE_URL and UMAMI_USERNAME.
UMAMI_TWO_FACTOR_SECRETシークレットOptional Base32 TOTP setup secret for automatic Umami 3.3+ two-factor login.
UMAMI_DEFAULT_WEBSITE_IDOptional default website UUID used when a tool call does not select a website.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@obsidiancorps/umami-mcp0.1.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ObsidianCorps Umami MCP

自分でホストする Umami アナリティクスについて質問し、データを別のアナリティクス SaaS に送信せずに利用できます。

Umami Cloud およびセルフホスト型の Umami Analytics 向けに、安全でモデルに使いやすい Model Context Protocol サーバーです。Umami v3.3.1 と 2026-07-28 MCP protocol を対象としながら、2025 年代の MCP クライアントとの互換性も維持しています。

3 つのアナリティクスに関する質問に回答する Umami MCP

インストール

要件:Node.js 20 以降と、設定済みの 認証モード 1 つ。

npx -y @obsidiancorps/umami-mcp

次のように質問してみてください。

  • 「先月と比べてウェブサイトのトラフィックを比較してください。」
  • 「最も多くのコンバージョンを生み出した参照元はどれですか?」
  • 「Web Vitals の低いページを見つけてください。」

エージェントスキル

このリポジトリには Umami Analytics スキル も含まれています。 MCP サーバーは Umami へのアクセスを提供し、スキルはそれらのツールを使ったトラフィック比較、 コンバージョン分析、収益、パフォーマンス調査をエージェントに案内します。 これは Agent Skills format に準拠しています。

MCP Market の GitHub からインポート では、スキルフォルダーの URL を使用してください。

https://github.com/ObsidianCorps/umami-mcp/tree/main/skills/umami-analytics

URL は SKILL.md を含むフォルダーを指している必要があります。公開リポジトリの場合は、 公開リポジトリ を選択してください。マーケットプレイスからインポートできるようにするには、 フォルダーを main にプッシュしておく必要があります。

手動でインストールするには、skills/umami-analytics をエージェントのスキルディレクトリにコピーします (たとえば、プロジェクト内の .claude/skills/umami-analytics)。MCP サーバー は別途設定して 認証してください。スキルをインポートしても、サーバーはインストールされず、 アナリティクスへのアクセス権も付与されません。

この実装の特長

  • Umami v3 の最新機能を網羅:収益 API、セッションリプレイ、ヒートマップ、イベント/セッションプロパティのピボットと型付き系列、セグメント、コホート、ボード、リンク、ピクセル、Web Vitals レポート、および従来のアナリティクス API。
  • コンパクトなモデル向けインターフェース:17 個の読み取りツールで、数十個のよく似たエンドポイントツールを並べるのではなく、分析ワークフローに沿って API を整理します。
  • モデルに使いやすい入力:ウェブサイト名/ドメインは自動で解決され、アクセス可能なウェブサイトが 1 つの場合は自動選択されます。また、日付範囲にはプリセットまたは正確な ISO/epoch タイムスタンプを指定できます。
  • 構造化された MCP 結果:すべてのツールが出力スキーマを公開し、structuredContent と読みやすい JSON を返します。
  • 安全なデフォルト設定:デフォルトでは変更操作がなく、破壊的なツールには追加のオプトインと、対象を指定した正確な確認文字列が必要です。
  • 2 つの最新トランスポート:ローカル stdio とステートレスな Streamable HTTP。従来の HTTP+SSE は意図的に引き継いでいません。
  • 多層防御:レスポンスのバイト数制限、リクエストタイムアウト、HTTPS の強制、トークンの更新、DNS リバインディング保護、厳密なオリジンチェック、定時間の MCP ベアラーチェック。
  • Cloud とセルフホスト環境の認証:Umami Cloud API キー、事前発行されたセルフホストトークン、または遅延実行されるユーザー名/パスワード認証(Umami v3.3 以降の二要素認証を含む)。401 の後は 1 回だけ再認証します。

設定

ソースから

要件:Node.js 20 以降。

npm install
npm run build
UMAMI_API_KEY=your-key node dist/cli.js

MCP クライアントの設定例:

{
  "mcpServers": {
    "umami": {
      "command": "npx",
      "args": ["-y", "@obsidiancorps/umami-mcp"],
      "env": {
        "UMAMI_API_KEY": "your-key",
        "UMAMI_DEFAULT_WEBSITE_ID": "optional-website-uuid"
      }
    }
  }
}

ソースをチェックアウトした場合は、コマンドを node に、引数を dist/cli.js の絶対パスに置き換えてください。

認証

次のモードから必ず1つだけ選択してください。

モード変数API ベース URL
Umami CloudUMAMI_API_KEY既定値は https://api.umami.is/v1 です
セルフホストのトークンUMAMI_BASE_URL、UMAMI_TOKENルート URL に /api が追加されます
セルフホストのログインUMAMI_BASE_URL、UMAMI_USERNAME、UMAMI_PASSWORDルート URL に /api が追加されます
セルフホストのログイン+2FAログイン用の変数と UMAMI_TWO_FACTOR_SECRETルート URL に /api が追加されます
1回限りの2FAログインログイン用の変数と現在有効な6桁の UMAMI_TWO_FACTOR_CODEルート URL に /api が追加されます

UMAMI_TWO_FACTOR_SECRET は、認証アプリの登録時に表示される Base32 形式のセットアップシードです。MCP は必要なときに6桁の SHA-1 TOTP を生成し、ログに記録したり返却したりすることはありません。パスワードと TOTP シードを一緒に保存すると、要素間の分離が失われるため、最小限の権限を持つ専用の Umami アカウントを使用し、その環境を保護してください。事前に発行した UMAMI_TOKEN を使えば、どちらの認証情報も保持せずに済みます。

UMAMI_TWO_FACTOR_CODE は1回限りの代替手段であり、すぐに期限切れになるため、通常の MCP 起動には適していません。2要素認証の変数は1つだけ設定してください。

ローカル以外の Umami URL で HTTP を使用することは拒否されます。明示的に信頼されたプライベートネットワーク内でのみ、UMAMI_ALLOW_INSECURE_HTTP=true を設定してください。

ツール

デフォルトの読み取り専用ツールセットは次のとおりです。

ツール目的
umami_check_connection認証を確認し、現在のアカウントを調べます
umami_list_websites、umami_get_websiteサイトを見つけて調べます
umami_get_overview、umami_get_metricsKPI、時系列データ、ランキング形式のディメンションを集計します
umami_get_realtime現在の30分間のアクティビティウィンドウを調べます
umami_list_sessions、umami_inspect_sessionセッション、アクティビティ、プロパティ、リプレイのメタデータを閲覧します
umami_query_session_dataセッションのプロパティ、ピボット、統計、週ごとのトラフィック、型付き時系列データをクエリします
umami_list_events、umami_query_event_dataイベント、比較統計、時系列データ、プロパティ、値、ピボットを閲覧します
umami_get_revenue収益の統計、グラフ、ディメンション、セッションを取得します
umami_list_replaysリプレイを一覧表示するか、リプレイのイベントストリームを取得します
umami_run_report、umami_list_reportsファネル、ジャーニー、目標、リテンション、アトリビューション、UTM、収益、パフォーマンス、内訳、ヒートマップのレポートを実行または検索します
umami_list_segmentsセグメントとコホートを見つけます
umami_list_assetsボード、トラッキングリンク、ピクセルを見つけます

リソースでは、umami://capabilities と最新の umami://websites リストを公開します。再利用可能なプロンプトでは、アナリティクスのレビュー、コンバージョンのレビュー、リアルタイムのトリアージを行えます。

期間

ほとんどの分析ツールでは、次のいずれかを指定できます。

  • period:last_24_hours、last_7_days、last_30_days、last_90_days、today、yesterday、this_week、last_week、this_month、last_month;または
  • startAt と endAt の両方を、エポックミリ秒またはオフセット付きの ISO 8601 タイムスタンプで指定します。

カレンダー期間では、指定された IANA timezone が適用されます。ローリング期間では、午前0時に丸めず、直近のデータが保持されます。

変更操作と破壊的な操作

デフォルトでは、変更操作を行うツールは登録されていません。

UMAMI_ENABLE_WRITE_TOOLS=true

これにより、ウェブサイト、セグメント、レポート、ボード/リンク/ピクセルの作成・更新や、アナリティクスイベントの送信を行うツールが追加されます。恒久的なリセット/削除操作も公開するには、次を実行します。

UMAMI_ENABLE_WRITE_TOOLS=true
UMAMI_ENABLE_DESTRUCTIVE_TOOLS=true

破壊的な呼び出しには、RESET <website-id> や DELETE reports <report-id> などの確認文字列が必要です。MCP アノテーションでもこれらのツールは破壊的な操作として識別され、対応するホストで承認を必須にできます。

Streamable HTTP

ループバックの例:

MCP_TRANSPORT=http MCP_BEARER_TOKEN=replace-me npm start
# MCP:    http://127.0.0.1:3000/mcp
# Health: http://127.0.0.1:3000/health

コンテナーまたはループバック以外のアドレスにバインドする場合は、MCP_BEARER_TOKEN と MCP_ALLOWED_HOSTS の両方が必要です:

docker build -t umami-mcp .
docker run --rm -p 3000:3000 \
  -e UMAMI_API_KEY=your-key \
  -e MCP_BEARER_TOKEN=long-random-secret \
  -e MCP_ALLOWED_HOSTS=mcp.example.com \
  umami-mcp

ブラウザベースの MCP クライアントが接続する場合は、MCP_ALLOWED_ORIGINS に正確なブラウザーオリジンをコンマ区切りのリストで設定します。Origin ヘッダーのないリクエストは、引き続きネイティブクライアントで有効です。TLS は信頼できるリバースプロキシで終端してください。組み込みの静的ベアラートークンによるゲートは、その境界の内側で使用するものであり、一般公開のマルチユーザーサービスで OAuth の代わりとなるものではありません。

設定リファレンス

変数デフォルト説明
UMAMI_BASE_URLAPI キー認証用のクラウド APIUmami のルート URL または完全な API ベース URL
UMAMI_DEFAULT_WEBSITE_ID—ほとんどの呼び出しでサイトの解決を省略できます
UMAMI_TIMEOUT_MS15000上流リクエストのタイムアウト。100~120000 ms
UMAMI_MAX_RESPONSE_BYTES512000上流レスポンスの最大サイズ。1 KB~10 MB
UMAMI_ENABLE_WRITE_TOOLSfalse非破壊的な変更ツールを登録します
UMAMI_ENABLE_DESTRUCTIVE_TOOLSfalseリセット/削除ツールを登録します。書き込みツールが必要です
MCP_TRANSPORTstdiostdio、http、またはstreamable-http
MCP_HOST127.0.0.1HTTP のバインドアドレス
MCP_PORT3000HTTP ポート
MCP_BEARER_TOKEN—HTTP MCP エンドポイントを保護します
MCP_ALLOWED_HOSTS—ループバック以外の HTTP 用ホスト名のコンマ区切りリスト
MCP_ALLOWED_ORIGINS—正確なブラウザーオリジンのコンマ区切りリスト

開発

npm install
npm test
npm run typecheck
npm run lint
npm run format:check
npm run build
npm run check

テストでは、実際のインメモリ、stdio、および Streamable HTTP MCP クライアントを介してサーバーを実行します。変更を提出する前に、CONTRIBUTING.md と SECURITY.md を確認してください。

互換性の基準

  • Umami:v3.3.1。文書化されたルートを公開する v3 後期リリースとの互換性が想定されています。
  • MCP SDK:TypeScript SDK v2.0.0。
  • MCP プロトコル:2026-07-28、および2025年当時のクライアント向けの SDK のステートレス互換性パス。
  • Node.js:20、22、24。

Umami は、それぞれの所有者の商標です。この独立した統合は、Umami Software と提携しておらず、同社から承認も受けていません。

ライセンス

Apache-2.0。LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。