naftiko: 1.0.0-alpha2 info: label: Amazon EC2 API — Key Pairs description: 'Amazon EC2 API — Key Pairs. 3 operations. Lead operation: Amazon EC2 Create a Key Pair. Self-contained Naftiko capability covering one Amazon Ec2 business surface.' tags: - Amazon Ec2 - Key Pairs 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-key-pairs baseUri: https://ec2.{region}.amazonaws.com description: Amazon EC2 API — Key Pairs business capability. Self-contained, no shared references. resources: - name: ?Action=CreateKeyPair path: /?Action=CreateKeyPair operations: - name: createkeypair method: GET description: Amazon EC2 Create a Key Pair outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: KeyName in: query type: string description: A unique name for the key pair required: true - name: KeyType in: query type: string description: The type of key pair (rsa or ed25519) - name: ?Action=DeleteKeyPair path: /?Action=DeleteKeyPair operations: - name: deletekeypair method: GET description: Amazon EC2 Delete a Key Pair outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: KeyName in: query type: string description: The name of the key pair to delete - name: KeyPairId in: query type: string description: The ID of the key pair to delete - name: ?Action=DescribeKeyPairs path: /?Action=DescribeKeyPairs operations: - name: describekeypairs method: GET description: Amazon EC2 Describe Key Pairs outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: KeyName in: query type: array description: The key pair names to describe - name: KeyPairId in: query type: array description: The IDs of the key pairs authentication: type: apikey key: Authorization value: '{{env.AMAZON_EC2_API_KEY}}' placement: header exposes: - type: rest namespace: amazon-ec2-key-pairs-rest port: 8080 description: REST adapter for Amazon EC2 API — Key Pairs. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/action-createkeypair name: action-createkeypair description: REST surface for ?Action=CreateKeyPair. operations: - method: GET name: createkeypair description: Amazon EC2 Create a Key Pair call: amazon-ec2-key-pairs.createkeypair with: KeyName: rest.KeyName KeyType: rest.KeyType outputParameters: - type: object mapping: $. - path: /v1/action-deletekeypair name: action-deletekeypair description: REST surface for ?Action=DeleteKeyPair. operations: - method: GET name: deletekeypair description: Amazon EC2 Delete a Key Pair call: amazon-ec2-key-pairs.deletekeypair with: KeyName: rest.KeyName KeyPairId: rest.KeyPairId outputParameters: - type: object mapping: $. - path: /v1/action-describekeypairs name: action-describekeypairs description: REST surface for ?Action=DescribeKeyPairs. operations: - method: GET name: describekeypairs description: Amazon EC2 Describe Key Pairs call: amazon-ec2-key-pairs.describekeypairs with: KeyName: rest.KeyName KeyPairId: rest.KeyPairId outputParameters: - type: object mapping: $. - type: mcp namespace: amazon-ec2-key-pairs-mcp port: 9090 transport: http description: MCP adapter for Amazon EC2 API — Key Pairs. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: amazon-ec2-create-key-pair description: Amazon EC2 Create a Key Pair hints: readOnly: true destructive: false idempotent: true call: amazon-ec2-key-pairs.createkeypair with: KeyName: tools.KeyName KeyType: tools.KeyType outputParameters: - type: object mapping: $. - name: amazon-ec2-delete-key-pair description: Amazon EC2 Delete a Key Pair hints: readOnly: true destructive: false idempotent: true call: amazon-ec2-key-pairs.deletekeypair with: KeyName: tools.KeyName KeyPairId: tools.KeyPairId outputParameters: - type: object mapping: $. - name: amazon-ec2-describe-key-pairs description: Amazon EC2 Describe Key Pairs hints: readOnly: true destructive: false idempotent: true call: amazon-ec2-key-pairs.describekeypairs with: KeyName: tools.KeyName KeyPairId: tools.KeyPairId outputParameters: - type: object mapping: $.