Storm MCP Gateway Activity API

The GatewayActivity API from Storm MCP — 1 operation(s) for gatewayactivity.

Operations 1

GET /api/v1/analytics/gateway-activity Gets gateway activity across all users for the specified date range #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/stormmcp:stormmcp-gatewayactivity-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

stormmcp-gatewayactivity-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: MCP Gateway Gateway Activity API
  description: API for MCP Gateway operations
  version: v1
servers:
- url: https://dev.stormmcp.ai/
tags:
- name: GatewayActivity
paths:
  /api/v1/analytics/gateway-activity:
    get:
      tags:
      - GatewayActivity
      summary: Gets gateway activity across all users for the specified date range
      parameters:
      - name: from
        in: query
        description: Start date (defaults to 24 hours ago).
        schema:
          type: string
          format: date-time
      - name: to
        in: query
        description: End date (defaults to now).
        schema:
          type: string
          format: date-time
      - name: granularity
        in: query
        description: Time period granularity (hourly, daily, weekly, monthly).
        schema:
          type: string
          default: daily
      - name: methods
        in: query
        description: Comma-separated list of MCP methods to filter by (optional).
        schema:
          type: string
      - name: includePreviousPeriod
        in: query
        description: Whether to include previous period metrics for delta comparison.
        schema:
          type: boolean
          default: false
      - name: includeSessions
        in: query
        description: 'Whether to populate `Sessions` with the per-session list. Off by default: the list is

          unbounded (megabytes for a six-month range) and the summary and period breakdown already carry

          every aggregate.'
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/AnalyticsResponseOfGatewayActivityResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AnalyticsResponseOfGatewayActivityResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/AnalyticsResponseOfGatewayActivityResponse'
            text/csv:
              schema:
                $ref: '#/components/schemas/AnalyticsResponseOfGatewayActivityResponse'
            application/csv:
              schema:
                $ref: '#/components/schemas/AnalyticsResponseOfGatewayActivityResponse'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '403':
          description: Forbidden
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            text/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
            application/csv:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
      operationId: getApiV1AnalyticsGatewayActivity
      x-operation-id-source: derived
components:
  schemas:
    GatewayActivityPeriodGateway:
      type: object
      properties:
        gatewayId:
          type: string
          description: Gets or sets the gateway configuration ID. Guid Guid.Empty for a row-less session.
          format: uuid
        sessionType:
          oneOf:
          - type: 'null'
          - description: 'Gets or sets the session type of a row-less session: set only when Guid GatewayActivityPeriodGateway.GatewayId is

              Guid Guid.Empty, where it tells McpSessionType.Dynamic from

              McpSessionType.Ephemeral (null there means a legacy row). Null for a resolved gateway.'
            $ref: '#/components/schemas/McpSessionType'
        gatewayName:
          type: string
          description: Gets or sets the gateway display name, as Dictionary<string, int> GatewayActivityPeriod.GatewayCounts keys it.
        count:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of request log entries in the period.
          format: int32
      description: Request count for one gateway in one activity period, with the gateway's identity (MCPG-2095).
    GatewayActivitySummary:
      type: object
      properties:
        totalActiveSessions:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the total number of active sessions in the period.
          format: int32
        uniqueUsers:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of unique users with sessions.
          format: int32
        uniqueGateways:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of unique gateway configurations used.
          format: int32
        totalGatewaysAvailable:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the total number of gateway configurations available.
          format: int32
        averageSessionDurationMinutes:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the average session duration in minutes.
          format: double
        methodCounts:
          type: object
          additionalProperties:
            pattern: ^-?(?:0|[1-9]\d*)$
            type:
            - integer
            - string
            format: int32
          description: Gets or sets the methods called during this period.
        assetUsageCounts:
          type: object
          additionalProperties:
            pattern: ^-?(?:0|[1-9]\d*)$
            type:
            - integer
            - string
            format: int32
          description: Gets or sets the specific tools/assets called during this period (when method is tools/call, prompts/get, etc.).
        totalCalls:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the total number of request log entries in the period.
          format: int32
        failedCalls:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of failed calls (error or denied status).
          format: int32
        errorRate:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the error rate as a decimal (0.0 to 1.0).
          format: double
        p50LatencyMs:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the 50th percentile latency in milliseconds.
          format: double
        p95LatencyMs:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the 95th percentile latency in milliseconds.
          format: double
        p99LatencyMs:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the 99th percentile latency in milliseconds.
          format: double
        previousPeriodTotalCalls:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - 'null'
          - integer
          - string
          description: Gets or sets the total calls in the previous period (for delta comparison). Null if not requested.
          format: int32
        previousPeriodErrorRate:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - 'null'
          - number
          - string
          description: Gets or sets the error rate in the previous period. Null if not requested.
          format: double
        previousPeriodP95LatencyMs:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - 'null'
          - number
          - string
          description: Gets or sets the P95 latency in the previous period in milliseconds. Null if not requested.
          format: double
        topTools:
          type: array
          items:
            $ref: '#/components/schemas/TopToolDetail'
          description: Gets or sets the detailed top tools list with per-tool metrics.
      description: Summary statistics for gateway activity.
    GatewayActivityResponse:
      type: object
      properties:
        summary:
          description: Gets or sets the summary statistics for the period.
          $ref: '#/components/schemas/GatewayActivitySummary'
        sessions:
          type: array
          items:
            $ref: '#/components/schemas/GatewaySessionDetail'
          description: Gets or sets the detailed session information.
        activityByPeriod:
          type: array
          items:
            $ref: '#/components/schemas/GatewayActivityPeriod'
          description: Gets or sets the activity breakdown by time period based on granularity.
      description: Response model for gateway activity analytics.
    GatewaySessionDetail:
      type: object
      properties:
        sessionId:
          type: string
          description: Gets or sets the session ID.
        gatewayId:
          type: string
          description: Gets or sets the gateway configuration ID.
          format: uuid
        userId:
          type: string
          description: Gets or sets the user ID.
        registeredAt:
          type: string
          description: Gets or sets when the session was registered.
          format: date-time
        lastActiveAt:
          type: string
          description: Gets or sets when the session was last active.
          format: date-time
        durationMinutes:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the session duration in minutes.
          format: double
        isActive:
          type: boolean
          description: Gets or sets a value indicating whether the session is currently active.
      description: Detailed information about a gateway session.
    ProblemDetails:
      type: object
      properties:
        type:
          type:
          - 'null'
          - string
        title:
          type:
          - 'null'
          - string
        status:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - 'null'
          - integer
          - string
          format: int32
        detail:
          type:
          - 'null'
          - string
        instance:
          type:
          - 'null'
          - string
    GatewayActivityPeriod:
      type: object
      properties:
        periodStart:
          type: string
          description: Gets or sets the period start time.
          format: date-time
        periodEnd:
          type: string
          description: Gets or sets the period end time.
          format: date-time
        activeSessions:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of active sessions in this period.
          format: int32
        uniqueUsers:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of unique users in this period.
          format: int32
        methodCounts:
          type: object
          additionalProperties:
            pattern: ^-?(?:0|[1-9]\d*)$
            type:
            - integer
            - string
            format: int32
          description: Gets or sets the methods called in this period.
        assetUsageCounts:
          type: object
          additionalProperties:
            pattern: ^-?(?:0|[1-9]\d*)$
            type:
            - integer
            - string
            format: int32
          description: Gets or sets the specific assets/tools used in this period.
        gatewayCounts:
          type: object
          additionalProperties:
            pattern: ^-?(?:0|[1-9]\d*)$
            type:
            - integer
            - string
            format: int32
          description: Gets or sets the per-gateway request counts in this period, keyed by gateway display name.
        gatewayBreakdown:
          type: array
          items:
            $ref: '#/components/schemas/GatewayActivityPeriodGateway'
          description: 'Gets or sets the per-gateway request counts in this period with the gateway''s identity carried

            structurally (MCPG-2095), so a caller can label and key a series without matching

            Dictionary<string, int> GatewayActivityPeriod.GatewayCounts display-name text. One entry per (gateway id, row-less session type);

            carries the same rows as Dictionary<string, int> GatewayActivityPeriod.GatewayCounts, which is kept for callers that predate it.'
        totalCalls:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the total number of request log entries in this period.
          format: int32
        failedCalls:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of failed calls in this period.
          format: int32
        errorRate:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the error rate in this period as a decimal (0.0 to 1.0).
          format: double
      description: Activity data for a specific time period.
    AnalyticsResponseOfGatewayActivityResponse:
      type: object
      properties:
        data:
          description: Gets or sets the analytics data.
          $ref: '#/components/schemas/GatewayActivityResponse'
        metadata:
          description: Gets or sets metadata about the response.
          $ref: '#/components/schemas/AnalyticsMetadata'
        fromCache:
          type: boolean
          description: Gets or sets a value indicating whether this data was cached.
        cacheAgeMinutes:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - 'null'
          - integer
          - string
          description: Gets or sets the cache age in minutes.
          format: int32
      description: Generic wrapper for analytics responses.
    McpSessionType:
      type: integer
    TopToolDetail:
      type: object
      properties:
        toolName:
          type: string
          description: Gets or sets the tool/asset name.
        serverName:
          type:
          - 'null'
          - string
          description: Gets or sets the upstream MCP server name.
        gatewayName:
          type:
          - 'null'
          - string
          description: Gets or sets the gateway name.
        gatewayId:
          type: string
          description: Gets or sets the gateway configuration ID.
          format: uuid
        sessionType:
          oneOf:
          - type: 'null'
          - description: 'Gets or sets the session type of a row-less session (MCPG-2042): set only when Guid TopToolDetail.GatewayId is

              Guid Guid.Empty, where it is the structural signal that tells a

              McpSessionType.Dynamic tool from an McpSessionType.Ephemeral one (and null

              there means a legacy row). Rows are grouped by (tool, gateway, row-less session type), so those two are

              separate rows while a resolved gateway keeps one row per tool whichever entry point served it, and carries

              null here.'
            $ref: '#/components/schemas/McpSessionType'
        callCount:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the total number of calls to this tool.
          format: int32
        errorCount:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the number of calls that resulted in an error or denied status.
          format: int32
        avgLatencyMs:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
          - number
          - string
          description: Gets or sets the average latency in milliseconds for calls to this tool.
          format: double
      description: Detailed information about a top tool by usage.
    AnalyticsMetadata:
      type: object
      properties:
        generatedAt:
          type: string
          description: Gets or sets when this data was generated.
          format: date-time
        dataSource:
          type: string
          description: Gets or sets the data source.
        queryParameters:
          type: object
          additionalProperties:
            type: string
          description: Gets or sets the query parameters used.
        warnings:
          type: array
          items:
            type: string
          description: Gets or sets any warnings or notes about the data.
        processingTimeMs:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
          - integer
          - string
          description: Gets or sets the processing time in milliseconds.
          format: int64
      description: Metadata about analytics response.