Umami · Capability

Umami Web Analytics

Web analytics workflow for tracking website performance, visitor behavior, and real-time data using Umami's privacy-first analytics platform.

Run with Naftiko UmamiAnalyticsWeb AnalyticsPrivacyDashboards

What You Can Do

GET
List websites — List all tracked websites
/v1/websites
GET
Get stats — Get website analytics statistics
/v1/websites/{websiteId}/stats
GET
Get metrics — Get metrics by dimension
/v1/websites/{websiteId}/metrics

MCP Tools

list-websites

List all websites being tracked in Umami

read-only
get-website-stats

Get summarized analytics statistics for a website including pageviews, visitors, visits, and bounce rate

read-only
get-website-pageviews

Get pageview time series data for a website bucketed by time unit

read-only
get-website-metrics

Get analytics metrics broken down by a dimension such as URL, browser, country, device, or referrer

read-only
get-active-visitors

Get the number of visitors currently active on a website

read-only
list-sessions

List visitor sessions for a website with browser, OS, device, and country details

read-only
list-teams

List all teams in Umami

read-only

Capability Spec

web-analytics.yaml Raw ↑
naftiko: "1.0.0-alpha1"

info:
  label: "Umami Web Analytics"
  description: "Web analytics workflow for tracking website performance, visitor behavior, and real-time data using Umami's privacy-first analytics platform."
  tags:
    - Umami
    - Analytics
    - Web Analytics
    - Privacy
    - Dashboards
  created: "2026-05-03"
  modified: "2026-05-03"
  personas:
    - Marketing Analyst
    - Web Developer
    - Site Owner
    - Data Analyst

imports:
  - url: shared/umami.yaml
    namespace: umami

capability:
  exposes:
    - type: rest
      port: 8080
      namespace: web-analytics-api
      resources:
        - path: /v1/websites
          name: websites
          description: "Website listings"
          operations:
            - method: GET
              name: list-websites
              description: "List all tracked websites"
              call: "umami.list-websites"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/websites/{websiteId}/stats
          name: stats
          description: "Website statistics"
          operations:
            - method: GET
              name: get-stats
              description: "Get website analytics statistics"
              call: "umami.get-website-stats"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/websites/{websiteId}/metrics
          name: metrics
          description: "Website metrics by dimension"
          operations:
            - method: GET
              name: get-metrics
              description: "Get metrics by dimension"
              call: "umami.get-website-metrics"
              outputParameters:
                - type: object
                  mapping: "$."
    - type: mcp
      port: 9080
      namespace: web-analytics-mcp
      transport: http
      tools:
        - name: list-websites
          description: "List all websites being tracked in Umami"
          hints:
            readOnly: true
            openWorld: true
          call: "umami.list-websites"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-website-stats
          description: "Get summarized analytics statistics for a website including pageviews, visitors, visits, and bounce rate"
          hints:
            readOnly: true
            openWorld: true
          call: "umami.get-website-stats"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-website-pageviews
          description: "Get pageview time series data for a website bucketed by time unit"
          hints:
            readOnly: true
            openWorld: true
          call: "umami.get-website-pageviews"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-website-metrics
          description: "Get analytics metrics broken down by a dimension such as URL, browser, country, device, or referrer"
          hints:
            readOnly: true
            openWorld: true
          call: "umami.get-website-metrics"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-active-visitors
          description: "Get the number of visitors currently active on a website"
          hints:
            readOnly: true
            openWorld: true
          call: "umami.get-active-visitors"
          outputParameters:
            - type: object
              mapping: "$."
        - name: list-sessions
          description: "List visitor sessions for a website with browser, OS, device, and country details"
          hints:
            readOnly: true
            openWorld: true
          call: "umami.list-sessions"
          outputParameters:
            - type: object
              mapping: "$."
        - name: list-teams
          description: "List all teams in Umami"
          hints:
            readOnly: true
            openWorld: true
          call: "umami.list-teams"
          outputParameters:
            - type: object
              mapping: "$."