naftiko: 1.0.0-alpha2 info: label: Checkmarx SAST API — Projects description: 'Checkmarx SAST API — Projects. 7 operations. Lead operation: Checkmarx List all projects. Self-contained Naftiko capability covering one Checkmarx business surface.' tags: - Checkmarx - Projects created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CHECKMARX_API_KEY: CHECKMARX_API_KEY capability: consumes: - type: http namespace: sast-projects baseUri: https://{checkmarx-server}/cxrestapi description: Checkmarx SAST API — Projects business capability. Self-contained, no shared references. resources: - name: projects path: /projects operations: - name: listprojects method: GET description: Checkmarx List all projects outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: projectName in: query type: string description: Filter by project name - name: teamId in: query type: string description: Filter by team ID - name: createproject method: POST description: Checkmarx Create a new project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: projects-projectId path: /projects/{projectId} operations: - name: getproject method: GET description: Checkmarx Get project details outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateproject method: PUT description: Checkmarx Update a project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteproject method: DELETE description: Checkmarx Delete a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: projects-projectId-sourceCode-remoteSettings-git path: /projects/{projectId}/sourceCode/remoteSettings/git operations: - name: getprojectgitsettings method: GET description: Checkmarx Get Git remote source settings outputRawFormat: json outputParameters: - name: result type: object value: $. - name: setprojectgitsettings method: POST description: Checkmarx Set Git remote source settings outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.CHECKMARX_API_KEY}}' exposes: - type: rest namespace: sast-projects-rest port: 8080 description: REST adapter for Checkmarx SAST API — Projects. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/projects name: projects description: REST surface for projects. operations: - method: GET name: listprojects description: Checkmarx List all projects call: sast-projects.listprojects with: projectName: rest.projectName teamId: rest.teamId outputParameters: - type: object mapping: $. - method: POST name: createproject description: Checkmarx Create a new project call: sast-projects.createproject with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/projects/{projectid} name: projects-projectid description: REST surface for projects-projectId. operations: - method: GET name: getproject description: Checkmarx Get project details call: sast-projects.getproject outputParameters: - type: object mapping: $. - method: PUT name: updateproject description: Checkmarx Update a project call: sast-projects.updateproject with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteproject description: Checkmarx Delete a project call: sast-projects.deleteproject outputParameters: - type: object mapping: $. - path: /v1/projects/{projectid}/sourcecode/remotesettings/git name: projects-projectid-sourcecode-remotesettings-git description: REST surface for projects-projectId-sourceCode-remoteSettings-git. operations: - method: GET name: getprojectgitsettings description: Checkmarx Get Git remote source settings call: sast-projects.getprojectgitsettings outputParameters: - type: object mapping: $. - method: POST name: setprojectgitsettings description: Checkmarx Set Git remote source settings call: sast-projects.setprojectgitsettings with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: sast-projects-mcp port: 9090 transport: http description: MCP adapter for Checkmarx SAST API — Projects. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: checkmarx-list-all-projects description: Checkmarx List all projects hints: readOnly: true destructive: false idempotent: true call: sast-projects.listprojects with: projectName: tools.projectName teamId: tools.teamId outputParameters: - type: object mapping: $. - name: checkmarx-create-new-project description: Checkmarx Create a new project hints: readOnly: false destructive: false idempotent: false call: sast-projects.createproject with: body: tools.body outputParameters: - type: object mapping: $. - name: checkmarx-get-project-details description: Checkmarx Get project details hints: readOnly: true destructive: false idempotent: true call: sast-projects.getproject outputParameters: - type: object mapping: $. - name: checkmarx-update-project description: Checkmarx Update a project hints: readOnly: false destructive: false idempotent: true call: sast-projects.updateproject with: body: tools.body outputParameters: - type: object mapping: $. - name: checkmarx-delete-project description: Checkmarx Delete a project hints: readOnly: false destructive: true idempotent: true call: sast-projects.deleteproject outputParameters: - type: object mapping: $. - name: checkmarx-get-git-remote-source description: Checkmarx Get Git remote source settings hints: readOnly: true destructive: false idempotent: true call: sast-projects.getprojectgitsettings outputParameters: - type: object mapping: $. - name: checkmarx-set-git-remote-source description: Checkmarx Set Git remote source settings hints: readOnly: false destructive: false idempotent: false call: sast-projects.setprojectgitsettings with: body: tools.body outputParameters: - type: object mapping: $.