naftiko: 1.0.0-alpha2 info: label: Amazon EC2 API — Spot Instances description: 'Amazon EC2 API — Spot Instances. 2 operations. Lead operation: Amazon EC2 Describe Spot Instance Requests. Self-contained Naftiko capability covering one Amazon Ec2 business surface.' tags: - Amazon Ec2 - Spot Instances created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AMAZON_EC2_API_KEY: AMAZON_EC2_API_KEY capability: consumes: - type: http namespace: amazon-ec2-spot-instances baseUri: https://ec2.{region}.amazonaws.com description: Amazon EC2 API — Spot Instances business capability. Self-contained, no shared references. resources: - name: ?Action=DescribeSpotInstanceRequests path: /?Action=DescribeSpotInstanceRequests operations: - name: describespotinstancerequests method: GET description: Amazon EC2 Describe Spot Instance Requests outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: SpotInstanceRequestId in: query type: array description: The IDs of the Spot Instance requests - name: ?Action=RequestSpotInstances path: /?Action=RequestSpotInstances operations: - name: requestspotinstances method: GET description: Amazon EC2 Request Spot Instances outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: SpotPrice in: query type: string description: The maximum price per unit hour for a Spot Instance - name: InstanceCount in: query type: integer description: The maximum number of Spot Instances to launch - name: Type in: query type: string description: The Spot Instance request type authentication: type: apikey key: Authorization value: '{{env.AMAZON_EC2_API_KEY}}' placement: header exposes: - type: rest namespace: amazon-ec2-spot-instances-rest port: 8080 description: REST adapter for Amazon EC2 API — Spot Instances. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/action-describespotinstancerequests name: action-describespotinstancerequests description: REST surface for ?Action=DescribeSpotInstanceRequests. operations: - method: GET name: describespotinstancerequests description: Amazon EC2 Describe Spot Instance Requests call: amazon-ec2-spot-instances.describespotinstancerequests with: SpotInstanceRequestId: rest.SpotInstanceRequestId outputParameters: - type: object mapping: $. - path: /v1/action-requestspotinstances name: action-requestspotinstances description: REST surface for ?Action=RequestSpotInstances. operations: - method: GET name: requestspotinstances description: Amazon EC2 Request Spot Instances call: amazon-ec2-spot-instances.requestspotinstances with: SpotPrice: rest.SpotPrice InstanceCount: rest.InstanceCount Type: rest.Type outputParameters: - type: object mapping: $. - type: mcp namespace: amazon-ec2-spot-instances-mcp port: 9090 transport: http description: MCP adapter for Amazon EC2 API — Spot Instances. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: amazon-ec2-describe-spot-instance description: Amazon EC2 Describe Spot Instance Requests hints: readOnly: true destructive: false idempotent: true call: amazon-ec2-spot-instances.describespotinstancerequests with: SpotInstanceRequestId: tools.SpotInstanceRequestId outputParameters: - type: object mapping: $. - name: amazon-ec2-request-spot-instances description: Amazon EC2 Request Spot Instances hints: readOnly: true destructive: false idempotent: true call: amazon-ec2-spot-instances.requestspotinstances with: SpotPrice: tools.SpotPrice InstanceCount: tools.InstanceCount Type: tools.Type outputParameters: - type: object mapping: $.