prow
Prow CI MCP Server
claude mcp add --transport stdio redhat-community-ai-tools-prow-mcp-server uv run /path/to/prow-mcp-server/.venv/bin/python /path/to/prow-mcp-server/main.py
How to use
The MCP Prow Server exposes a set of tools to interact with Prow CI/CD systems, enabling you to query latest job runs, fetch logs, locate builds for specific PRs, diagnose failures, and extract test failures from artifacts. The seven available MCP tools cover job management, build analysis, smart PR build discovery, and diagnostics, providing a streamlined way to integrate Prow data into applications, chatbots, or automation pipelines. Typical usage involves querying by job name or PR number and then drilling down into logs or diagnostics to pinpoint failures. If you’re integrating with an application, you can rely on the MCP transport (stdio or SSE) to receive structured responses from the server and surface them to your UI or automation layer.
How to install
Prerequisites:
- Python 3.8+ and virtualenv (for local development)
- Access to a Prow instance and any required credentials for private logs
- Optional: Node.js if you prefer a Node-based setup (not required for this server)
Installation steps:
- Clone the MCP Prow Server repository
git clone https://github.com/redhat-community-ai-tools/prow-mcp-server.git
cd prow-mcp-server
- Create and activate a virtual environment, then install dependencies
# Using uv (Python/uv) as shown in the readme
uv sync
source .venv/bin/activate
- Run the MCP server entry point
uv run python main.py
- Verify the server is running and accessible via the configured transport (stdio by default or SSE if you enable it)
# For SSE transport (example)
MCP_TRANSPORT=sse uv run main.py
- Optional: configure mcp.json with defaults for your environment as described in the README
{
"mcpServers": {
"prow": {
"command": "uv",
"args": ["run", "/path/to/prow-mcp-server/.venv/bin/python", "/path/to/prow-mcp-server/main.py"],
"description": "MCP server for Prow CI/CD integration"
}
}
}
Additional notes
Tips and common issues:
- Ensure your Python virtual environment is activated before starting the server to have the required dependencies available.
- If using the SSE transport, remember to start the SSE server separately with MCP_TRANSPORT=sse and expose the correct port (default 8000).
- For private Prow logs or restricted endpoints, set API_KEY in environment variables and pass it through mcp.json or runtime env.
- Validate that all MCP tools are registered in the server startup to avoid missing capabilities.
- When debugging, start with the stdio transport to simplify local testing, then switch to SSE if you need HTTP-based communication.
- If upgrading dependencies, run the test suite (uv run pytest tests/ -v) to ensure compatibility.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP