naftiko: 1.0.0-alpha2 info: label: TradeStation API — Accounts description: 'TradeStation API — Accounts. 7 operations. Lead operation: Get accounts. Self-contained Naftiko capability covering one Tradestation business surface.' tags: - Tradestation - Accounts created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TRADESTATION_API_KEY: TRADESTATION_API_KEY capability: consumes: - type: http namespace: tradestation-accounts baseUri: https://api.tradestation.com description: TradeStation API — Accounts business capability. Self-contained, no shared references. resources: - name: v3-brokerage-accounts path: /v3/brokerage/accounts operations: - name: getaccounts method: GET description: Get accounts outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-brokerage-accounts-accountIds-balances path: /v3/brokerage/accounts/{accountIds}/balances operations: - name: getbalances method: GET description: Get account balances outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-brokerage-accounts-accountIds-bodbalances path: /v3/brokerage/accounts/{accountIds}/bodbalances operations: - name: getbalancesbod method: GET description: Get beginning-of-day balances outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-brokerage-accounts-accountIds-historicalorders path: /v3/brokerage/accounts/{accountIds}/historicalorders operations: - name: gethistoricalorders method: GET description: Get historical orders outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: since in: query type: string description: Filter orders since this date. Format is MM-DD-YYYY. - name: pageSize in: query type: integer description: Number of orders per page. - name: pageNum in: query type: integer description: Page number for pagination. - name: v3-brokerage-accounts-accountIds-orders path: /v3/brokerage/accounts/{accountIds}/orders operations: - name: getorders method: GET description: Get account orders outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-brokerage-accounts-accountIds-positions path: /v3/brokerage/accounts/{accountIds}/positions operations: - name: getpositions method: GET description: Get account positions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: v3-brokerage-accounts-accountId-wallets path: /v3/brokerage/accounts/{accountId}/wallets operations: - name: getwallets method: GET description: Get cryptocurrency wallets outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: accountId in: path type: string description: The account identifier for wallet retrieval. required: true authentication: type: bearer token: '{{env.TRADESTATION_API_KEY}}' exposes: - type: rest namespace: tradestation-accounts-rest port: 8080 description: REST adapter for TradeStation API — Accounts. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v3/brokerage/accounts name: v3-brokerage-accounts description: REST surface for v3-brokerage-accounts. operations: - method: GET name: getaccounts description: Get accounts call: tradestation-accounts.getaccounts outputParameters: - type: object mapping: $. - path: /v1/v3/brokerage/accounts/{accountids}/balances name: v3-brokerage-accounts-accountids-balances description: REST surface for v3-brokerage-accounts-accountIds-balances. operations: - method: GET name: getbalances description: Get account balances call: tradestation-accounts.getbalances outputParameters: - type: object mapping: $. - path: /v1/v3/brokerage/accounts/{accountids}/bodbalances name: v3-brokerage-accounts-accountids-bodbalances description: REST surface for v3-brokerage-accounts-accountIds-bodbalances. operations: - method: GET name: getbalancesbod description: Get beginning-of-day balances call: tradestation-accounts.getbalancesbod outputParameters: - type: object mapping: $. - path: /v1/v3/brokerage/accounts/{accountids}/historicalorders name: v3-brokerage-accounts-accountids-historicalorders description: REST surface for v3-brokerage-accounts-accountIds-historicalorders. operations: - method: GET name: gethistoricalorders description: Get historical orders call: tradestation-accounts.gethistoricalorders with: since: rest.since pageSize: rest.pageSize pageNum: rest.pageNum outputParameters: - type: object mapping: $. - path: /v1/v3/brokerage/accounts/{accountids}/orders name: v3-brokerage-accounts-accountids-orders description: REST surface for v3-brokerage-accounts-accountIds-orders. operations: - method: GET name: getorders description: Get account orders call: tradestation-accounts.getorders outputParameters: - type: object mapping: $. - path: /v1/v3/brokerage/accounts/{accountids}/positions name: v3-brokerage-accounts-accountids-positions description: REST surface for v3-brokerage-accounts-accountIds-positions. operations: - method: GET name: getpositions description: Get account positions call: tradestation-accounts.getpositions outputParameters: - type: object mapping: $. - path: /v1/v3/brokerage/accounts/{accountid}/wallets name: v3-brokerage-accounts-accountid-wallets description: REST surface for v3-brokerage-accounts-accountId-wallets. operations: - method: GET name: getwallets description: Get cryptocurrency wallets call: tradestation-accounts.getwallets with: accountId: rest.accountId outputParameters: - type: object mapping: $. - type: mcp namespace: tradestation-accounts-mcp port: 9090 transport: http description: MCP adapter for TradeStation API — Accounts. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-accounts description: Get accounts hints: readOnly: true destructive: false idempotent: true call: tradestation-accounts.getaccounts outputParameters: - type: object mapping: $. - name: get-account-balances description: Get account balances hints: readOnly: true destructive: false idempotent: true call: tradestation-accounts.getbalances outputParameters: - type: object mapping: $. - name: get-beginning-day-balances description: Get beginning-of-day balances hints: readOnly: true destructive: false idempotent: true call: tradestation-accounts.getbalancesbod outputParameters: - type: object mapping: $. - name: get-historical-orders description: Get historical orders hints: readOnly: true destructive: false idempotent: true call: tradestation-accounts.gethistoricalorders with: since: tools.since pageSize: tools.pageSize pageNum: tools.pageNum outputParameters: - type: object mapping: $. - name: get-account-orders description: Get account orders hints: readOnly: true destructive: false idempotent: true call: tradestation-accounts.getorders outputParameters: - type: object mapping: $. - name: get-account-positions description: Get account positions hints: readOnly: true destructive: false idempotent: true call: tradestation-accounts.getpositions outputParameters: - type: object mapping: $. - name: get-cryptocurrency-wallets description: Get cryptocurrency wallets hints: readOnly: true destructive: false idempotent: true call: tradestation-accounts.getwallets with: accountId: tools.accountId outputParameters: - type: object mapping: $.