README.mdโข7.18 kB
# Prefect MCP Server
A Model Context Protocol (MCP) server implementation for [Prefect](https://www.prefect.io/), enabling AI assistants to interact with Prefect through natural language.
> **Note**: The official Prefect MCP server is available [here](https://pypi.org/project/prefect-mcp/). This is a community implementation.
## ๐ Quick Start
```bash
docker compose up
```
## ๐ฆ Installation
### pip Installation
```bash
pip install mcp-prefect
```
### From Source
```bash
git clone https://github.com/allen-munsch/mcp-prefect
cd mcp-prefect
pip install -e .
```
### Manual Run
```bash
PREFECT_API_URL=http://localhost:4200/api \
PREFECT_API_KEY=your_api_key_here \
MCP_PORT=8000 \
python -m mcp_prefect.main --transport http
```
## ๐ ๏ธ Features
```
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ โ
โ _ __ ___ _____ __ __ _____________ ____ ____ โ
โ _ __ ___ .'____/___ ______/ /_/ |/ / ____/ __ \ |___ \ / __ \ โ
โ _ __ ___ / /_ / __ `/ ___/ __/ /|_/ / / / /_/ / ___/ / / / / / โ
โ _ __ ___ / __/ / /_/ (__ ) /_/ / / / /___/ ____/ / __/_/ /_/ / โ
โ _ __ ___ /_/ \____/____/\__/_/ /_/\____/_/ /_____(*)____/ โ
โ โ
โ โ
โ FastMCP 2.0 โ
โ โ
โ โ
โ ๐ฅ๏ธ Server name: MCP Prefect 3.6.1 โ
โ ๐ฆ Transport: STDIO โ
โ โ
โ ๐๏ธ FastMCP version: 2.12.3 โ
โ ๐ค MCP SDK version: 1.14.1 โ
โ โ
โ ๐ Docs: https://gofastmcp.com โ
โ ๐ Deploy: https://fastmcp.cloud โ
โ โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
[11/11/25 02:08:06] INFO Starting MCP server 'MCP Prefect 3.6.1' with transport 'stdio' server.py:1495
โ
Initialized successfully
Server: MCP Prefect 3.6.1 1.14.1
๐ Listing tools...
๐ฏ FOUND 64 TOOLS:
================================================================================
๐ ARTIFACT (6 tools)
๐ง create_artifact
๐ง delete_artifact
๐ง get_artifact
๐ง get_artifacts
๐ง get_latest_artifacts
๐ง update_artifact
๐ AUTOMATION (7 tools)
๐ง create_automation
๐ง delete_automation
๐ง get_automation
๐ง get_automations
๐ง pause_automation
๐ง resume_automation
๐ง update_automation
๐ BLOCK (5 tools)
๐ง delete_block_document
๐ง get_block_document
๐ง get_block_documents
๐ง get_block_type
๐ง get_block_types
๐ DEPLOYMENT (8 tools)
๐ง delete_deployment
๐ง get_deployment
๐ง get_deployment_schedule
๐ง get_deployments
๐ง pause_deployment_schedule
๐ง resume_deployment_schedule
๐ง set_deployment_schedule
๐ง update_deployment
๐ FLOW (13 tools)
๐ง cancel_flow_run
๐ง create_flow_run_from_deployment
๐ง delete_flow
๐ง delete_flow_run
๐ง get_flow
๐ง get_flow_run
๐ง get_flow_run_logs
๐ง get_flow_runs
๐ง get_flow_runs_by_flow
๐ง get_flows
๐ง get_task_runs_by_flow_run
๐ง restart_flow_run
๐ง set_flow_run_state
๐ LOG (2 tools)
๐ง create_log
๐ง get_logs
๐ OTHER (1 tools)
๐ง get_health
๐ TASK (4 tools)
๐ง get_task_run
๐ง get_task_run_logs
๐ง get_task_runs
๐ง set_task_run_state
๐ VARIABLE (5 tools)
๐ง create_variable
๐ง delete_variable
๐ง get_variable
๐ง get_variables
๐ง update_variable
๐ WORK (13 tools)
๐ง create_work_queue
๐ง delete_work_queue
๐ง get_current_workspace
๐ง get_work_queue
๐ง get_work_queue_by_name
๐ง get_work_queue_runs
๐ง get_work_queues
๐ง get_workspace
๐ง get_workspace_by_handle
๐ง get_workspaces
๐ง pause_work_queue
๐ง resume_work_queue
๐ง update_work_queue
๐ TOTAL: 64 tools across 10 categories
```
## ๐ฌ Example Interactions
AI assistants can help you with:
**Flow Management**
- "Show me all my flows and their last run status"
- "Create a new flow run for the 'data-processing' deployment"
- "What's the current status of flow run 'abc-123'?"
**Deployment Control**
- "Pause the schedule for the 'daily-reporting' deployment"
- "Update the 'etl-pipeline' deployment with new parameters"
**Infrastructure Management**
- "List all work pools and their current status"
- "Create a new work queue for high-priority jobs"
**Variable & Configuration**
- "Create a variable called 'api_timeout' with value 300"
- "Show me all variables containing 'config' in their name"
**Monitoring & Debugging**
- "Get the logs for the last failed flow run"
- "Show me all running task runs right now"
## ๐ค Platform Integration
### Claude Desktop
Add to `claude_desktop_config.json`:
```json
{
"mcpServers": {
"prefect": {
"command": "mcp-prefect",
"args": ["--transport", "stdio"]
}
}
}
```
### Cursor MCP
```json
{
"mcpServers": {
"prefect": {
"command": "mcp-prefect",
"args": ["--transport", "stdio"]
}
}
}
```
### Gemini CLI
```bash
gemini config set mcp-servers.prefect "mcp-prefect --transport stdio"
```
### Windsurf / Claude Code
```json
{
"mcpServers": {
"prefect": {
"command": "mcp-prefect",
"args": ["--transport", "stdio"],
"env": {
"PREFECT_API_URL": "http://localhost:4200/api",
"PREFECT_API_KEY": "your_api_key_here"
}
}
}
}
```
### Generic MCP Client
```json
{
"mcpServers": {
"prefect": {
"command": "mcp-prefect",
"args": ["--transport", "stdio"],
"env": {
"PREFECT_API_URL": "http://localhost:4200/api",
"PREFECT_API_KEY": "your_api_key_here"
}
}
}
}
```
## ๐งช Development
### Running Tests
```bash
pytest tests/ -v
```
### Building from Source
```bash
git clone https://github.com/allen-munsch/mcp-prefect
cd mcp-prefect
pip install -e .
python -m mcp_prefect
```