> ## Documentation Index
> Fetch the complete documentation index at: https://docs.momentra.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Cross-org upcoming event search (FREE, dual-auth).

> Billing: FREE, read-only. Accepts EITHER a ZeroClick-signed request OR an Authorization: Bearer <agent key>. No settlement.



## OpenAPI

````yaml /openapi.json get /api/v1/events
openapi: 3.1.0
info:
  title: Momentra Events — REST + MCP API
  version: 1.0.0
  description: >-
    Momentra Events exposes local family-event data two ways in ONE document:


    1. A conventional HTTP REST API under `/api/v1/*`, fronted by the ZeroClick
    storefront at `https://agents.momentra.org/zcj/{session}`. PATH NOTE: every
    REST request MUST include the full `/api/v1` prefix exactly as shown;
    dropping it returns 403 'Missing Authentication Token'. The `/api/v1` prefix
    is owned by the PATHS, not the base URL. REST auth: a ZeroClick-signed
    request (zc-signature) with a registered agent credential, or
    `Authorization: Bearer <agent key>` on read routes. REST billing: free
    routes do an identity check only; paid routes check allowance and settle via
    a `zc-usage` response header on the 200.


    2. A Model Context Protocol (MCP) server at `POST /mcp` on
    `https://mcp.momentra.org` — a single JSON-RPC 2.0 endpoint over Streamable
    HTTP/SSE. It is NOT REST: every capability is an MCP `tools/call` with a
    `name` + `arguments`, and the 24 tools are enumerated by `tools/list`. MCP
    auth is OAuth 2.1 + PKCE (CIMD); some tools work anonymously (noauth).
    Per-tool auth + cost are noted in each `Tool_*` schema. The `/mcp` path
    carries a per-path `servers` override (mcp.momentra.org); the REST paths use
    the storefront server.


    The two surfaces bill the same underlying `momentra-events` service through
    different channels (ZeroClick per-request units vs. prepaid Momentra
    credits).
  contact:
    name: Momentra
    url: https://momentra.org
servers:
  - url: https://agents.momentra.org/zcj/{session}
    description: >-
      REST: ZeroClick storefront (session-scoped base path) — how agents CALL
      the /api/v1 paths.
    variables:
      session:
        default: SESSION
        description: ZeroClick session token segment issued by the storefront.
security: []
tags:
  - name: search
    description: 'REST: free, identity-scoped discovery over the global index.'
  - name: events
    description: 'REST: read event/organization data.'
  - name: indexing
    description: 'REST: index an organization and poll the job.'
  - name: mcp
    description: 'MCP: the JSON-RPC tools endpoint (tools/list, tools/call).'
  - name: index
    description: 'MCP: add organizations'' calendars and poll crawl jobs.'
  - name: discover
    description: 'MCP: search and read events/organizations already in your scope.'
  - name: identity
    description: 'MCP: connected-account profile.'
  - name: brief
    description: 'MCP: the editorial include/exclude policy (one per account).'
  - name: matching
    description: 'MCP: brief-driven discovery of events and organizations.'
  - name: curation
    description: 'MCP: accept/reject overrides that feed matching.'
  - name: evaluation
    description: 'MCP: certify a single item against the brief.'
  - name: seed
    description: 'MCP: learn a brief from a trusted aggregator org.'
  - name: support
    description: 'MCP: report a data/crawl issue to the Momentra team.'
paths:
  /api/v1/events:
    get:
      tags:
        - events
      summary: Cross-org upcoming event search (FREE, dual-auth).
      description: >-
        Billing: FREE, read-only. Accepts EITHER a ZeroClick-signed request OR
        an Authorization: Bearer <agent key>. No settlement.
      operationId: listEvents
      parameters:
        - name: startDate
          in: query
          required: false
          schema:
            type: string
            format: date
        - name: endDate
          in: query
          required: false
          schema:
            type: string
            format: date
        - name: category
          in: query
          required: false
          schema:
            type: string
        - name: city
          in: query
          required: false
          schema:
            type: string
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 200
      responses:
        '200':
          description: Matching events.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventList'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    EventList:
      example:
        count: 1
        filters:
          startDate: '2026-10-04'
          endDate: '2026-10-31'
          category: null
          city: Hanover
        events:
          - title: Calligraphy Practice Meet-Up
            website: https://thehowe.libcal.com/event/16071917
            open_to_public: true
            rsvp_required: false
            more_info_website: null
            ticket_url: null
            startDate: '2026-10-04T12:00:00-04:00'
            endDate: '2026-10-04T13:30:00-04:00'
            duration: null
            eventStatus: EventScheduled
            attendanceMode: OfflineEventAttendanceMode
            address: 13 South Street, Hanover, NH 03755
            venue:
              name: Howe Library
              address: 13 South Street, Hanover, NH 03755
              latitude: null
              longitude: null
            organizer:
              name: Howe Library
              url: null
            performers:
              - name: Laura Di Piazza
            offers:
              - name: Admission
                price: 0
                priceCurrency: USD
                availability: InStock
                url: https://thehowe.libcal.com/event/16071917
            isAccessibleForFree: true
            cost: Free
            ticket_price: null
            schedule:
              type: recurring
              startDate: '2026-10-04T12:00:00-04:00'
              endDate: '2026-10-04T13:30:00-04:00'
              occurrences: []
              recurrence:
                pattern: monthly
                frequency: 1
                weekdays: null
                ordinal: null
                dayOfMonth: null
                resolvedZone: America/New_York
            description: >-
              A monthly informal calligraphy meet-up and social gathering for
              practicing calligraphy and lettering art, discussing tips, and
              working on calligraphy projects. All levels are welcome, no
              experience is required, and attendees should bring their own
              calligraphy and lettering supplies; the event is held in the
              Murray Room.
            image_url: >-
              https://d68g328n4ug0e.cloudfront.net/data/feat_img/5761/16063/1729525749.jpg
            categories:
              - Arts & Crafts
              - Community & Recreation
            event_id: '16071917'
            is_online: false
            _source:
              domain: howelibrary.org
              scrapedAt: '2026-10-03T23:24:30.797Z'
              scriptVersion: '1.0'
            _external: false
      type: object
      properties:
        count:
          type: integer
        filters:
          type: object
          properties:
            startDate:
              type: string
              nullable: true
            endDate:
              type: string
              nullable: true
            category:
              type: string
              nullable: true
            city:
              type: string
              nullable: true
        events:
          type: array
          items:
            $ref: '#/components/schemas/Event'
    Event:
      type: object
      description: >-
        Normalized event record. Fields appear only when available. Shared by
        REST and MCP responses.
      example:
        title: Calligraphy Practice Meet-Up
        description: >-
          A monthly informal calligraphy meet-up and social gathering for
          practicing calligraphy and lettering art, discussing tips, and working
          on calligraphy projects. All levels are welcome, no experience is
          required, and attendees should bring their own calligraphy and
          lettering supplies; the event is held in the Murray Room.
        website: https://thehowe.libcal.com/event/16071917
        more_info_website: null
        ticket_url: null
        open_to_public: true
        rsvp_required: false
        startDate: '2026-10-04T12:00:00-04:00'
        endDate: '2026-10-04T13:30:00-04:00'
        duration: null
        eventStatus: EventScheduled
        attendanceMode: OfflineEventAttendanceMode
        address: 13 South Street, Hanover, NH 03755
        venue:
          name: Howe Library
          address: 13 South Street, Hanover, NH 03755
          latitude: null
          longitude: null
        organizer:
          name: Howe Library
          url: null
        performers:
          - name: Laura Di Piazza
        offers:
          - name: Admission
            price: 0
            priceCurrency: USD
            availability: InStock
            url: https://thehowe.libcal.com/event/16071917
        isAccessibleForFree: true
        cost: Free
        ticket_price: null
        categories:
          - Arts & Crafts
          - Community & Recreation
        image_url: >-
          https://d68g328n4ug0e.cloudfront.net/data/feat_img/5761/16063/1729525749.jpg
        event_id: '16071917'
        is_online: false
        schedule:
          type: recurring
          startDate: '2026-10-04T12:00:00-04:00'
          endDate: '2026-10-04T13:30:00-04:00'
          occurrences: []
          recurrence:
            pattern: monthly
            frequency: 1
            weekdays: null
            ordinal: null
            dayOfMonth: null
            resolvedZone: America/New_York
      properties:
        title:
          type: string
        description:
          type: string
        startDate:
          type: string
          description: ISO 8601 with tz offset.
        endDate:
          type: string
          description: ISO 8601 with tz offset.
        venue:
          type: object
          properties:
            name:
              type:
                - string
                - 'null'
            address:
              type:
                - string
                - 'null'
        address:
          type: string
        city:
          type:
            - string
            - 'null'
        category:
          type:
            - string
            - 'null'
        isAccessibleForFree:
          type: boolean
        cost:
          type: string
        offers:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              price:
                type:
                  - number
                  - 'null'
              priceCurrency:
                type:
                  - string
                  - 'null'
              availability:
                type: string
        categories:
          type: array
          items:
            type: string
        url:
          type: string
          format: uri
          description: The event's canonical URL.
        website:
          type:
            - string
            - 'null'
          description: The event's own detail page on the org's site.
        ticket_url:
          type:
            - string
            - 'null'
          description: External ticketing/registration/RSVP page, when linked.
        more_info_website:
          type:
            - string
            - 'null'
          description: >-
            External organizer/venue info page. seed_brief uses an off-domain
            value here as the aggregator signal.
    Error:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
  responses:
    Unauthorized:
      description: >-
        Missing/invalid credential. Provide a ZeroClick-signed request or
        Authorization: Bearer <agent key>.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.