Charles Schwab · Capability

Charles Schwab Market Data API — Market Hours

Charles Schwab Market Data API — Market Hours. 2 operations. Lead operation: Get market hours for one or more markets. Self-contained Naftiko capability covering one Charles Schwab business surface.

Run with Naftiko Charles SchwabMarket Hours

What You Can Do

GET
Getmarkethours — Get market hours for one or more markets
/v1/markets
GET
Getmarkethoursformarket — Get market hours for a single market
/v1/markets/{market-id}

MCP Tools

get-market-hours-one-more

Get market hours for one or more markets

read-only idempotent
get-market-hours-single-market

Get market hours for a single market

read-only idempotent

Capability Spec

market-data-market-hours.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Charles Schwab Market Data API — Market Hours
  description: 'Charles Schwab Market Data API — Market Hours. 2 operations. Lead operation: Get market hours for one or more
    markets. Self-contained Naftiko capability covering one Charles Schwab business surface.'
  tags:
  - Charles Schwab
  - Market Hours
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    CHARLES_SCHWAB_API_KEY: CHARLES_SCHWAB_API_KEY
capability:
  consumes:
  - type: http
    namespace: market-data-market-hours
    baseUri: https://api.schwabapi.com/marketdata/v1
    description: Charles Schwab Market Data API — Market Hours business capability. Self-contained, no shared references.
    resources:
    - name: markets
      path: /markets
      operations:
      - name: getmarkethours
        method: GET
        description: Get market hours for one or more markets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: markets
          in: query
          type: string
          required: true
        - name: date
          in: query
          type: string
    - name: markets-market_id
      path: /markets/{market_id}
      operations:
      - name: getmarkethoursformarket
        method: GET
        description: Get market hours for a single market
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: market_id
          in: path
          type: string
          required: true
        - name: date
          in: query
          type: string
    authentication:
      type: bearer
      token: '{{env.CHARLES_SCHWAB_API_KEY}}'
  exposes:
  - type: rest
    namespace: market-data-market-hours-rest
    port: 8080
    description: REST adapter for Charles Schwab Market Data API — Market Hours. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/markets
      name: markets
      description: REST surface for markets.
      operations:
      - method: GET
        name: getmarkethours
        description: Get market hours for one or more markets
        call: market-data-market-hours.getmarkethours
        with:
          markets: rest.markets
          date: rest.date
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/markets/{market-id}
      name: markets-market-id
      description: REST surface for markets-market_id.
      operations:
      - method: GET
        name: getmarkethoursformarket
        description: Get market hours for a single market
        call: market-data-market-hours.getmarkethoursformarket
        with:
          market_id: rest.market_id
          date: rest.date
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: market-data-market-hours-mcp
    port: 9090
    transport: http
    description: MCP adapter for Charles Schwab Market Data API — Market Hours. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: get-market-hours-one-more
      description: Get market hours for one or more markets
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: market-data-market-hours.getmarkethours
      with:
        markets: tools.markets
        date: tools.date
      outputParameters:
      - type: object
        mapping: $.
    - name: get-market-hours-single-market
      description: Get market hours for a single market
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: market-data-market-hours.getmarkethoursformarket
      with:
        market_id: tools.market_id
        date: tools.date
      outputParameters:
      - type: object
        mapping: $.