Google Analytics · Capability

Google Analytics Measurement Protocol (GA4) — Events

Google Analytics Measurement Protocol (GA4) — Events. 1 operations. Lead operation: Google Analytics Send Events to Google Analytics. Self-contained Naftiko capability covering one Google Analytics business surface.

Run with Naftiko Google AnalyticsEvents

What You Can Do

POST
Collectevents — Google Analytics Send Events to Google Analytics
/v1/collect

MCP Tools

google-analytics-send-events-google

Google Analytics Send Events to Google Analytics

Capability Spec

measurement-protocol-events.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Google Analytics Measurement Protocol (GA4) — Events
  description: 'Google Analytics Measurement Protocol (GA4) — Events. 1 operations. Lead operation: Google Analytics Send
    Events to Google Analytics. Self-contained Naftiko capability covering one Google Analytics business surface.'
  tags:
  - Google Analytics
  - Events
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GOOGLE_ANALYTICS_API_KEY: GOOGLE_ANALYTICS_API_KEY
capability:
  consumes:
  - type: http
    namespace: measurement-protocol-events
    baseUri: https://www.google-analytics.com/mp
    description: Google Analytics Measurement Protocol (GA4) — Events business capability. Self-contained, no shared references.
    resources:
    - name: collect
      path: /collect
      operations:
      - name: collectevents
        method: POST
        description: Google Analytics Send Events to Google Analytics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: api_secret
          in: query
          type: string
          description: The API Secret generated in the Google Analytics UI. Found under Admin > Data Streams > Choose your
            stream > Measurement Protocol > Create.
          required: true
        - name: measurement_id
          in: query
          type: string
          description: The Measurement ID for a web data stream. Required for web streams. Found in the Google Analytics UI
            under Admin > Data Streams.
        - name: firebase_app_id
          in: query
          type: string
          description: The Firebase App ID for an app data stream. Required for app streams. Found in the Firebase console
            under Project Settings.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
  exposes:
  - type: rest
    namespace: measurement-protocol-events-rest
    port: 8080
    description: REST adapter for Google Analytics Measurement Protocol (GA4) — Events. One Spectral-compliant resource per
      consumed operation, prefixed with /v1.
    resources:
    - path: /v1/collect
      name: collect
      description: REST surface for collect.
      operations:
      - method: POST
        name: collectevents
        description: Google Analytics Send Events to Google Analytics
        call: measurement-protocol-events.collectevents
        with:
          api_secret: rest.api_secret
          measurement_id: rest.measurement_id
          firebase_app_id: rest.firebase_app_id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: measurement-protocol-events-mcp
    port: 9090
    transport: http
    description: MCP adapter for Google Analytics Measurement Protocol (GA4) — Events. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: google-analytics-send-events-google
      description: Google Analytics Send Events to Google Analytics
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: measurement-protocol-events.collectevents
      with:
        api_secret: tools.api_secret
        measurement_id: tools.measurement_id
        firebase_app_id: tools.firebase_app_id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.