naftiko: 1.0.0-alpha2 info: label: Amazon Elastic Load Balancing v2 API — Load Balancers description: 'Amazon Elastic Load Balancing v2 API — Load Balancers. 4 operations. Lead operation: Amazon Elastic Load Balancing Create a Load Balancer. Self-contained Naftiko capability covering one Amazon Elastic Load Balancing business surface.' tags: - Amazon Elastic Load Balancing - Load Balancers created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AMAZON_ELASTIC_LOAD_BALANCING_API_KEY: AMAZON_ELASTIC_LOAD_BALANCING_API_KEY capability: consumes: - type: http namespace: amazon-elastic-load-balancing-load-balancers baseUri: https://elasticloadbalancing.{region}.amazonaws.com description: Amazon Elastic Load Balancing v2 API — Load Balancers business capability. Self-contained, no shared references. resources: - name: ?Action=CreateLoadBalancer path: /?Action=CreateLoadBalancer operations: - name: createloadbalancer method: GET description: Amazon Elastic Load Balancing Create a Load Balancer outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Name in: query type: string description: The name of the load balancer. Must be unique per region per account, can have a maximum of 32 characters. required: true - name: Subnets in: query type: array description: The IDs of the subnets. You can specify only one subnet per Availability Zone. - name: SecurityGroups in: query type: array description: The IDs of the security groups for the load balancer - name: Scheme in: query type: string description: The scheme for the load balancer. An internet-facing load balancer routes requests from clients to targets over the internet. An internal load balancer routes r - name: Type in: query type: string description: The type of load balancer - name: IpAddressType in: query type: string description: The type of IP addresses used by the subnets - name: ?Action=DeleteLoadBalancer path: /?Action=DeleteLoadBalancer operations: - name: deleteloadbalancer method: GET description: Amazon Elastic Load Balancing Delete a Load Balancer outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: LoadBalancerArn in: query type: string description: The Amazon Resource Name (ARN) of the load balancer required: true - name: ?Action=DescribeLoadBalancers path: /?Action=DescribeLoadBalancers operations: - name: describeloadbalancers method: GET description: Amazon Elastic Load Balancing Describe Load Balancers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: LoadBalancerArns in: query type: array description: The Amazon Resource Names (ARN) of the load balancers - name: Names in: query type: array description: The names of the load balancers - name: Marker in: query type: string description: The marker for the next set of results - name: PageSize in: query type: integer description: The maximum number of results to return - name: ?Action=ModifyLoadBalancerAttributes path: /?Action=ModifyLoadBalancerAttributes operations: - name: modifyloadbalancerattributes method: GET description: Amazon Elastic Load Balancing Modify Load Balancer Attributes outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: LoadBalancerArn in: query type: string description: The Amazon Resource Name (ARN) of the load balancer required: true - name: Attributes.member.1.Key in: query type: string description: The name of the attribute - name: Attributes.member.1.Value in: query type: string description: The value of the attribute authentication: type: apikey key: Authorization value: '{{env.AMAZON_ELASTIC_LOAD_BALANCING_API_KEY}}' placement: header exposes: - type: rest namespace: amazon-elastic-load-balancing-load-balancers-rest port: 8080 description: REST adapter for Amazon Elastic Load Balancing v2 API — Load Balancers. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/action-createloadbalancer name: action-createloadbalancer description: REST surface for ?Action=CreateLoadBalancer. operations: - method: GET name: createloadbalancer description: Amazon Elastic Load Balancing Create a Load Balancer call: amazon-elastic-load-balancing-load-balancers.createloadbalancer with: Name: rest.Name Subnets: rest.Subnets SecurityGroups: rest.SecurityGroups Scheme: rest.Scheme Type: rest.Type IpAddressType: rest.IpAddressType outputParameters: - type: object mapping: $. - path: /v1/action-deleteloadbalancer name: action-deleteloadbalancer description: REST surface for ?Action=DeleteLoadBalancer. operations: - method: GET name: deleteloadbalancer description: Amazon Elastic Load Balancing Delete a Load Balancer call: amazon-elastic-load-balancing-load-balancers.deleteloadbalancer with: LoadBalancerArn: rest.LoadBalancerArn outputParameters: - type: object mapping: $. - path: /v1/action-describeloadbalancers name: action-describeloadbalancers description: REST surface for ?Action=DescribeLoadBalancers. operations: - method: GET name: describeloadbalancers description: Amazon Elastic Load Balancing Describe Load Balancers call: amazon-elastic-load-balancing-load-balancers.describeloadbalancers with: LoadBalancerArns: rest.LoadBalancerArns Names: rest.Names Marker: rest.Marker PageSize: rest.PageSize outputParameters: - type: object mapping: $. - path: /v1/action-modifyloadbalancerattributes name: action-modifyloadbalancerattributes description: REST surface for ?Action=ModifyLoadBalancerAttributes. operations: - method: GET name: modifyloadbalancerattributes description: Amazon Elastic Load Balancing Modify Load Balancer Attributes call: amazon-elastic-load-balancing-load-balancers.modifyloadbalancerattributes with: LoadBalancerArn: rest.LoadBalancerArn Attributes.member.1.Key: rest.Attributes.member.1.Key Attributes.member.1.Value: rest.Attributes.member.1.Value outputParameters: - type: object mapping: $. - type: mcp namespace: amazon-elastic-load-balancing-load-balancers-mcp port: 9090 transport: http description: MCP adapter for Amazon Elastic Load Balancing v2 API — Load Balancers. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: amazon-elastic-load-balancing-create description: Amazon Elastic Load Balancing Create a Load Balancer hints: readOnly: true destructive: false idempotent: true call: amazon-elastic-load-balancing-load-balancers.createloadbalancer with: Name: tools.Name Subnets: tools.Subnets SecurityGroups: tools.SecurityGroups Scheme: tools.Scheme Type: tools.Type IpAddressType: tools.IpAddressType outputParameters: - type: object mapping: $. - name: amazon-elastic-load-balancing-delete description: Amazon Elastic Load Balancing Delete a Load Balancer hints: readOnly: true destructive: false idempotent: true call: amazon-elastic-load-balancing-load-balancers.deleteloadbalancer with: LoadBalancerArn: tools.LoadBalancerArn outputParameters: - type: object mapping: $. - name: amazon-elastic-load-balancing-describe description: Amazon Elastic Load Balancing Describe Load Balancers hints: readOnly: true destructive: false idempotent: true call: amazon-elastic-load-balancing-load-balancers.describeloadbalancers with: LoadBalancerArns: tools.LoadBalancerArns Names: tools.Names Marker: tools.Marker PageSize: tools.PageSize outputParameters: - type: object mapping: $. - name: amazon-elastic-load-balancing-modify description: Amazon Elastic Load Balancing Modify Load Balancer Attributes hints: readOnly: true destructive: false idempotent: true call: amazon-elastic-load-balancing-load-balancers.modifyloadbalancerattributes with: LoadBalancerArn: tools.LoadBalancerArn Attributes.member.1.Key: tools.Attributes.member.1.Key Attributes.member.1.Value: tools.Attributes.member.1.Value outputParameters: - type: object mapping: $.