Umami MCP Server
Umami MCP Server
Verbinden Sie Ihre Umami Analytics mit jedem MCP-Client – Claude Desktop, VS Code, Cursor, Windsurf, Zed, Smithery und mehr.
Prompts
Analytik & Traffic
"Erstelle einen umfassenden Analysebericht für meine Website über die letzten 30 Tage"
"Welche Seiten erhalten diesen Monat den meisten Traffic? Zeige mir die Top 10"
"Analysiere die Traffic-Muster meiner Website – wann habe ich die meisten Besucher?"
Nutzer-Einblicke
"Woher kommen meine Besucher? Schlüssele es nach Land und Stadt auf"
"Welche Geräte und Browser verwenden meine Nutzer?"
"Zeige mir die User Journey – welche Seiten besuchen Nutzer typischerweise nacheinander?"
Echtzeit-Überwachung
"Wie viele Personen sind gerade auf meiner Website? Welche Seiten sehen sie sich an?"
"Hat meine Website Probleme? Prüfe, ob der Traffic signifikant eingebrochen ist"
Inhalts- & Kampagnenanalyse
"Welche Blogbeiträge sollte ich aktualisieren? Zeige mir Artikel mit rückläufigem Traffic"
"Wie hat meine letzte E-Mail-Kampagne abgeschnitten? Verfolge Besucher über die Kampagnen-UTM"
"Vergleiche den Traffic von verschiedenen Social-Media-Plattformen"
Related MCP server: Umami MCP Server
Schnellstart
Option 1: Binärdatei herunterladen
Laden Sie das neueste Release für Ihre Plattform unter Releases herunter
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-serverOption 3: Go Install
go install github.com/Macawls/umami-mcp-server@latestInstalliert nach ~/go/bin/umami-mcp-server (oder $GOPATH/bin)
Einrichtung
Wählen Sie einen der beiden folgenden Ansätze basierend auf Ihrer Präferenz.
Remote (Keine Installation)
Eine gehostete Instanz ist unter https://umami-mcp.macawls.dev/mcp verfügbar. Verbinden Sie sich direkt von jedem MCP-Client, der HTTP-Transport unterstützt – keine Binärdatei oder Docker erforderlich.
Anmeldedaten werden über X-Umami-* Header bei der initialize-Anfrage übergeben.
Fügen Sie dies zu Ihrer Konfiguration hinzu (%APPDATA%\Claude\claude_desktop_config.json unter Windows, ~/Library/Application Support/Claude/claude_desktop_config.json unter 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"
}
}
}Fügen Sie dies zu .vscode/mcp.json hinzu:
{
"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/mcpFügen Sie dies zu .cursor/mcp.json hinzu:
{
"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"
}
}
}
}Fügen Sie dies zu ~/.codeium/windsurf/mcp_config.json hinzu:
{
"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"
}
}
}
}Fügen Sie dies zu opencode.json hinzu:
{
"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"
}
}
}
}Jeder MCP-Client, der Streamable HTTP unterstützt, kann sich mit https://umami-mcp.macawls.dev/mcp verbinden, wobei die Anmeldedaten in den Headern X-Umami-Host, X-Umami-Username und X-Umami-Password übergeben werden.
Lokal
Führen Sie die Binärdatei oder das Docker-Image lokal aus. Anmeldedaten werden über Umgebungsvariablen festgelegt.
Fügen Sie dies zu Ihrer Konfiguration hinzu (%APPDATA%\Claude\claude_desktop_config.json unter Windows, ~/Library/Application Support/Claude/claude_desktop_config.json unter 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"
}
}
}
}Erstellen Sie .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-serverFügen Sie dies zu .cursor/mcp.json hinzu:
{
"mcpServers": {
"umami": {
"command": "~/go/bin/umami-mcp-server",
"env": {
"UMAMI_URL": "https://your-umami-instance.com",
"UMAMI_USERNAME": "your-username",
"UMAMI_PASSWORD": "your-password"
}
}
}
}Fügen Sie dies zu ~/.codeium/windsurf/mcp_config.json hinzu:
{
"mcpServers": {
"umami": {
"command": "~/go/bin/umami-mcp-server",
"env": {
"UMAMI_URL": "https://your-umami-instance.com",
"UMAMI_USERNAME": "your-username",
"UMAMI_PASSWORD": "your-password"
}
}
}
}Fügen Sie dies zu Ihren Zed-Einstellungen unter assistant.mcp_servers hinzu:
{
"umami": {
"command": "~/go/bin/umami-mcp-server",
"env": {
"UMAMI_URL": "https://your-umami-instance.com",
"UMAMI_USERNAME": "your-username",
"UMAMI_PASSWORD": "your-password"
}
}
}Für Clients, die ein command-Feld verwenden (Claude Desktop, Cursor, etc.):
{
"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"
}
}
}
}Verfügbare Tools
Tool | Beschreibung |
| Alle Websites auflisten (rufen Sie dies zuerst auf, um Website-IDs zu erhalten) |
| Aggregierte Statistiken – Seitenaufrufe, Besucher, Absprungraten, Gesamtzeit |
| Seitenaufrufe und Sitzungsanzahl gruppiert nach Zeiteinheit |
| Aufschlüsselung nach Seite, Referrer, Browser, Betriebssystem, Gerät, Land, etc. |
| Aktuelle Anzahl aktiver Besucher in Echtzeit |
Konfiguration
Umgebungsvariablen
Variable | Standard | Beschreibung |
| erforderlich | Ihre Umami-Instanz-URL (verwenden Sie |
| erforderlich für selbstgehostet | Umami-Benutzername |
| erforderlich für selbstgehostet | Umami-Passwort |
| erforderlich für Umami Cloud | API-Schlüssel aus Ihrem Umami Cloud-Konto (Alternative zu Benutzername/Passwort) |
| Team-ID für teambasierte Setups | |
|
| Transportmodus ( |
|
| HTTP-Server-Port |
|
| Kommagetrennte CORS-erlaubte Ursprünge |
|
| Maximale gleichzeitige HTTP-Sitzungen |
Konfigurationsdatei
Anstatt Umgebungsvariablen zu verwenden, erstellen Sie eine config.yaml-Datei neben der Binärdatei:
umami_url: https://your-umami-instance.com
username: your-username
password: your-password
team_id: your-team-id # optionalFür Umami Cloud verwenden Sie stattdessen einen API-Schlüssel:
umami_url: https://api.umami.is
api_key: your-api-keyUmgebungsvariablen haben Vorrang vor der Konfigurationsdatei.
Umami Cloud
Umami Cloud (die gehostete Version unter cloud.umami.is) unterstützt keine Benutzername/Passwort-Authentifizierung. Verwenden Sie einen API-Schlüssel aus Ihren Umami Cloud-Kontoeinstellungen und setzen Sie UMAMI_URL=https://api.umami.is zusammen mit UMAMI_API_KEY=.... Senden Sie für den HTTP-Transport den Header X-Umami-Api-Key anstelle von X-Umami-Username/X-Umami-Password.
Team-Websites
Wenn Ihre Umami-Instanz Teams verwendet und Ihre Websites einem Team anstatt einzelnen Benutzern zugewiesen sind, gibt get_websites möglicherweise eine leere Liste zurück. Setzen Sie UMAMI_TEAM_ID, um Websites stattdessen von Ihrem Team abzurufen. Verwenden Sie für den HTTP-Transport den Header X-Umami-Team-Id.
Sie finden Ihre Team-ID in Ihrem Umami-Dashboard unter Einstellungen > Teams.
Selbst-Hosting (HTTP-Transport)
Der Server unterstützt Streamable HTTP für Remote-Bereitstellungen. Setzen Sie TRANSPORT=http, um einen /mcp-Endpunkt bereitzustellen:
TRANSPORT=http PORT=9999 ./umami-mcp-serverAnmeldedaten werden über X-Umami-* Header bei der initialize-Anfrage übergeben. Die Antwort enthält einen Mcp-Session-Id-Header für nachfolgende Anfragen.
Docker verwendet standardmäßig den HTTP-Modus:
docker run -p 8080:8080 ghcr.io/macawls/umami-mcp-serverAus Quellcode erstellen
git clone https://github.com/Macawls/umami-mcp-server.git
cd umami-mcp-server
go build -o umami-mcpFehlerbehebung
macOS-Binärdatei lässt sich nicht ausführen:
xattr -c umami-mcp-serverzum Entfernen der QuarantäneLinux-Binärdatei lässt sich nicht ausführen:
chmod +x umami-mcp-serverVerbindungsfehler: Überprüfen Sie, ob Ihre Umami-Instanz erreichbar ist und die Anmeldedaten korrekt sind
Tools werden nicht angezeigt: Überprüfen Sie Ihre MCP-Client-Protokolle und stellen Sie sicher, dass der Pfad zur Binärdatei absolut ist
Lizenz
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
- QuallaaOAuthcom.quallaa
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Analytics your AI agent can actually use. Track, experiment, and optimize via MCP.
- mcpOAuthai.butlerbrain
Persistent memory for AI assistants. Save once; recall from Claude, ChatGPT, or any MCP client.
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
- AlicenseCqualityBmaintenanceMCP 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 gradedqualityCmaintenanceMCP server for Umami Analytics that provides read-only tools to query website stats, events, sessions, reports, and more, enabling natural language analytics queries.12 npm3MIT