naftiko: 1.0.0-alpha2 info: label: Upvest Investment API — Positions description: 'Upvest Investment API — Positions. 2 operations. Lead operation: Upvest List positions. Self-contained Naftiko capability covering one Upvest business surface.' tags: - Upvest - Positions created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: UPVEST_API_KEY: UPVEST_API_KEY capability: consumes: - type: http namespace: investment-positions baseUri: https://api.upvest.co description: Upvest Investment API — Positions business capability. Self-contained, no shared references. resources: - name: accounts-account_id-positions path: /accounts/{account_id}/positions operations: - name: listpositions method: GET description: Upvest List positions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: accounts-account_id-positions-position_id path: /accounts/{account_id}/positions/{position_id} operations: - name: retrieveposition method: GET description: Upvest Retrieve a position outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.UPVEST_API_KEY}}' exposes: - type: rest namespace: investment-positions-rest port: 8080 description: REST adapter for Upvest Investment API — Positions. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/accounts/{account-id}/positions name: accounts-account-id-positions description: REST surface for accounts-account_id-positions. operations: - method: GET name: listpositions description: Upvest List positions call: investment-positions.listpositions outputParameters: - type: object mapping: $. - path: /v1/accounts/{account-id}/positions/{position-id} name: accounts-account-id-positions-position-id description: REST surface for accounts-account_id-positions-position_id. operations: - method: GET name: retrieveposition description: Upvest Retrieve a position call: investment-positions.retrieveposition outputParameters: - type: object mapping: $. - type: mcp namespace: investment-positions-mcp port: 9090 transport: http description: MCP adapter for Upvest Investment API — Positions. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: upvest-list-positions description: Upvest List positions hints: readOnly: true destructive: false idempotent: true call: investment-positions.listpositions outputParameters: - type: object mapping: $. - name: upvest-retrieve-position description: Upvest Retrieve a position hints: readOnly: true destructive: false idempotent: true call: investment-positions.retrieveposition outputParameters: - type: object mapping: $.