Spot · Capability

Spot Eco API — Eco AWS

Spot Eco API — Eco AWS. 5 operations. Lead operation: Spot List Commitment Plans (aws). Self-contained Naftiko capability covering one Flexera business surface.

Run with Naftiko FlexeraEco AWS

What You Can Do

GET
Listcommitmentplansaws — Spot List Commitment Plans (aws)
/v1/eco/aws/commitmentplan
GET
Getcommitmentplanaws — Spot Get Commitment Plan (aws)
/v1/eco/aws/commitmentplan/{commitmentplanid}
GET
Listreservedinstancesaws — Spot List Reserved Instances (aws)
/v1/eco/aws/ri/reservedinstances
GET
Listsavingsplansaws — Spot List Savings Plans (aws)
/v1/eco/aws/ri/savingsplans
GET
Getunusedreservedinstancesaws — Spot Get Unused Reserved Instances (aws)
/v1/eco/aws/ri/unusedreservedinstances

MCP Tools

spot-list-commitment-plans-aws

Spot List Commitment Plans (aws)

read-only idempotent
spot-get-commitment-plan-aws

Spot Get Commitment Plan (aws)

read-only idempotent
spot-list-reserved-instances-aws

Spot List Reserved Instances (aws)

read-only idempotent
spot-list-savings-plans-aws

Spot List Savings Plans (aws)

read-only idempotent
spot-get-unused-reserved-instances

Spot Get Unused Reserved Instances (aws)

read-only idempotent

Capability Spec

spot-eco-eco-aws.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Spot Eco API — Eco AWS
  description: 'Spot Eco API — Eco AWS. 5 operations. Lead operation: Spot List Commitment Plans (aws). Self-contained Naftiko
    capability covering one Flexera business surface.'
  tags:
  - Flexera
  - Eco AWS
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    FLEXERA_API_KEY: FLEXERA_API_KEY
capability:
  consumes:
  - type: http
    namespace: spot-eco-eco-aws
    baseUri: https://api.spotinst.io
    description: Spot Eco API — Eco AWS business capability. Self-contained, no shared references.
    resources:
    - name: eco-aws-commitmentPlan
      path: /eco/aws/commitmentPlan
      operations:
      - name: listcommitmentplansaws
        method: GET
        description: Spot List Commitment Plans (aws)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accountId
          in: query
          type: string
          description: The Spot account ID.
    - name: eco-aws-commitmentPlan-commitmentPlanId
      path: /eco/aws/commitmentPlan/{commitmentPlanId}
      operations:
      - name: getcommitmentplanaws
        method: GET
        description: Spot Get Commitment Plan (aws)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: commitmentPlanId
          in: path
          type: string
          required: true
        - name: accountId
          in: query
          type: string
    - name: eco-aws-ri-reservedInstances
      path: /eco/aws/ri/reservedInstances
      operations:
      - name: listreservedinstancesaws
        method: GET
        description: Spot List Reserved Instances (aws)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accountId
          in: query
          type: string
    - name: eco-aws-ri-savingsPlans
      path: /eco/aws/ri/savingsPlans
      operations:
      - name: listsavingsplansaws
        method: GET
        description: Spot List Savings Plans (aws)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accountId
          in: query
          type: string
    - name: eco-aws-ri-unusedReservedInstances
      path: /eco/aws/ri/unusedReservedInstances
      operations:
      - name: getunusedreservedinstancesaws
        method: GET
        description: Spot Get Unused Reserved Instances (aws)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accountId
          in: query
          type: string
    authentication:
      type: bearer
      token: '{{env.FLEXERA_API_KEY}}'
  exposes:
  - type: rest
    namespace: spot-eco-eco-aws-rest
    port: 8080
    description: REST adapter for Spot Eco API — Eco AWS. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/eco/aws/commitmentplan
      name: eco-aws-commitmentplan
      description: REST surface for eco-aws-commitmentPlan.
      operations:
      - method: GET
        name: listcommitmentplansaws
        description: Spot List Commitment Plans (aws)
        call: spot-eco-eco-aws.listcommitmentplansaws
        with:
          accountId: rest.accountId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/eco/aws/commitmentplan/{commitmentplanid}
      name: eco-aws-commitmentplan-commitmentplanid
      description: REST surface for eco-aws-commitmentPlan-commitmentPlanId.
      operations:
      - method: GET
        name: getcommitmentplanaws
        description: Spot Get Commitment Plan (aws)
        call: spot-eco-eco-aws.getcommitmentplanaws
        with:
          commitmentPlanId: rest.commitmentPlanId
          accountId: rest.accountId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/eco/aws/ri/reservedinstances
      name: eco-aws-ri-reservedinstances
      description: REST surface for eco-aws-ri-reservedInstances.
      operations:
      - method: GET
        name: listreservedinstancesaws
        description: Spot List Reserved Instances (aws)
        call: spot-eco-eco-aws.listreservedinstancesaws
        with:
          accountId: rest.accountId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/eco/aws/ri/savingsplans
      name: eco-aws-ri-savingsplans
      description: REST surface for eco-aws-ri-savingsPlans.
      operations:
      - method: GET
        name: listsavingsplansaws
        description: Spot List Savings Plans (aws)
        call: spot-eco-eco-aws.listsavingsplansaws
        with:
          accountId: rest.accountId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/eco/aws/ri/unusedreservedinstances
      name: eco-aws-ri-unusedreservedinstances
      description: REST surface for eco-aws-ri-unusedReservedInstances.
      operations:
      - method: GET
        name: getunusedreservedinstancesaws
        description: Spot Get Unused Reserved Instances (aws)
        call: spot-eco-eco-aws.getunusedreservedinstancesaws
        with:
          accountId: rest.accountId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: spot-eco-eco-aws-mcp
    port: 9090
    transport: http
    description: MCP adapter for Spot Eco API — Eco AWS. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: spot-list-commitment-plans-aws
      description: Spot List Commitment Plans (aws)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: spot-eco-eco-aws.listcommitmentplansaws
      with:
        accountId: tools.accountId
      outputParameters:
      - type: object
        mapping: $.
    - name: spot-get-commitment-plan-aws
      description: Spot Get Commitment Plan (aws)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: spot-eco-eco-aws.getcommitmentplanaws
      with:
        commitmentPlanId: tools.commitmentPlanId
        accountId: tools.accountId
      outputParameters:
      - type: object
        mapping: $.
    - name: spot-list-reserved-instances-aws
      description: Spot List Reserved Instances (aws)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: spot-eco-eco-aws.listreservedinstancesaws
      with:
        accountId: tools.accountId
      outputParameters:
      - type: object
        mapping: $.
    - name: spot-list-savings-plans-aws
      description: Spot List Savings Plans (aws)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: spot-eco-eco-aws.listsavingsplansaws
      with:
        accountId: tools.accountId
      outputParameters:
      - type: object
        mapping: $.
    - name: spot-get-unused-reserved-instances
      description: Spot Get Unused Reserved Instances (aws)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: spot-eco-eco-aws.getunusedreservedinstancesaws
      with:
        accountId: tools.accountId
      outputParameters:
      - type: object
        mapping: $.