Etrade · Capability

E*TRADE API — Market

E*TRADE API — Market. 2 operations. Lead operation: Look up option chains. Self-contained Naftiko capability covering one Etrade business surface.

Run with Naftiko EtradeMarket

What You Can Do

GET
Getoptionchains — Look up option chains
/v1/market/optionchains
GET
Getquotes — Get quotes
/v1/market/quote/{symbols}

MCP Tools

look-up-option-chains

Look up option chains

read-only idempotent
get-quotes

Get quotes

read-only idempotent

Capability Spec

etrade-market.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: E*TRADE API — Market
  description: 'E*TRADE API — Market. 2 operations. Lead operation: Look up option chains. Self-contained Naftiko capability
    covering one Etrade business surface.'
  tags:
  - Etrade
  - Market
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ETRADE_API_KEY: ETRADE_API_KEY
capability:
  consumes:
  - type: http
    namespace: etrade-market
    baseUri: https://api.etrade.com/v1
    description: E*TRADE API — Market business capability. Self-contained, no shared references.
    resources:
    - name: market-optionchains
      path: /market/optionchains
      operations:
      - name: getoptionchains
        method: GET
        description: Look up option chains
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: symbol
          in: query
          type: string
          required: true
        - name: expiryYear
          in: query
          type: integer
        - name: expiryMonth
          in: query
          type: integer
        - name: expiryDay
          in: query
          type: integer
    - name: market-quote-symbols
      path: /market/quote/{symbols}
      operations:
      - name: getquotes
        method: GET
        description: Get quotes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: symbols
          in: path
          type: string
          required: true
        - name: detailFlag
          in: query
          type: string
  exposes:
  - type: rest
    namespace: etrade-market-rest
    port: 8080
    description: REST adapter for E*TRADE API — Market. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/market/optionchains
      name: market-optionchains
      description: REST surface for market-optionchains.
      operations:
      - method: GET
        name: getoptionchains
        description: Look up option chains
        call: etrade-market.getoptionchains
        with:
          symbol: rest.symbol
          expiryYear: rest.expiryYear
          expiryMonth: rest.expiryMonth
          expiryDay: rest.expiryDay
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/market/quote/{symbols}
      name: market-quote-symbols
      description: REST surface for market-quote-symbols.
      operations:
      - method: GET
        name: getquotes
        description: Get quotes
        call: etrade-market.getquotes
        with:
          symbols: rest.symbols
          detailFlag: rest.detailFlag
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: etrade-market-mcp
    port: 9090
    transport: http
    description: MCP adapter for E*TRADE API — Market. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: look-up-option-chains
      description: Look up option chains
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: etrade-market.getoptionchains
      with:
        symbol: tools.symbol
        expiryYear: tools.expiryYear
        expiryMonth: tools.expiryMonth
        expiryDay: tools.expiryDay
      outputParameters:
      - type: object
        mapping: $.
    - name: get-quotes
      description: Get quotes
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: etrade-market.getquotes
      with:
        symbols: tools.symbols
        detailFlag: tools.detailFlag
      outputParameters:
      - type: object
        mapping: $.