naftiko: 1.0.0-alpha2 info: label: Amazon Neptune Neptune ML API — Model Training description: 'Amazon Neptune Neptune ML API — Model Training. 4 operations. Lead operation: Amazon Neptune Create an ML Model Training Job. Self-contained Naftiko capability covering one Amazon Neptune business surface.' tags: - Amazon Neptune - Model Training created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AMAZON_NEPTUNE_API_KEY: AMAZON_NEPTUNE_API_KEY capability: consumes: - type: http namespace: ml-model-training baseUri: https://{cluster-endpoint}:8182 description: Amazon Neptune Neptune ML API — Model Training business capability. Self-contained, no shared references. resources: - name: ml-modeltraining path: /ml/modeltraining operations: - name: createmodeltrainingjob method: POST description: Amazon Neptune Create an ML Model Training Job outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: listmodeltrainingjobs method: GET description: Amazon Neptune List Active Model Training Jobs outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: maxItems in: query type: integer description: Maximum number of items to return (default 10, max 1024). - name: neptuneIamRoleArn in: query type: string - name: ml-modeltraining-id path: /ml/modeltraining/{id} operations: - name: getmodeltrainingjobstatus method: GET description: Amazon Neptune Get Model Training Job Status outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the model training job. required: true - name: neptuneIamRoleArn in: query type: string - name: stopmodeltrainingjob method: DELETE description: Amazon Neptune Stop a Model Training Job outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: clean in: query type: boolean - name: neptuneIamRoleArn in: query type: string authentication: type: apikey key: Authorization value: '{{env.AMAZON_NEPTUNE_API_KEY}}' placement: header exposes: - type: rest namespace: ml-model-training-rest port: 8080 description: REST adapter for Amazon Neptune Neptune ML API — Model Training. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/ml/modeltraining name: ml-modeltraining description: REST surface for ml-modeltraining. operations: - method: POST name: createmodeltrainingjob description: Amazon Neptune Create an ML Model Training Job call: ml-model-training.createmodeltrainingjob with: body: rest.body outputParameters: - type: object mapping: $. - method: GET name: listmodeltrainingjobs description: Amazon Neptune List Active Model Training Jobs call: ml-model-training.listmodeltrainingjobs with: maxItems: rest.maxItems neptuneIamRoleArn: rest.neptuneIamRoleArn outputParameters: - type: object mapping: $. - path: /v1/ml/modeltraining/{id} name: ml-modeltraining-id description: REST surface for ml-modeltraining-id. operations: - method: GET name: getmodeltrainingjobstatus description: Amazon Neptune Get Model Training Job Status call: ml-model-training.getmodeltrainingjobstatus with: id: rest.id neptuneIamRoleArn: rest.neptuneIamRoleArn outputParameters: - type: object mapping: $. - method: DELETE name: stopmodeltrainingjob description: Amazon Neptune Stop a Model Training Job call: ml-model-training.stopmodeltrainingjob with: id: rest.id clean: rest.clean neptuneIamRoleArn: rest.neptuneIamRoleArn outputParameters: - type: object mapping: $. - type: mcp namespace: ml-model-training-mcp port: 9090 transport: http description: MCP adapter for Amazon Neptune Neptune ML API — Model Training. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: amazon-neptune-create-ml-model description: Amazon Neptune Create an ML Model Training Job hints: readOnly: false destructive: false idempotent: false call: ml-model-training.createmodeltrainingjob with: body: tools.body outputParameters: - type: object mapping: $. - name: amazon-neptune-list-active-model description: Amazon Neptune List Active Model Training Jobs hints: readOnly: true destructive: false idempotent: true call: ml-model-training.listmodeltrainingjobs with: maxItems: tools.maxItems neptuneIamRoleArn: tools.neptuneIamRoleArn outputParameters: - type: object mapping: $. - name: amazon-neptune-get-model-training description: Amazon Neptune Get Model Training Job Status hints: readOnly: true destructive: false idempotent: true call: ml-model-training.getmodeltrainingjobstatus with: id: tools.id neptuneIamRoleArn: tools.neptuneIamRoleArn outputParameters: - type: object mapping: $. - name: amazon-neptune-stop-model-training description: Amazon Neptune Stop a Model Training Job hints: readOnly: false destructive: true idempotent: true call: ml-model-training.stopmodeltrainingjob with: id: tools.id clean: tools.clean neptuneIamRoleArn: tools.neptuneIamRoleArn outputParameters: - type: object mapping: $.