Naftiko · Capability

Aws Api Gateway Openapi Crawl Capability

A capability that crawls every AWS API Gateway in an account and exports each REST API as an OpenAPI 3.0 doc, so the spec inventory updates automatically with no manual upload.

Run with Naftiko NaftikoAPI GatewayOpenAPI

What You Can Do

GET
List gateway specs
/gateway-specs

MCP Tools

list-rest-apis

read-only
export-rest-api

read-only

Capability Spec

aws-api-gateway-openapi-crawl-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  title: Aws Api Gateway Openapi Crawl Capability
  description: A capability that crawls every AWS API Gateway in an account and exports each REST API as an OpenAPI 3.0 doc, so the spec inventory updates automatically with no manual upload.
  tags: [Naftiko, AWS, API Gateway, OpenAPI]
  created: '2026-05-01'
  modified: '2026-05-04'
binds:
- namespace: aws-env
  description: AWS credentials with API Gateway describe/export permissions.
  keys: {AWS_ACCESS_KEY_ID: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY: AWS_SECRET_ACCESS_KEY, AWS_REGION: AWS_REGION}
capability:
  consumes:
  - namespace: apigateway
    type: http
    baseUri: https://apigateway.{{AWS_REGION}}.amazonaws.com
    authentication: {type: aws-sig-v4, accessKeyId: '{{AWS_ACCESS_KEY_ID}}', secretKey: '{{AWS_SECRET_ACCESS_KEY}}', region: '{{AWS_REGION}}', service: apigateway}
    resources:
    - {name: rest-apis, path: /restapis, operations: [{name: list-rest-apis, method: GET}]}
    - name: rest-api-export
      path: /restapis/{{rest_api_id}}/stages/{{stage_name}}/exports/oas30
      operations:
      - {name: export-rest-api, method: GET, inputParameters: [{name: rest_api_id, in: path}, {name: stage_name, in: path}]}
  exposes:
  - type: rest
    address: 0.0.0.0
    port: 8080
    namespace: aws-api-gateway-openapi-crawl-capability-rest
    description: REST surface that lists API Gateway REST APIs and exports each as OpenAPI.
    resources:
    - {name: gateway-specs, path: /gateway-specs, operations: [{method: GET, name: list-gateway-specs, call: apigateway.list-rest-apis}]}
  - type: mcp
    address: 0.0.0.0
    port: 3010
    namespace: aws-api-gateway-openapi-crawl-capability-mcp
    description: MCP exposing the API Gateway crawl as agent tools.
    tools:
    - {name: list-rest-apis, hints: {readOnly: true}, call: apigateway.list-rest-apis}
    - name: export-rest-api
      hints: {readOnly: true}
      inputParameters: [{name: rest_api_id, type: string, required: true}, {name: stage_name, type: string, required: true}]
      call: apigateway.export-rest-api
  - type: skill
    address: 0.0.0.0
    port: 3011
    namespace: aws-api-gateway-openapi-crawl-capability-skills
    description: Skill bundle for the API Gateway crawl.
    skills:
    - name: aws-api-gateway-openapi-crawl-capability
      description: Crawl API Gateway and export OpenAPI.
      location: file:///opt/naftiko/skills/aws-api-gateway-openapi-crawl-capability
      allowed-tools: list-rest-apis,export-rest-api
      tools:
      - {name: list-rest-apis, from: {sourceNamespace: aws-api-gateway-openapi-crawl-capability-mcp, action: list-rest-apis}}
      - {name: export-rest-api, from: {sourceNamespace: aws-api-gateway-openapi-crawl-capability-mcp, action: export-rest-api}}