Deprecated 27-Nov-2025
I've personally moved my efforts to a more generic OpenAPI spec based MCP: https://github.com/allen-munsch/yas-mcp
Additionally, there is actually an official beta release by prefect over here: https://pypi.org/project/prefect-mcp/
Prefect MCP Server
A Model Context Protocol (MCP) server implementation for Prefect, enabling AI assistants to interact with Prefect through natural language.
Note: The official Prefect MCP server is available here. This is a community implementation.
🚀 Quick Start
docker compose up
📦 Installation
pip Installation
pip install mcp-prefect
From Source
git clone https://github.com/allen-munsch/mcp-prefect
cd mcp-prefect
pip install -e .
Manual Run
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:
{
"mcpServers": {
"prefect": {
"command": "mcp-prefect",
"args": ["--transport", "stdio"]
}
}
}
Cursor MCP
{
"mcpServers": {
"prefect": {
"command": "mcp-prefect",
"args": ["--transport", "stdio"]
}
}
}
Gemini CLI
gemini config set mcp-servers.prefect "mcp-prefect --transport stdio"
Windsurf / Claude Code
{
"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
{
"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
pytest tests/ -v
Building from Source
git clone https://github.com/allen-munsch/mcp-prefect
cd mcp-prefect
pip install -e .
python -m mcp_prefect
Recommend MCP Servers 💡
CAD-MCP
CAD-MCP is an innovative CAD control service that allows controlling CAD software for drawing operations through natural language instructions.
espressif/esp-rainmaker-mcp
A Model Context Protocol (MCP) server wrapper around the esp-rainmaker-cli Python library for controlling ESP RainMaker IoT devices
talk-with-figma-claude
Enables Claude Desktop App to control Figma through MCP (Model Context Protocol) via stdio
@codesys/mcp-toolkit
An MCP server enabling interaction between MCP clients and CODESYS automation platform
@browserstack/mcp-server
BrowserStack's official MCP Server enables users to manage test cases, execute manual or automated tests, debug issues, and fix code directly within AI tools like Cursor, Claude, or any MCP-enabled client using natural language. It integrates with BrowserStack's comprehensive test platform for mobile app, web, automated, and accessibility testing.
omniparser-autogui-mcp
Automatic operation of on-screen GUI.