Enables AI assistants to analyze projects and generate devpipe task configurations for Docker-based workflows, including auto-detection of Docker technology in project directories.
Allows generation of devpipe task configurations for ESLint, enabling AI assistants to help set up JavaScript/TypeScript linting tasks in development pipelines.
Supports Git-based change detection for running devpipe pipelines with the --since flag, enabling targeted task execution based on Git references.
Generates GitHub Actions workflow configurations from devpipe pipelines, automating CI/CD setup with devpipe integration including artifact uploads and result tracking.
Generates GitLab CI configuration files from devpipe pipelines, enabling automated CI/CD workflow creation based on existing devpipe task definitions.
Provides task template generation for Node.js projects including linting, testing, and building tasks, with automatic technology detection and configuration suggestions.
Offers task template generation for Python projects covering formatting, linting, type checking, and unit testing, with auto-detection capabilities for Python-based projects.
Enables generation of devpipe task configurations for Rust projects, allowing AI assistants to suggest and create Rust-specific development pipeline tasks.
Provides task template generation for TypeScript type checking and enables AI assistants to create TypeScript-specific devpipe task configurations.
Devpipe MCP Server
A Model Context Protocol (MCP) server that enables AI assistants to interact with devpipe - a fast, local pipeline runner for development workflows.
Features
This MCP server provides AI assistants with the ability to:
š List and analyze tasks from devpipe configurations (with verbose stats)
š Run pipelines with full control over execution flags
ā Validate configurations before running
š Access run results and metrics (JUnit, SARIF)
š Debug failures by reading task logs
š” Suggest optimizations for pipeline configurations
š”ļø Review security findings from SARIF reports
š§ Auto-detect technologies and suggest missing tasks
ā” Generate task configurations from templates
š Create complete configs from scratch
š Generate CI/CD configs (GitHub Actions, GitLab CI)
Prerequisites
Node.js 18 or higher
devpipe v0.0.8 or higher installed and accessible in PATH
brew install drewkhoury/tap/devpipeNote: This MCP is optimized for devpipe v0.0.8+ which includes updated default values and improved documentation.
Installation
Option 1: Install from npm (when published)
Option 2: Install from source
Configuration
For Windsurf/Cascade
Add to your Windsurf MCP settings file (usually ~/.windsurf/mcp.json or similar):
For Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
For Other MCP Clients
The server runs on stdio, so you can connect any MCP client using:
Usage
Once configured, you can interact with devpipe through your AI assistant. Here are some example requests:
List Tasks
Run Pipeline
Validate Configuration
Debug Failures
Analyze and Optimize
Create Tasks
Bootstrap New Projects
Generate CI/CD
Security Review
MCP Tools
The server provides the following tools:
list_tasks
Parse and list all tasks from a config.toml file.
Parameters:
config(optional): Path to config.toml file
Example:
run_pipeline
Execute devpipe with specified flags.
Parameters:
config(optional): Path to config.tomlonly(optional): Array of task IDs to runskip(optional): Array of task IDs to skipsince(optional): Git reference for change-based runsfixType(optional):auto,helper, ornoneui(optional):basicorfulldashboard(optional): Show dashboard viewfailFast(optional): Stop on first failurefast(optional): Skip slow tasksdryRun(optional): Show what would runverbose(optional): Verbose outputnoColor(optional): Disable colors
Example:
validate_config
Validate devpipe configuration files.
Parameters:
configs(optional): Array of config file paths
Example:
get_last_run
Get results from the most recent pipeline run.
Parameters:
config(optional): Path to config.toml
view_run_logs
Read logs from a specific task or the entire pipeline.
Parameters:
taskId(optional): Task ID to view logs forconfig(optional): Path to config.toml
Example:
parse_metrics
Parse JUnit or SARIF metrics files.
Parameters:
metricsPath(required): Path to metrics fileformat(required):junitorsarif
Example:
get_dashboard_data
Extract aggregated data from summary.json.
Parameters:
config(optional): Path to config.toml
check_devpipe
Check if devpipe is installed and get version info.
list_tasks_verbose
List tasks using devpipe list --verbose command with execution statistics.
Parameters:
config(optional): Path to config.toml file
Example:
Output: Shows task table with average execution times and statistics.
analyze_project
Analyze project directory to detect technologies and suggest missing tasks.
Parameters:
projectPath(optional): Path to project directory (defaults to current)
Example:
Output:
generate_task
Generate task configuration from template for a specific technology or phase header.
Parameters:
technology(required): Technology name (e.g., "Go", "Python", "Node.js", "TypeScript", "Rust") or "phase" for phase headerstaskType(required): Task type (e.g., "check-format", "check-lint", "test-unit", "build") or phase nametaskId(optional): Custom task ID for regular tasks, or description for phase headers
Example (Regular Task):
Output:
Example (Phase Header):
Output:
Note: Phase headers have no required fields - they're organizational markers. Common practice is to include name or desc (or both), but neither is strictly required.
Supported Technologies:
Go: check-format, check-lint, check-static, test-unit, build
Python: check-format, check-lint, check-types, test-unit
Node.js: check-lint, test-unit, build
TypeScript: check-types
phase: Creates phase headers (organizational markers, no command/type)
create_config
Create a complete config.toml file from scratch with auto-detected tasks.
Parameters:
projectPath(optional): Path to project directory (defaults to current)includeDefaults(optional): Include [defaults] section (default: true)autoDetect(optional): Auto-detect technologies and generate tasks (default: true)
Example:
Output: Complete config.toml with:
Defaults section (outputRoot, fastThreshold=300s, animationRefreshMs=500ms, git settings)
Task defaults (enabled, workdir)
Auto-detected tasks organized by phase
Ready-to-use TOML configuration compatible with devpipe v0.0.8+
Use Case: Bootstrap a new project with devpipe configuration.
Note: Generated configs use devpipe v0.0.8 defaults (fastThreshold=300s, not 5000ms).
generate_ci_config
Generate CI/CD configuration file (GitHub Actions or GitLab CI) from devpipe config.
Parameters:
config(optional): Path to config.toml fileplatform(required):githuborgitlab
Example:
Output (GitHub Actions):
MCP Resources
The server exposes these resources:
devpipe://config- Current config.toml contentsdevpipe://tasks- All task definitionsdevpipe://last-run- Most recent run resultsdevpipe://summary- Aggregated pipeline summarydevpipe://schema- JSON Schema for config.toml validation (fetched from official devpipe repo)
MCP Prompts
Pre-configured prompts for common workflows:
analyze-config
Analyze the devpipe configuration and suggest improvements.
debug-failure
Help debug why a specific task failed.
Arguments:
taskId(required): The task that failed
optimize-pipeline
Suggest optimizations for the pipeline.
create-task
Help create a new task for a technology.
Arguments:
technology(required): Technology name (e.g., "Go", "Python")taskType(optional):check,build, ortest
security-review
Review SARIF security findings and provide recommendations.
Examples
See EXAMPLES.md for detailed usage examples and workflows.
Quick Example
Development
Building from Source
Project Structure
Watch Mode
Troubleshooting
devpipe not found
If you get "devpipe not found" errors:
Config file not found
The MCP server searches for config.toml in:
Current directory
Parent directories (up to root)
You can also specify the config path explicitly in tool calls.
Permission errors
Ensure the MCP server has permission to:
Read config files
Execute devpipe commands
Access the
.devpipeoutput directory
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
License
MIT License - see LICENSE file for details.
Related Projects
devpipe - The pipeline runner this MCP server integrates with
Model Context Protocol - The protocol specification
Support
Issues: GitHub Issues
Discussions: GitHub Discussions
devpipe: devpipe GitHub
Changelog
See CHANGELOG.md for version history and changes.