naftiko: 1.0.0-alpha2 info: label: Synopsys Polaris API — Projects description: 'Synopsys Polaris API — Projects. 3 operations. Lead operation: List Branches. Self-contained Naftiko capability covering one Synopsys business surface.' tags: - Synopsys - Projects created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SYNOPSYS_API_KEY: SYNOPSYS_API_KEY capability: consumes: - type: http namespace: polaris-projects baseUri: https://polaris.synopsys.com/api/v1 description: Synopsys Polaris API — Projects business capability. Self-contained, no shared references. resources: - name: portfolios-branches path: /portfolios/branches operations: - name: listbranches method: GET description: List Branches outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: projectId in: query type: string - name: portfolios-projects path: /portfolios/projects operations: - name: listprojects method: GET description: List Projects outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page in: query type: integer - name: pageSize in: query type: integer - name: filter in: query type: string description: Filter expression. - name: portfolios-projects-projectId path: /portfolios/projects/{projectId} operations: - name: getproject method: GET description: Get Project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: projectId in: path type: string required: true authentication: type: bearer token: '{{env.SYNOPSYS_API_KEY}}' exposes: - type: rest namespace: polaris-projects-rest port: 8080 description: REST adapter for Synopsys Polaris API — Projects. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/portfolios/branches name: portfolios-branches description: REST surface for portfolios-branches. operations: - method: GET name: listbranches description: List Branches call: polaris-projects.listbranches with: projectId: rest.projectId outputParameters: - type: object mapping: $. - path: /v1/portfolios/projects name: portfolios-projects description: REST surface for portfolios-projects. operations: - method: GET name: listprojects description: List Projects call: polaris-projects.listprojects with: page: rest.page pageSize: rest.pageSize filter: rest.filter outputParameters: - type: object mapping: $. - path: /v1/portfolios/projects/{projectid} name: portfolios-projects-projectid description: REST surface for portfolios-projects-projectId. operations: - method: GET name: getproject description: Get Project call: polaris-projects.getproject with: projectId: rest.projectId outputParameters: - type: object mapping: $. - type: mcp namespace: polaris-projects-mcp port: 9090 transport: http description: MCP adapter for Synopsys Polaris API — Projects. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-branches description: List Branches hints: readOnly: true destructive: false idempotent: true call: polaris-projects.listbranches with: projectId: tools.projectId outputParameters: - type: object mapping: $. - name: list-projects description: List Projects hints: readOnly: true destructive: false idempotent: true call: polaris-projects.listprojects with: page: tools.page pageSize: tools.pageSize filter: tools.filter outputParameters: - type: object mapping: $. - name: get-project description: Get Project hints: readOnly: true destructive: false idempotent: true call: polaris-projects.getproject with: projectId: tools.projectId outputParameters: - type: object mapping: $.