naftiko: 1.0.0-alpha2 info: label: Envestnet Aggregation APIs — Holdings description: 'Envestnet Aggregation APIs — Holdings. 5 operations. Lead operation: Envestnet Get Holdings. Self-contained Naftiko capability covering one Envestnet business surface.' tags: - Envestnet - Holdings created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ENVESTNET_API_KEY: ENVESTNET_API_KEY capability: consumes: - type: http namespace: account-aggregation-holdings baseUri: '' description: Envestnet Aggregation APIs — Holdings business capability. Self-contained, no shared references. resources: - name: holdings path: /holdings operations: - name: getholdings method: GET description: Envestnet Get Holdings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: accountId in: query type: string description: Comma separated accountId - name: assetClassification.classificationType in: query type: string description: e.g. Country, Sector, etc. - name: classificationValue in: query type: string description: e.g. US - name: include in: query type: string description: assetClassification - name: providerAccountId in: query type: string description: providerAccountId - name: addholding method: POST description: Envestnet Add Holding outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: holdings-assetClassificationList path: /holdings/assetClassificationList operations: - name: getassetclassificationlist method: GET description: Envestnet Get Asset Classification List outputRawFormat: json outputParameters: - name: result type: object value: $. - name: holdings-holdingTypeList path: /holdings/holdingTypeList operations: - name: getholdingtypelist method: GET description: Envestnet Get Holding Type List outputRawFormat: json outputParameters: - name: result type: object value: $. - name: holdings-securities path: /holdings/securities operations: - name: getsecurities method: GET description: Envestnet Get Security Details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: holdingId in: query type: string description: Comma separated holdingId exposes: - type: rest namespace: account-aggregation-holdings-rest port: 8080 description: REST adapter for Envestnet Aggregation APIs — Holdings. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/holdings name: holdings description: REST surface for holdings. operations: - method: GET name: getholdings description: Envestnet Get Holdings call: account-aggregation-holdings.getholdings with: accountId: rest.accountId assetClassification.classificationType: rest.assetClassification.classificationType classificationValue: rest.classificationValue include: rest.include providerAccountId: rest.providerAccountId outputParameters: - type: object mapping: $. - method: POST name: addholding description: Envestnet Add Holding call: account-aggregation-holdings.addholding with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/holdings/assetclassificationlist name: holdings-assetclassificationlist description: REST surface for holdings-assetClassificationList. operations: - method: GET name: getassetclassificationlist description: Envestnet Get Asset Classification List call: account-aggregation-holdings.getassetclassificationlist outputParameters: - type: object mapping: $. - path: /v1/holdings/holdingtypelist name: holdings-holdingtypelist description: REST surface for holdings-holdingTypeList. operations: - method: GET name: getholdingtypelist description: Envestnet Get Holding Type List call: account-aggregation-holdings.getholdingtypelist outputParameters: - type: object mapping: $. - path: /v1/holdings/securities name: holdings-securities description: REST surface for holdings-securities. operations: - method: GET name: getsecurities description: Envestnet Get Security Details call: account-aggregation-holdings.getsecurities with: holdingId: rest.holdingId outputParameters: - type: object mapping: $. - type: mcp namespace: account-aggregation-holdings-mcp port: 9090 transport: http description: MCP adapter for Envestnet Aggregation APIs — Holdings. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: envestnet-get-holdings description: Envestnet Get Holdings hints: readOnly: true destructive: false idempotent: true call: account-aggregation-holdings.getholdings with: accountId: tools.accountId assetClassification.classificationType: tools.assetClassification.classificationType classificationValue: tools.classificationValue include: tools.include providerAccountId: tools.providerAccountId outputParameters: - type: object mapping: $. - name: envestnet-add-holding description: Envestnet Add Holding hints: readOnly: false destructive: false idempotent: false call: account-aggregation-holdings.addholding with: body: tools.body outputParameters: - type: object mapping: $. - name: envestnet-get-asset-classification-list description: Envestnet Get Asset Classification List hints: readOnly: true destructive: false idempotent: true call: account-aggregation-holdings.getassetclassificationlist outputParameters: - type: object mapping: $. - name: envestnet-get-holding-type-list description: Envestnet Get Holding Type List hints: readOnly: true destructive: false idempotent: true call: account-aggregation-holdings.getholdingtypelist outputParameters: - type: object mapping: $. - name: envestnet-get-security-details description: Envestnet Get Security Details hints: readOnly: true destructive: false idempotent: true call: account-aggregation-holdings.getsecurities with: holdingId: tools.holdingId outputParameters: - type: object mapping: $.