Skip to main content
Glama
kruyvanna

Woodpecker CI MCP Server

by kruyvanna

Woodpecker CI MCP Server

A Model Context Protocol (MCP) server that connects AI assistants to Woodpecker CI. Debug pipeline failures, analyze build logs, troubleshoot CI/CD configurations, and act on pipelines and repositories (trigger, restart, cancel, approve/decline, activate, update settings) with AI assistance.

MCP Client Setup

Add to your MCP client configuration:

Standalone Binary

{
  "woodpecker-ci": {
    "command": "woodpecker-mcp",
    "env": {
      "WOODPECKER_TOKEN": "your-token-here",
      "WOODPECKER_URL": "https://your-woodpecker-instance.com"
    }
  }
}

Docker

{
  "woodpecker-ci": {
    "command": "docker",
    "args": [
      "run",
      "-i",
      "--rm",
      "-e", "WOODPECKER_TOKEN",
      "-e", "WOODPECKER_URL",
      "ghcr.io/j04n-f/woodpecker-mcp"
    ],
    "env": {
      "WOODPECKER_TOKEN": "your-token-here",
      "WOODPECKER_URL": "https://your-woodpecker-instance.com"
    }
  }
}

Related MCP server: GoCD MCP Server

Quick Start

  1. Install dependencies

    bun install
  2. Run the server

    # Development with inspector
    bun run dev
  3. Set environment variables using Inspector

    WOODPECKER_URL="https://your-woodpecker-instance.com"
    WOODPECKER_TOKEN="your-personal-access-token"
  4. Start development environment

    # Start Gitea + Woodpecker CI for testing
    ./scripts/setup-environment.sh
    
    # Access services:
    # - Gitea: http://localhost:3000 (woodpecker/woodpecker123)
    # - Woodpecker: http://localhost:8000

Configuration

Getting Your Woodpecker Token

  1. Go to your Woodpecker CI instance

  2. Click your profile icon → "CLI & API"

  3. Copy the personal access token

  4. Set it as WOODPECKER_TOKEN

API Reference

Tool

Description

Parameters

search_repository

Find repository by name

name (e.g., "owner/repo")

list_repositories

List all repositories

Optional: page, perPage, active, trusted

get_repository_by_id

Get repository details

repoId

activate_repository

Activate a repository

forgeRemoteId

update_repository

Update repository settings

repoId, optional: allowPull, allowDeploy, requireApproval, timeout, visibility, configFile, cancelPreviousPipelineEvents, trustedNetwork, trustedVolumes, trustedSecurity

repair_repository

Repair a repository's webhook

repoId

list_pipelines

List repository pipelines

repoId, optional: before, after, pagination

get_pipeline

Get detailed pipeline info

repoId, number

get_pipeline_config

View pipeline configuration

repoId, number

create_pipeline

Trigger a manual pipeline

repoId, branch, optional: message, variables

restart_pipeline

Restart a pipeline

repoId, number, optional: event, deployTo, deployTask, environment

cancel_pipeline

Cancel a running pipeline

repoId, number

approve_pipeline

Approve a pipeline awaiting approval

repoId, number

decline_pipeline

Decline a pipeline awaiting approval

repoId, number

get_step_logs

Get logs for debugging

repoId, number, stepId

AI Prompts

Prompt

Description

review-pipeline-error

Systematic analysis of pipeline failures

Development

Available Commands

# Development
bun run dev          # Start with inspector
bun run build        # Build production binary

# Code Quality
bun run lint         # Check code style
bun run lint:fix     # Auto-fix issues

Local Testing Environment

The included Docker Compose setup provides:

  • Gitea: Git forge with webhooks

  • Woodpecker CI: Complete CI/CD environment

  • Test repository: Sample project with pipeline configuration

Perfect for testing MCP integration without external dependencies.

Examples

Debug a Failed Pipeline

AI: Can you check why pipeline #42 failed for repository owner/project?

Analyze Build Performance

AI: Show me the recent pipeline performance for my main repository and identify any bottlenecks.

Configuration Review

AI: Review the pipeline configuration for repository owner/project and suggest improvements.

Contributing

  1. Fork the repository

  2. Create a feature branch: git checkout -b feature/amazing-feature

  3. Follow the coding standards: bun run lint

  4. Commit changes: git commit -m 'feat: add amazing feature'

  5. Submit a Pull Request

License

MIT License - see LICENSE for details.


Ready to supercharge your Woodpecker CI workflows with AI assistance! 🚀🤖

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Integrates GitLab with AI assistants to manage merge requests, analyze CI/CD pipelines, and create Architecture Decision Records. It enables seamless code searching, pipeline triggering, and deployment management through the Model Context Protocol.
    1
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables AI assistants to query and manage GoCD pipelines, stages, and jobs through the Model Context Protocol. It allows users to trigger builds, analyze failures, and access build logs or artifacts using the GoCD REST API.
    31 npm
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with GitHub repositories, issues, pull requests, and content via the Model Context Protocol.
    1
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Enables AI assistants to interact with Azure DevOps, providing tools for managing work items, repositories, pipelines, and more through the Model Context Protocol.
    100
    5 npm
    MIT