Kubernetes · Capability

Kubernetes API

The Kubernetes API lets you query and manipulate the state of objects in Kubernetes. The core of Kubernetes control plane is the API server and the HTTP API that it exposes. Users, the different parts of your cluster, and external components all communicate with one another through the API server. The API is a resource-based (RESTful) programmatic interface provided via HTTP that supports retrieving, creating, updating, and deleting primary resources via the standard HTTP verbs (POST, PUT, PATCH, DELETE, GET).

Run with Naftiko KubernetesAPI

What You Can Do

GET
Listnamespaces — Kubernetes List namespaces
/api/v1/namespaces
POST
Createnamespace — Kubernetes Create a namespace
/api/v1/namespaces
GET
Getnamespace — Kubernetes Get a namespace
/api/v1/namespaces/{name}
PUT
Replacenamespace — Kubernetes Replace a namespace
/api/v1/namespaces/{name}
DELETE
Deletenamespace — Kubernetes Delete a namespace
/api/v1/namespaces/{name}
GET
Listnamespacedpods — Kubernetes List pods in a namespace
/api/v1/namespaces/{namespace}/pods
POST
Createnamespacedpod — Kubernetes Create a pod
/api/v1/namespaces/{namespace}/pods
GET
Getnamespacedpod — Kubernetes Get a pod
/api/v1/namespaces/{namespace}/pods/{name}
PUT
Replacenamespacedpod — Kubernetes Replace a pod
/api/v1/namespaces/{namespace}/pods/{name}
DELETE
Deletenamespacedpod — Kubernetes Delete a pod
/api/v1/namespaces/{namespace}/pods/{name}
GET
Readnamespacedpodlog — Kubernetes Read pod logs
/api/v1/namespaces/{namespace}/pods/{name}/log
GET
Listnamespaceddeployments — Kubernetes List deployments in a namespace
/apis/apps/v1/namespaces/{namespace}/deployments
POST
Createnamespaceddeployment — Kubernetes Create a deployment
/apis/apps/v1/namespaces/{namespace}/deployments
GET
Getnamespaceddeployment — Kubernetes Get a deployment
/apis/apps/v1/namespaces/{namespace}/deployments/{name}
PUT
Replacenamespaceddeployment — Kubernetes Replace a deployment
/apis/apps/v1/namespaces/{namespace}/deployments/{name}
DELETE
Deletenamespaceddeployment — Kubernetes Delete a deployment
/apis/apps/v1/namespaces/{namespace}/deployments/{name}
GET
Getnamespaceddeploymentscale — Kubernetes Get deployment scale
/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale
PUT
Replacenamespaceddeploymentscale — Kubernetes Scale a deployment
/apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale
GET
Listnamespacedservices — Kubernetes List services in a namespace
/api/v1/namespaces/{namespace}/services
POST
Createnamespacedservice — Kubernetes Create a service
/api/v1/namespaces/{namespace}/services
GET
Getnamespacedservice — Kubernetes Get a service
/api/v1/namespaces/{namespace}/services/{name}
PUT
Replacenamespacedservice — Kubernetes Replace a service
/api/v1/namespaces/{namespace}/services/{name}
DELETE
Deletenamespacedservice — Kubernetes Delete a service
/api/v1/namespaces/{namespace}/services/{name}
GET
Listnamespacedconfigmaps — Kubernetes List ConfigMaps in a namespace
/api/v1/namespaces/{namespace}/configmaps
POST
Createnamespacedconfigmap — Kubernetes Create a ConfigMap
/api/v1/namespaces/{namespace}/configmaps
GET
Listnamespacedsecrets — Kubernetes List Secrets in a namespace
/api/v1/namespaces/{namespace}/secrets
POST
Createnamespacedsecret — Kubernetes Create a Secret
/api/v1/namespaces/{namespace}/secrets
GET
Listnodes — Kubernetes List nodes
/api/v1/nodes
GET
Getnode — Kubernetes Get a node
/api/v1/nodes/{name}
GET
Listclusterroles — Kubernetes List ClusterRoles
/apis/rbac.authorization.k8s.io/v1/clusterroles
POST
Createclusterrole — Kubernetes Create a ClusterRole
/apis/rbac.authorization.k8s.io/v1/clusterroles
GET
Listnamespacedhorizontalpodautoscalers — Kubernetes List HorizontalPodAutoscalers in a namespace
/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers
POST
Createnamespacedhorizontalpodautoscaler — Kubernetes Create a HorizontalPodAutoscaler
/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers
GET
Listnamespacedevents — Kubernetes List events in a namespace
/apis/events.k8s.io/v1/namespaces/{namespace}/events

MCP Tools

listnamespaces

Kubernetes List namespaces

read-only idempotent
createnamespace

Kubernetes Create a namespace

getnamespace

Kubernetes Get a namespace

read-only idempotent
replacenamespace

Kubernetes Replace a namespace

idempotent
deletenamespace

Kubernetes Delete a namespace

idempotent
listnamespacedpods

Kubernetes List pods in a namespace

read-only idempotent
createnamespacedpod

Kubernetes Create a pod

getnamespacedpod

Kubernetes Get a pod

read-only idempotent
replacenamespacedpod

Kubernetes Replace a pod

idempotent
deletenamespacedpod

Kubernetes Delete a pod

idempotent
readnamespacedpodlog

Kubernetes Read pod logs

read-only idempotent
listnamespaceddeployments

Kubernetes List deployments in a namespace

read-only idempotent
createnamespaceddeployment

Kubernetes Create a deployment

getnamespaceddeployment

Kubernetes Get a deployment

read-only idempotent
replacenamespaceddeployment

Kubernetes Replace a deployment

idempotent
deletenamespaceddeployment

Kubernetes Delete a deployment

idempotent
getnamespaceddeploymentscale

Kubernetes Get deployment scale

read-only idempotent
replacenamespaceddeploymentscale

Kubernetes Scale a deployment

idempotent
listnamespacedservices

Kubernetes List services in a namespace

read-only idempotent
createnamespacedservice

Kubernetes Create a service

getnamespacedservice

Kubernetes Get a service

read-only idempotent
replacenamespacedservice

Kubernetes Replace a service

idempotent
deletenamespacedservice

Kubernetes Delete a service

idempotent
listnamespacedconfigmaps

Kubernetes List ConfigMaps in a namespace

read-only idempotent
createnamespacedconfigmap

Kubernetes Create a ConfigMap

listnamespacedsecrets

Kubernetes List Secrets in a namespace

read-only idempotent
createnamespacedsecret

Kubernetes Create a Secret

listnodes

Kubernetes List nodes

read-only idempotent
getnode

Kubernetes Get a node

read-only idempotent
listclusterroles

Kubernetes List ClusterRoles

read-only idempotent
createclusterrole

Kubernetes Create a ClusterRole

listnamespacedhorizontalpodautoscalers

Kubernetes List HorizontalPodAutoscalers in a namespace

read-only idempotent
createnamespacedhorizontalpodautoscaler

Kubernetes Create a HorizontalPodAutoscaler

listnamespacedevents

Kubernetes List events in a namespace

read-only idempotent

Capability Spec

kubernetes-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Kubernetes API
  description: The Kubernetes API lets you query and manipulate the state of objects in Kubernetes. The core of Kubernetes
    control plane is the API server and the HTTP API that it exposes. Users, the different parts of your cluster, and external
    components all communicate with one another through the API server. The API is a resource-based (RESTful) programmatic
    interface provided via HTTP that supports retrieving, creating, updating, and deleting primary resources via the standard
    HTTP verbs (POST, PUT, PATCH, DELETE, GET).
  tags:
  - Kubernetes
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: kubernetes
    baseUri: https://kubernetes.default.svc
    description: Kubernetes API HTTP API.
    authentication:
      type: bearer
      token: '{{KUBERNETES_TOKEN}}'
    resources:
    - name: api-v1-namespaces
      path: /api/v1/namespaces
      operations:
      - name: listnamespaces
        method: GET
        description: Kubernetes List namespaces
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnamespace
        method: POST
        description: Kubernetes Create a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-name
      path: /api/v1/namespaces/{name}
      operations:
      - name: getnamespace
        method: GET
        description: Kubernetes Get a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: replacenamespace
        method: PUT
        description: Kubernetes Replace a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletenamespace
        method: DELETE
        description: Kubernetes Delete a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-namespace-pods
      path: /api/v1/namespaces/{namespace}/pods
      operations:
      - name: listnamespacedpods
        method: GET
        description: Kubernetes List pods in a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnamespacedpod
        method: POST
        description: Kubernetes Create a pod
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-namespace-pods-name
      path: /api/v1/namespaces/{namespace}/pods/{name}
      operations:
      - name: getnamespacedpod
        method: GET
        description: Kubernetes Get a pod
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: replacenamespacedpod
        method: PUT
        description: Kubernetes Replace a pod
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletenamespacedpod
        method: DELETE
        description: Kubernetes Delete a pod
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-namespace-pods-name-log
      path: /api/v1/namespaces/{namespace}/pods/{name}/log
      operations:
      - name: readnamespacedpodlog
        method: GET
        description: Kubernetes Read pod logs
        inputParameters:
        - name: container
          in: query
          type: string
          description: Name of the container to read logs from. Defaults to only container if there is only one, otherwise
            required.
        - name: follow
          in: query
          type: boolean
          description: Whether to stream log output. If false, returns current log snapshot.
        - name: tailLines
          in: query
          type: integer
          description: Number of lines from the end of the log to retrieve.
        - name: sinceSeconds
          in: query
          type: integer
          description: Only return logs newer than a relative duration in seconds.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apis-apps-v1-namespaces-namespace-deployments
      path: /apis/apps/v1/namespaces/{namespace}/deployments
      operations:
      - name: listnamespaceddeployments
        method: GET
        description: Kubernetes List deployments in a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnamespaceddeployment
        method: POST
        description: Kubernetes Create a deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apis-apps-v1-namespaces-namespace-deployments-na
      path: /apis/apps/v1/namespaces/{namespace}/deployments/{name}
      operations:
      - name: getnamespaceddeployment
        method: GET
        description: Kubernetes Get a deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: replacenamespaceddeployment
        method: PUT
        description: Kubernetes Replace a deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletenamespaceddeployment
        method: DELETE
        description: Kubernetes Delete a deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apis-apps-v1-namespaces-namespace-deployments-na
      path: /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale
      operations:
      - name: getnamespaceddeploymentscale
        method: GET
        description: Kubernetes Get deployment scale
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: replacenamespaceddeploymentscale
        method: PUT
        description: Kubernetes Scale a deployment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-namespace-services
      path: /api/v1/namespaces/{namespace}/services
      operations:
      - name: listnamespacedservices
        method: GET
        description: Kubernetes List services in a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnamespacedservice
        method: POST
        description: Kubernetes Create a service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-namespace-services-name
      path: /api/v1/namespaces/{namespace}/services/{name}
      operations:
      - name: getnamespacedservice
        method: GET
        description: Kubernetes Get a service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: replacenamespacedservice
        method: PUT
        description: Kubernetes Replace a service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletenamespacedservice
        method: DELETE
        description: Kubernetes Delete a service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-namespace-configmaps
      path: /api/v1/namespaces/{namespace}/configmaps
      operations:
      - name: listnamespacedconfigmaps
        method: GET
        description: Kubernetes List ConfigMaps in a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnamespacedconfigmap
        method: POST
        description: Kubernetes Create a ConfigMap
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-namespaces-namespace-secrets
      path: /api/v1/namespaces/{namespace}/secrets
      operations:
      - name: listnamespacedsecrets
        method: GET
        description: Kubernetes List Secrets in a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnamespacedsecret
        method: POST
        description: Kubernetes Create a Secret
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-nodes
      path: /api/v1/nodes
      operations:
      - name: listnodes
        method: GET
        description: Kubernetes List nodes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-nodes-name
      path: /api/v1/nodes/{name}
      operations:
      - name: getnode
        method: GET
        description: Kubernetes Get a node
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apis-rbac-authorization-k8s-io-v1-clusterroles
      path: /apis/rbac.authorization.k8s.io/v1/clusterroles
      operations:
      - name: listclusterroles
        method: GET
        description: Kubernetes List ClusterRoles
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createclusterrole
        method: POST
        description: Kubernetes Create a ClusterRole
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apis-autoscaling-v2-namespaces-namespace-horizon
      path: /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers
      operations:
      - name: listnamespacedhorizontalpodautoscalers
        method: GET
        description: Kubernetes List HorizontalPodAutoscalers in a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnamespacedhorizontalpodautoscaler
        method: POST
        description: Kubernetes Create a HorizontalPodAutoscaler
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apis-events-k8s-io-v1-namespaces-namespace-event
      path: /apis/events.k8s.io/v1/namespaces/{namespace}/events
      operations:
      - name: listnamespacedevents
        method: GET
        description: Kubernetes List events in a namespace
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: kubernetes-rest
    description: REST adapter for Kubernetes API.
    resources:
    - path: /api/v1/namespaces
      name: listnamespaces
      operations:
      - method: GET
        name: listnamespaces
        description: Kubernetes List namespaces
        call: kubernetes.listnamespaces
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces
      name: createnamespace
      operations:
      - method: POST
        name: createnamespace
        description: Kubernetes Create a namespace
        call: kubernetes.createnamespace
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{name}
      name: getnamespace
      operations:
      - method: GET
        name: getnamespace
        description: Kubernetes Get a namespace
        call: kubernetes.getnamespace
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{name}
      name: replacenamespace
      operations:
      - method: PUT
        name: replacenamespace
        description: Kubernetes Replace a namespace
        call: kubernetes.replacenamespace
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{name}
      name: deletenamespace
      operations:
      - method: DELETE
        name: deletenamespace
        description: Kubernetes Delete a namespace
        call: kubernetes.deletenamespace
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/pods
      name: listnamespacedpods
      operations:
      - method: GET
        name: listnamespacedpods
        description: Kubernetes List pods in a namespace
        call: kubernetes.listnamespacedpods
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/pods
      name: createnamespacedpod
      operations:
      - method: POST
        name: createnamespacedpod
        description: Kubernetes Create a pod
        call: kubernetes.createnamespacedpod
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/pods/{name}
      name: getnamespacedpod
      operations:
      - method: GET
        name: getnamespacedpod
        description: Kubernetes Get a pod
        call: kubernetes.getnamespacedpod
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/pods/{name}
      name: replacenamespacedpod
      operations:
      - method: PUT
        name: replacenamespacedpod
        description: Kubernetes Replace a pod
        call: kubernetes.replacenamespacedpod
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/pods/{name}
      name: deletenamespacedpod
      operations:
      - method: DELETE
        name: deletenamespacedpod
        description: Kubernetes Delete a pod
        call: kubernetes.deletenamespacedpod
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/pods/{name}/log
      name: readnamespacedpodlog
      operations:
      - method: GET
        name: readnamespacedpodlog
        description: Kubernetes Read pod logs
        call: kubernetes.readnamespacedpodlog
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/apps/v1/namespaces/{namespace}/deployments
      name: listnamespaceddeployments
      operations:
      - method: GET
        name: listnamespaceddeployments
        description: Kubernetes List deployments in a namespace
        call: kubernetes.listnamespaceddeployments
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/apps/v1/namespaces/{namespace}/deployments
      name: createnamespaceddeployment
      operations:
      - method: POST
        name: createnamespaceddeployment
        description: Kubernetes Create a deployment
        call: kubernetes.createnamespaceddeployment
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/apps/v1/namespaces/{namespace}/deployments/{name}
      name: getnamespaceddeployment
      operations:
      - method: GET
        name: getnamespaceddeployment
        description: Kubernetes Get a deployment
        call: kubernetes.getnamespaceddeployment
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/apps/v1/namespaces/{namespace}/deployments/{name}
      name: replacenamespaceddeployment
      operations:
      - method: PUT
        name: replacenamespaceddeployment
        description: Kubernetes Replace a deployment
        call: kubernetes.replacenamespaceddeployment
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/apps/v1/namespaces/{namespace}/deployments/{name}
      name: deletenamespaceddeployment
      operations:
      - method: DELETE
        name: deletenamespaceddeployment
        description: Kubernetes Delete a deployment
        call: kubernetes.deletenamespaceddeployment
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale
      name: getnamespaceddeploymentscale
      operations:
      - method: GET
        name: getnamespaceddeploymentscale
        description: Kubernetes Get deployment scale
        call: kubernetes.getnamespaceddeploymentscale
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/apps/v1/namespaces/{namespace}/deployments/{name}/scale
      name: replacenamespaceddeploymentscale
      operations:
      - method: PUT
        name: replacenamespaceddeploymentscale
        description: Kubernetes Scale a deployment
        call: kubernetes.replacenamespaceddeploymentscale
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/services
      name: listnamespacedservices
      operations:
      - method: GET
        name: listnamespacedservices
        description: Kubernetes List services in a namespace
        call: kubernetes.listnamespacedservices
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/services
      name: createnamespacedservice
      operations:
      - method: POST
        name: createnamespacedservice
        description: Kubernetes Create a service
        call: kubernetes.createnamespacedservice
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/services/{name}
      name: getnamespacedservice
      operations:
      - method: GET
        name: getnamespacedservice
        description: Kubernetes Get a service
        call: kubernetes.getnamespacedservice
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/services/{name}
      name: replacenamespacedservice
      operations:
      - method: PUT
        name: replacenamespacedservice
        description: Kubernetes Replace a service
        call: kubernetes.replacenamespacedservice
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/services/{name}
      name: deletenamespacedservice
      operations:
      - method: DELETE
        name: deletenamespacedservice
        description: Kubernetes Delete a service
        call: kubernetes.deletenamespacedservice
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/configmaps
      name: listnamespacedconfigmaps
      operations:
      - method: GET
        name: listnamespacedconfigmaps
        description: Kubernetes List ConfigMaps in a namespace
        call: kubernetes.listnamespacedconfigmaps
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/configmaps
      name: createnamespacedconfigmap
      operations:
      - method: POST
        name: createnamespacedconfigmap
        description: Kubernetes Create a ConfigMap
        call: kubernetes.createnamespacedconfigmap
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/secrets
      name: listnamespacedsecrets
      operations:
      - method: GET
        name: listnamespacedsecrets
        description: Kubernetes List Secrets in a namespace
        call: kubernetes.listnamespacedsecrets
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/namespaces/{namespace}/secrets
      name: createnamespacedsecret
      operations:
      - method: POST
        name: createnamespacedsecret
        description: Kubernetes Create a Secret
        call: kubernetes.createnamespacedsecret
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/nodes
      name: listnodes
      operations:
      - method: GET
        name: listnodes
        description: Kubernetes List nodes
        call: kubernetes.listnodes
        outputParameters:
        - type: object
          mapping: $.
    - path: /api/v1/nodes/{name}
      name: getnode
      operations:
      - method: GET
        name: getnode
        description: Kubernetes Get a node
        call: kubernetes.getnode
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/rbac.authorization.k8s.io/v1/clusterroles
      name: listclusterroles
      operations:
      - method: GET
        name: listclusterroles
        description: Kubernetes List ClusterRoles
        call: kubernetes.listclusterroles
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/rbac.authorization.k8s.io/v1/clusterroles
      name: createclusterrole
      operations:
      - method: POST
        name: createclusterrole
        description: Kubernetes Create a ClusterRole
        call: kubernetes.createclusterrole
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers
      name: listnamespacedhorizontalpodautoscalers
      operations:
      - method: GET
        name: listnamespacedhorizontalpodautoscalers
        description: Kubernetes List HorizontalPodAutoscalers in a namespace
        call: kubernetes.listnamespacedhorizontalpodautoscalers
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers
      name: createnamespacedhorizontalpodautoscaler
      operations:
      - method: POST
        name: createnamespacedhorizontalpodautoscaler
        description: Kubernetes Create a HorizontalPodAutoscaler
        call: kubernetes.createnamespacedhorizontalpodautoscaler
        outputParameters:
        - type: object
          mapping: $.
    - path: /apis/events.k8s.io/v1/namespaces/{namespace}/events
      name: listnamespacedevents
      operations:
      - method: GET
        name: listnamespacedevents
        description: Kubernetes List events in a namespace
        call: kubernetes.listnamespacedevents
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: kubernetes-mcp
    transport: http
    description: MCP adapter for Kubernetes API for AI agent use.
    tools:
    - name: listnamespaces
      description: Kubernetes List namespaces
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listnamespaces
      outputParameters:
      - type: object
        mapping: $.
    - name: createnamespace
      description: Kubernetes Create a namespace
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kubernetes.createnamespace
      outputParameters:
      - type: object
        mapping: $.
    - name: getnamespace
      description: Kubernetes Get a namespace
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.getnamespace
      outputParameters:
      - type: object
        mapping: $.
    - name: replacenamespace
      description: Kubernetes Replace a namespace
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: kubernetes.replacenamespace
      outputParameters:
      - type: object
        mapping: $.
    - name: deletenamespace
      description: Kubernetes Delete a namespace
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: kubernetes.deletenamespace
      outputParameters:
      - type: object
        mapping: $.
    - name: listnamespacedpods
      description: Kubernetes List pods in a namespace
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listnamespacedpods
      outputParameters:
      - type: object
        mapping: $.
    - name: createnamespacedpod
      description: Kubernetes Create a pod
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kubernetes.createnamespacedpod
      outputParameters:
      - type: object
        mapping: $.
    - name: getnamespacedpod
      description: Kubernetes Get a pod
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.getnamespacedpod
      outputParameters:
      - type: object
        mapping: $.
    - name: replacenamespacedpod
      description: Kubernetes Replace a pod
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: kubernetes.replacenamespacedpod
      outputParameters:
      - type: object
        mapping: $.
    - name: deletenamespacedpod
      description: Kubernetes Delete a pod
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: kubernetes.deletenamespacedpod
      outputParameters:
      - type: object
        mapping: $.
    - name: readnamespacedpodlog
      description: Kubernetes Read pod logs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.readnamespacedpodlog
      with:
        container: tools.container
        follow: tools.follow
        tailLines: tools.tailLines
        sinceSeconds: tools.sinceSeconds
      inputParameters:
      - name: container
        type: string
        description: Name of the container to read logs from. Defaults to only container if there is only one, otherwise required.
      - name: follow
        type: boolean
        description: Whether to stream log output. If false, returns current log snapshot.
      - name: tailLines
        type: integer
        description: Number of lines from the end of the log to retrieve.
      - name: sinceSeconds
        type: integer
        description: Only return logs newer than a relative duration in seconds.
      outputParameters:
      - type: object
        mapping: $.
    - name: listnamespaceddeployments
      description: Kubernetes List deployments in a namespace
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listnamespaceddeployments
      outputParameters:
      - type: object
        mapping: $.
    - name: createnamespaceddeployment
      description: Kubernetes Create a deployment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kubernetes.createnamespaceddeployment
      outputParameters:
      - type: object
        mapping: $.
    - name: getnamespaceddeployment
      description: Kubernetes Get a deployment
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.getnamespaceddeployment
      outputParameters:
      - type: object
        mapping: $.
    - name: replacenamespaceddeployment
      description: Kubernetes Replace a deployment
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: kubernetes.replacenamespaceddeployment
      outputParameters:
      - type: object
        mapping: $.
    - name: deletenamespaceddeployment
      description: Kubernetes Delete a deployment
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: kubernetes.deletenamespaceddeployment
      outputParameters:
      - type: object
        mapping: $.
    - name: getnamespaceddeploymentscale
      description: Kubernetes Get deployment scale
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.getnamespaceddeploymentscale
      outputParameters:
      - type: object
        mapping: $.
    - name: replacenamespaceddeploymentscale
      description: Kubernetes Scale a deployment
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: kubernetes.replacenamespaceddeploymentscale
      outputParameters:
      - type: object
        mapping: $.
    - name: listnamespacedservices
      description: Kubernetes List services in a namespace
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listnamespacedservices
      outputParameters:
      - type: object
        mapping: $.
    - name: createnamespacedservice
      description: Kubernetes Create a service
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kubernetes.createnamespacedservice
      outputParameters:
      - type: object
        mapping: $.
    - name: getnamespacedservice
      description: Kubernetes Get a service
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.getnamespacedservice
      outputParameters:
      - type: object
        mapping: $.
    - name: replacenamespacedservice
      description: Kubernetes Replace a service
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: kubernetes.replacenamespacedservice
      outputParameters:
      - type: object
        mapping: $.
    - name: deletenamespacedservice
      description: Kubernetes Delete a service
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: kubernetes.deletenamespacedservice
      outputParameters:
      - type: object
        mapping: $.
    - name: listnamespacedconfigmaps
      description: Kubernetes List ConfigMaps in a namespace
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listnamespacedconfigmaps
      outputParameters:
      - type: object
        mapping: $.
    - name: createnamespacedconfigmap
      description: Kubernetes Create a ConfigMap
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kubernetes.createnamespacedconfigmap
      outputParameters:
      - type: object
        mapping: $.
    - name: listnamespacedsecrets
      description: Kubernetes List Secrets in a namespace
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listnamespacedsecrets
      outputParameters:
      - type: object
        mapping: $.
    - name: createnamespacedsecret
      description: Kubernetes Create a Secret
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kubernetes.createnamespacedsecret
      outputParameters:
      - type: object
        mapping: $.
    - name: listnodes
      description: Kubernetes List nodes
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listnodes
      outputParameters:
      - type: object
        mapping: $.
    - name: getnode
      description: Kubernetes Get a node
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.getnode
      outputParameters:
      - type: object
        mapping: $.
    - name: listclusterroles
      description: Kubernetes List ClusterRoles
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kubernetes.listclusterroles
      outputParameters:
      - type: object
        mapping: $.
    - name: createclusterrole
      description: Kubernetes Create a ClusterRole
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kubernetes.createclusterrole
      outputParameters:
      - type: object
        mapping: $.
    - name: listnamespacedhorizontalpodautoscalers
      description: Kubernetes List HorizontalPodAutoscalers in a namespace
      hints:
        readOnly: true
        destructive: fa

# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kubernetes/refs/heads/main/capabilities/kubernetes-capability.yaml