Podman · Capability
supports a RESTful API for the Libpod library — quadlets
supports a RESTful API for the Libpod library — quadlets. 6 operations. Lead operation: Remove quadlet files (batch operation). Self-contained Naftiko capability covering one Podman business surface.
What You Can Do
DELETE
Quadletdeletealllibpod
— Remove quadlet files (batch operation)
/v1/libpod/quadlets
POST
Quadletinstalllibpod
— Install quadlet files
/v1/libpod/quadlets
GET
Quadletlistlibpod
— List quadlets
/v1/libpod/quadlets/json
DELETE
Quadletdeletelibpod
— Remove a quadlet file
/v1/libpod/quadlets/{name}
GET
Quadletexistslibpod
— Check if quadlet exists
/v1/libpod/quadlets/{name}/exists
GET
Quadletfilelibpod
— Get quadlet file
/v1/libpod/quadlets/{name}/file
MCP Tools
remove-quadlet-files-batch-operation
Remove quadlet files (batch operation)
idempotent
install-quadlet-files
Install quadlet files
list-quadlets
List quadlets
read-only
idempotent
remove-quadlet-file
Remove a quadlet file
idempotent
check-if-quadlet-exists
Check if quadlet exists
read-only
idempotent
get-quadlet-file
Get quadlet file
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: supports a RESTful API for the Libpod library — quadlets
description: 'supports a RESTful API for the Libpod library — quadlets. 6 operations. Lead operation: Remove quadlet files
(batch operation). Self-contained Naftiko capability covering one Podman business surface.'
tags:
- Podman
- quadlets
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
PODMAN_API_KEY: PODMAN_API_KEY
capability:
consumes:
- type: http
namespace: podman-quadlets
baseUri: http://podman.io
description: supports a RESTful API for the Libpod library — quadlets business capability. Self-contained, no shared references.
resources:
- name: libpod-quadlets
path: /libpod/quadlets
operations:
- name: quadletdeletealllibpod
method: DELETE
description: Remove quadlet files (batch operation)
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: quadlets
in: query
type: array
description: Names of quadlets to remove (e.g., "myapp.container"). Required unless all=true
- name: all
in: query
type: boolean
description: Remove all quadlets for the current user
- name: force
in: query
type: boolean
description: Remove running quadlets by stopping them first
- name: ignore
in: query
type: boolean
description: Do not error for quadlets that do not exist
- name: reload-systemd
in: query
type: boolean
description: Reload systemd after removing quadlets
- name: quadletinstalllibpod
method: POST
description: Install quadlet files
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: replace
in: query
type: boolean
description: Replace the installation files even if the files already exists
- name: reload-systemd
in: query
type: boolean
description: Reload systemd after installing quadlets
- name: request
in: body
type: string
description: 'Quadlet files to install. Can be provided as:'
- name: libpod-quadlets-json
path: /libpod/quadlets/json
operations:
- name: quadletlistlibpod
method: GET
description: List quadlets
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: filters
in: query
type: string
description: JSON encoded value of the filters (a map[string][]string).
- name: libpod-quadlets-name
path: /libpod/quadlets/{name}
operations:
- name: quadletdeletelibpod
method: DELETE
description: Remove a quadlet file
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: path
type: string
description: the name of the quadlet with extension (e.g., "myapp.container")
required: true
- name: force
in: query
type: boolean
description: Remove running quadlet by stopping it first
- name: ignore
in: query
type: boolean
description: Do not error if the quadlet does not exist
- name: reload-systemd
in: query
type: boolean
description: Reload systemd after removing the quadlet
- name: libpod-quadlets-name-exists
path: /libpod/quadlets/{name}/exists
operations:
- name: quadletexistslibpod
method: GET
description: Check if quadlet exists
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: path
type: string
description: the name of the quadlet with extension (e.g., "myapp.container")
required: true
- name: libpod-quadlets-name-file
path: /libpod/quadlets/{name}/file
operations:
- name: quadletfilelibpod
method: GET
description: Get quadlet file
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: name
in: path
type: string
description: the name of the quadlet with extension (e.g., "myapp.container")
required: true
exposes:
- type: rest
namespace: podman-quadlets-rest
port: 8080
description: REST adapter for supports a RESTful API for the Libpod library — quadlets. One Spectral-compliant resource
per consumed operation, prefixed with /v1.
resources:
- path: /v1/libpod/quadlets
name: libpod-quadlets
description: REST surface for libpod-quadlets.
operations:
- method: DELETE
name: quadletdeletealllibpod
description: Remove quadlet files (batch operation)
call: podman-quadlets.quadletdeletealllibpod
with:
quadlets: rest.quadlets
all: rest.all
force: rest.force
ignore: rest.ignore
reload-systemd: rest.reload-systemd
outputParameters:
- type: object
mapping: $.
- method: POST
name: quadletinstalllibpod
description: Install quadlet files
call: podman-quadlets.quadletinstalllibpod
with:
replace: rest.replace
reload-systemd: rest.reload-systemd
request: rest.request
outputParameters:
- type: object
mapping: $.
- path: /v1/libpod/quadlets/json
name: libpod-quadlets-json
description: REST surface for libpod-quadlets-json.
operations:
- method: GET
name: quadletlistlibpod
description: List quadlets
call: podman-quadlets.quadletlistlibpod
with:
filters: rest.filters
outputParameters:
- type: object
mapping: $.
- path: /v1/libpod/quadlets/{name}
name: libpod-quadlets-name
description: REST surface for libpod-quadlets-name.
operations:
- method: DELETE
name: quadletdeletelibpod
description: Remove a quadlet file
call: podman-quadlets.quadletdeletelibpod
with:
name: rest.name
force: rest.force
ignore: rest.ignore
reload-systemd: rest.reload-systemd
outputParameters:
- type: object
mapping: $.
- path: /v1/libpod/quadlets/{name}/exists
name: libpod-quadlets-name-exists
description: REST surface for libpod-quadlets-name-exists.
operations:
- method: GET
name: quadletexistslibpod
description: Check if quadlet exists
call: podman-quadlets.quadletexistslibpod
with:
name: rest.name
outputParameters:
- type: object
mapping: $.
- path: /v1/libpod/quadlets/{name}/file
name: libpod-quadlets-name-file
description: REST surface for libpod-quadlets-name-file.
operations:
- method: GET
name: quadletfilelibpod
description: Get quadlet file
call: podman-quadlets.quadletfilelibpod
with:
name: rest.name
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: podman-quadlets-mcp
port: 9090
transport: http
description: MCP adapter for supports a RESTful API for the Libpod library — quadlets. One tool per consumed operation,
routed inline through this capability's consumes block.
tools:
- name: remove-quadlet-files-batch-operation
description: Remove quadlet files (batch operation)
hints:
readOnly: false
destructive: true
idempotent: true
call: podman-quadlets.quadletdeletealllibpod
with:
quadlets: tools.quadlets
all: tools.all
force: tools.force
ignore: tools.ignore
reload-systemd: tools.reload-systemd
outputParameters:
- type: object
mapping: $.
- name: install-quadlet-files
description: Install quadlet files
hints:
readOnly: false
destructive: false
idempotent: false
call: podman-quadlets.quadletinstalllibpod
with:
replace: tools.replace
reload-systemd: tools.reload-systemd
request: tools.request
outputParameters:
- type: object
mapping: $.
- name: list-quadlets
description: List quadlets
hints:
readOnly: true
destructive: false
idempotent: true
call: podman-quadlets.quadletlistlibpod
with:
filters: tools.filters
outputParameters:
- type: object
mapping: $.
- name: remove-quadlet-file
description: Remove a quadlet file
hints:
readOnly: false
destructive: true
idempotent: true
call: podman-quadlets.quadletdeletelibpod
with:
name: tools.name
force: tools.force
ignore: tools.ignore
reload-systemd: tools.reload-systemd
outputParameters:
- type: object
mapping: $.
- name: check-if-quadlet-exists
description: Check if quadlet exists
hints:
readOnly: true
destructive: false
idempotent: true
call: podman-quadlets.quadletexistslibpod
with:
name: tools.name
outputParameters:
- type: object
mapping: $.
- name: get-quadlet-file
description: Get quadlet file
hints:
readOnly: true
destructive: false
idempotent: true
call: podman-quadlets.quadletfilelibpod
with:
name: tools.name
outputParameters:
- type: object
mapping: $.