CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

Drone CI/CD MCP Server

yusiwen/drone-mcp-server
STDIOregistry active
Summary

Connects to Drone CI/CD instances via personal access token and exposes 47 operations across the full platform surface. You get repo management (enable, disable, sync), build control (list, restart, cancel, promote, rollback), cron job scheduling, secret storage, and approval workflows for gated deployments. Useful when you want to query build status, trigger deployments, or manage CI configuration without leaving your chat interface. Supports both stdio for local MCP clients and SSE over HTTP for remote access. Requires DRONE_SERVER and DRONE_TOKEN environment variables pointed at your Drone instance.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Drone MCP Server

A Model Context Protocol (MCP) server for interacting with Drone CI/CD. This server provides tools and resources to query build information, repositories, and more from your Drone instance.

Features

  • List repositories: Get all repositories in your Drone instance
  • List builds: List builds for a specific repository
  • Get build details: Retrieve detailed information about a specific build
  • Resource access: Access build details via resource URIs

Installation

go mod tidy
go build -o drone-mcp-server .

Configuration

Set the following environment variables:

export DRONE_SERVER=https://drone.example.com
export DRONE_TOKEN=your_drone_token
# Optional: For SSE transport authentication
export MCP_AUTH_TOKEN=your_sse_auth_token

The DRONE_TOKEN should be a personal access token with appropriate permissions to read repositories and builds.

SSE Authentication: When using SSE transport, you can optionally set MCP_AUTH_TOKEN to require Bearer token authentication. Clients must include Authorization: Bearer <token> header in their requests. If not set, SSE endpoints will be publicly accessible (use with caution in production).

Usage

As an MCP server

Add the server to your MCP client configuration (e.g., Claude Desktop):

{
  "mcpServers": {
    "drone": {
      "command": "/path/to/drone-mcp-server",
      "env": {
        "DRONE_SERVER": "https://drone.example.com",
        "DRONE_TOKEN": "your_token"
      }
    }
  }
}

Direct execution

You can run the server directly for testing:

# Stdio mode (default)
./drone-mcp-server

# SSE HTTP mode
./drone-mcp-server --sse --host localhost --port 8080

Transport Modes

  1. Stdio mode (default): Communicates via stdin/stdout using the MCP protocol. Suitable for local integration with MCP clients.

  2. SSE HTTP mode: Uses Server-Sent Events (SSE) over HTTP. Suitable for remote access or testing.

    # Without authentication (public access)
    ./drone-mcp-server --sse --host 0.0.0.0 --port 8080
    
    # With authentication (recommended for production)
     export MCP_AUTH_TOKEN=your-secret-token
    ./drone-mcp-server --sse --host 0.0.0.0 --port 8080
    

    The server will be available at http://localhost:8080/ for SSE connections.

    Authentication: If MCP_AUTH_TOKEN is set, clients must include the header:

    Authorization: Bearer your-secret-token
    

Available Tools

Repository Management

list_repos

Lists all repositories in your Drone instance.

get_repo

Get repository details.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

enable_repo

Enable a repository.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

disable_repo

Disable a repository.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

repair_repo

Repair a repository.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

chown_repo

Change repository ownership.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

sync_repos

Synchronize repository list.

list_incomplete

List repositories with incomplete builds.

Build Management

list_builds

Lists builds for a specific repository.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

get_build

Get detailed information about a specific build.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number

get_build_last

Get the last build for a repository (optionally by branch).

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • branch (string, optional): Branch name

get_build_logs

Get logs for a specific build stage and step.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number
  • stage (number): Stage number
  • step (number): Step number

restart_build

Restart a build (optionally with parameters).

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number
  • params (object, optional): Build parameters

cancel_build

Cancel a running build.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number

promote_build

Promote a build to a target environment.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number
  • target (string): Target environment
  • params (object, optional): Promotion parameters

rollback_build

Rollback a deployment to a previous build.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number
  • target (string): Target environment
  • params (object, optional): Rollback parameters

approve_build

Approve a build stage (for gated deployments).

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number
  • stage (number): Stage number

decline_build

Decline a build stage (for gated deployments).

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • build (number): Build number
  • stage (number): Stage number

create_build

Create a new build from a commit or branch.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • commit (string, optional): Commit SHA
  • branch (string, optional): Branch name
  • params (object, optional): Build parameters

Cron Job Management

list_crons

List cron jobs for a repository.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

get_cron

Get cron job details.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • cron (string): Cron job name

create_cron

Create a new cron job.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • name (string): Cron job name
  • expr (string): Cron expression
  • branch (string): Branch name
  • disable (boolean, optional): Disable the cron job

delete_cron

Delete a cron job.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • cron (string): Cron job name

execute_cron

Execute a cron job immediately.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • cron (string): Cron job name

Secret Management

list_secrets

List repository secrets.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name

get_secret

Get repository secret details.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • name (string): Secret name

create_secret

Create a repository secret.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • name (string): Secret name
  • value (string): Secret value
  • pull_request (boolean, optional): Allow in pull requests
  • pull_request_push (boolean, optional): Allow in pull request push events

update_secret

Update a repository secret.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • name (string): Secret name
  • value (string): Secret value
  • pull_request (boolean, optional): Allow in pull requests
  • pull_request_push (boolean, optional): Allow in pull request push events

delete_secret

Delete a repository secret.

Arguments:

  • owner (string): Repository owner
  • repo (string): Repository name
  • name (string): Secret name

Organization Secrets

list_org_secrets

List organization secrets.

Arguments:

  • namespace (string): Organization namespace

get_org_secret

Get organization secret details.

Arguments:

  • namespace (string): Organization namespace
  • name (string): Secret name

create_org_secret

Create an organization secret.

Arguments:

  • namespace (string): Organization namespace
  • name (string): Secret name
  • value (string): Secret value
  • pull_request (boolean, optional): Allow in pull requests
  • pull_request_push (boolean, optional): Allow in pull request push events

update_org_secret

Update an organization secret.

Arguments:

  • namespace (string): Organization namespace
  • name (string): Secret name
  • value (string): Secret value
  • pull_request (boolean, optional): Allow in pull requests
  • pull_request_push (boolean, optional): Allow in pull request push events

delete_org_secret

Delete an organization secret.

Arguments:

  • namespace (string): Organization namespace
  • name (string): Secret name

User Management

get_self

Get current authenticated user.

list_users

List all users.

get_user

Get user details.

Arguments:

  • login (string): User login name

create_user

Create a new user.

Arguments:

  • login (string): User login name
  • email (string, optional): User email
  • admin (boolean, optional): Admin privileges
  • active (boolean, optional): Active status
  • token (string, optional): User token

update_user

Update a user.

Arguments:

  • login (string): User login name
  • admin (boolean, optional): Admin privileges
  • active (boolean, optional): Active status

delete_user

Delete a user.

Arguments:

  • login (string): User login name

Template Management

list_templates

List templates (optionally by namespace).

Arguments:

  • namespace (string, optional): Template namespace

get_template

Get template details and data.

Arguments:

  • namespace (string): Template namespace
  • name (string): Template name

create_template

Create a new template.

Arguments:

  • namespace (string): Template namespace
  • name (string): Template name
  • data (string): Template data (YAML)

update_template

Update a template.

Arguments:

  • namespace (string): Template namespace
  • name (string): Template name
  • data (string): Template data (YAML)

delete_template

Delete a template.

Arguments:

  • namespace (string): Template namespace
  • name (string): Template name

Resources

Build details resource

Access build details via resource URI: drone://builds/{owner}/{repo}/{build}

Example:

Read resource: drone://builds/owner1/repo1/123

Docker

A multi-architecture Docker image is available on GitHub Container Registry:

# Pull the latest image
docker pull ghcr.io/yusiwen/drone-mcp-server:latest

# Run in stdio mode (for MCP clients)
docker run -e DRONE_SERVER=https://drone.example.com \
           -e DRONE_TOKEN=your_token \
           ghcr.io/yusiwen/drone-mcp-server

# Run in SSE mode with custom port
docker run -e DRONE_SERVER=https://drone.example.com \
           -e DRONE_TOKEN=your_token \
           -p 8080:8080 \
           ghcr.io/yusiwen/drone-mcp-server --sse --host 0.0.0.0

# Run with SSE authentication
docker run -e DRONE_SERVER=https://drone.example.com \
           -e DRONE_TOKEN=your_token \
           -e MCP_AUTH_TOKEN=your_sse_token \
           -p 8080:8080 \
           ghcr.io/yusiwen/drone-mcp-server --sse --host 0.0.0.0

Docker Compose Example

version: '3.8'
services:
  drone-mcp-server:
    image: ghcr.io/yusiwen/drone-mcp-server:latest
    environment:
      DRONE_SERVER: https://drone.example.com
      DRONE_TOKEN: ${DRONE_TOKEN}
      MCP_AUTH_TOKEN: ${MCP_AUTH_TOKEN:-}
    ports:
      - "8080:8080"
    command: ["--sse", "--host", "0.0.0.0"]
    restart: unless-stopped

Releases

Pre-built binaries are available for Linux (x64, arm64), macOS (x64, arm64), and Windows (x64) in the GitHub Releases.

Version Information

The binary includes version information:

./drone-mcp-server --version

Output example:

drone-mcp-server
Version: v1.0.0
Commit: abc123
Build date: 2024-01-01T00:00:00Z
Go version: go1.25.1

Project Structure

.
├── main.go              # Main entry point, handles command line arguments and server startup
├── tool/                # Tool handlers module
│   ├── build.go         # Build-related tools (list_builds, get_build, restart_build, etc.)
│   ├── repo.go          # Repository-related tools (list_repos, enable_repo, disable_repo, etc.)
│   ├── resource.go      # Resource handling (drone://builds/...)
│   ├── cron.go          # Cron job management tools
│   ├── secret.go        # Secret management tools
│   ├── user.go          # User management tools
│   └── template.go      # Template management tools
├── test_env.sh          # Test script (uses environment variables)
├── test_mcp.go          # MCP integration test
└── README.md

Development

Dependencies

  • Go 1.21+
  • github.com/modelcontextprotocol/go-sdk - MCP SDK
  • github.com/drone/drone-go - Drone API client

Building

go build -o drone-mcp-server .

Testing

Set environment variables and run the server:

export DRONE_SERVER=...
export DRONE_TOKEN=...
./drone-mcp-server

License

MIT

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Categories
Automation & Workflows
Registryactive
Packageghcr.io/yusiwen/drone-mcp-server:1.0.0
TransportSTDIO
UpdatedApr 22, 2026
View on GitHub

Related Automation & Workflows MCP Servers

View all →
n8n Workflow Builder

makafeli/n8n-workflow-builder

AI assistant integration for n8n workflow automation through Model Context Protocol (MCP). Connect Claude Desktop, ChatGPT, and other AI assistants to n8n for natural language workflow management.
519
N8N

illuminaresolutions/n8n-mcp-server

MCP server implementation for n8n workflow automation
120
Make Mcp

danishashko/make-mcp

Unofficial MCP server for Make.com automation - build, validate & deploy scenarios via AI
5
n8n Manager MCP

lukisch/n8n-manager-mcp

MCP server for n8n workflow management -- view, create, sync and manage workflows via AI.
1
Airflow

io.github.us-all/airflow

Airflow MCP — list DAGs/runs/task instances, tail logs, trigger and clear (write-gated)
Mcp Workflow

io.github.infoinlet-marketplace/mcp-workflow

Workflow automation for AI agents — browse 125 connectors + 234 templates, run via FluxTurn.