feat(portainer-api): add Portainer REST API skill #16

Open
hijynx wants to merge 2 commits from feat/portainer-api-skill into main
Collaborator

Summary

  • New portainer-api skill: interact with a Portainer CE/BE server via its REST API using plain curl + jq (no CLI or MCP server)
  • Token-only auth: user creates an access token in the UI; the agent never handles credentials
  • Endpoint listing with corrected EndpointType mapping (1=Docker, 2=Agent on Docker, 3=Azure, 4=Edge on Docker, 5=K8s local, 6=Agent on K8s, 7=Edge on K8s)
  • Docker Engine API proxy routes for containers, images, volumes, networks
  • Standalone Compose stack lifecycle (/stacks/create/standalone/..., start/stop/delete)
  • Error-code table and verified gotchas
  • SkillSpector baseline entries for the new skill

Why

Gives agents a direct HTTP path to manage Portainer-managed Docker resources without installing the Portainer CLI or configuring an MCP server. All routes verified against Portainer develop source (api/docs/swagger.yaml and Go source); not yet exercised against a live instance.

## Summary - New `portainer-api` skill: interact with a Portainer CE/BE server via its REST API using plain `curl` + `jq` (no CLI or MCP server) - Token-only auth: user creates an access token in the UI; the agent never handles credentials - Endpoint listing with corrected `EndpointType` mapping (1=Docker, 2=Agent on Docker, 3=Azure, 4=Edge on Docker, 5=K8s local, 6=Agent on K8s, 7=Edge on K8s) - Docker Engine API proxy routes for containers, images, volumes, networks - Standalone Compose stack lifecycle (`/stacks/create/standalone/...`, start/stop/delete) - Error-code table and verified gotchas - SkillSpector baseline entries for the new skill ## Why Gives agents a direct HTTP path to manage Portainer-managed Docker resources without installing the Portainer CLI or configuring an MCP server. All routes verified against Portainer `develop` source (`api/docs/swagger.yaml` and Go source); not yet exercised against a live instance.
fix(portainer-api): token-only auth, correct endpoint type mapping
All checks were successful
skills-scan / validate (pull_request) Successful in 50s
skills-scan / scan (pull_request) Successful in 2m3s
3746b6d941
- agent never handles credentials; user creates access token in UI
- remove POST /auth and /auth/logout from skill (token-only workflow)
- fix EndpointType mapping: no Swarm type; 2=Agent on Docker, 4=Edge on Docker
- fix Type filter example, host description, container-create body wording
All checks were successful
skills-scan / validate (pull_request) Successful in 50s
skills-scan / scan (pull_request) Successful in 2m3s
This pull request doesn't have enough approvals yet. 0 of 1 approvals granted.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin feat/portainer-api-skill:feat/portainer-api-skill
git switch feat/portainer-api-skill
Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
w33ble/agents!16
No description provided.