feat: add woodpecker-mcp Docker image + update CI

This commit is contained in:
tobjend 2026-06-21 17:51:31 +02:00
parent 0fbbc90202
commit 619f16292e
3 changed files with 78 additions and 1 deletions

View file

@ -9,6 +9,17 @@ pipeline:
secrets:
- forgejo_registry_token
commands:
- docker build -t forgejo.corentic.eu/corentic/mcp-fleet-forgejo:latest -f forgejo/Dockerfile forgejo/
- docker login forgejo.corentic.eu -u tobi -p $FORGEJO_REGISTRY_TOKEN
- docker build -t forgejo.corentic.eu/corentic/mcp-fleet-forgejo:latest -f forgejo/Dockerfile forgejo/
- docker push forgejo.corentic.eu/corentic/mcp-fleet-forgejo:latest
build-woodpecker:
image: docker:latest
volumes:
- /var/run/docker.sock:/var/run/docker.sock
secrets:
- forgejo_registry_token
commands:
- docker login forgejo.corentic.eu -u tobi -p $FORGEJO_REGISTRY_TOKEN
- docker build -t forgejo.corentic.eu/corentic/mcp-fleet-woodpecker:latest -f woodpecker/Dockerfile woodpecker/
- docker push forgejo.corentic.eu/corentic/mcp-fleet-woodpecker:latest

7
woodpecker/Dockerfile Normal file
View file

@ -0,0 +1,7 @@
FROM node:22-slim
RUN npm install -g mcp-proxy@6.5.2 @devpuccino/mcp-woodpecker@1.1.2
EXPOSE 8102
CMD ["mcp-proxy", "--port", "8102", "--host", "0.0.0.0", "--", "mcp-woodpecker"]

59
woodpecker/README.md Normal file
View file

@ -0,0 +1,59 @@
# woodpecker-mcp
MCP server for interacting with Woodpecker CI 3.13.0+.
Source: [`@devpuccino/mcp-woodpecker`](https://www.npmjs.com/package/@devpuccino/mcp-woodpecker)
## Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| `WOODPECKER_URL` | Yes | Base URL of the Woodpecker instance (e.g. `https://woodpecker.corentic.eu`) |
| `WOODPECKER_API_KEY` | Yes | Woodpecker API key with required scopes |
## Usage
```bash
docker run -d \
--name woodpecker-mcp \
-p 8102:8102 \
-e WOODPECKER_URL=https://woodpecker.corentic.eu \
-e WOODPECKER_API_KEY=your_key_here \
forgejo.corentic.eu/corentic/mcp-fleet-woodpecker:latest
```
## Tools
- `activate_repository`
- `cancel_pipeline`
- `create_cron`
- `create_org_secret`
- `create_registry`
- `create_secret`
- `delete_cron`
- `delete_org_secret`
- `delete_pipeline_logs`
- `delete_registry`
- `delete_repository`
- `delete_secret`
- `get_cron`
- `get_current_user`
- `get_org_secret`
- `get_pipeline`
- `get_pipeline_logs`
- `get_pipeline_status`
- `get_registry`
- `get_repository`
- `get_secret`
- `list_crons`
- `list_org_secrets`
- `list_pipelines`
- `list_registries`
- `list_repositories`
- `list_secrets`
- `lookup_organization`
- `trigger_pipeline`
- `update_cron`
- `update_org_secret`
- `update_repository`
- `update_secret`