AM

A Model Context Protocol (MCP) server implementation for Prefect, allowing AI assistants to interact with Prefect through natural language.

Created 3 months ago

A Model Context Protocol (MCP) server implementation for Prefect, allowing AI assistants to interact with Prefect through natural language.

development documentation public

What is A Model Context Protocol (MCP) server implementation for Prefect, allowing AI assistants to interact with Prefect through natural language.?

This MCP server provides access to the following Prefect APIs: Flow Management, Flow Run Management, Deployment Management, Task Run Management, Work Queue Management, Block Management, Variable Management, and Workspace Management. It allows AI assistants to help users interact with Prefect using natural language.

Documentation

Prefect MCP Server

A Model Context Protocol (MCP) server implementation for Prefect, allowing AI assistants to interact with Prefect through natural language.

Features

This MCP server provides access to the following Prefect APIs:

  • Flow Management: List, get, and delete flows
  • Flow Run Management: Create, monitor, and control flow runs
  • Deployment Management: Manage deployments and their schedules
  • Task Run Management: Monitor and control task runs
  • Work Queue Management: Create and manage work queues
  • Block Management: Access block types and documents
  • Variable Management: Create and manage variables
  • Workspace Management: Get information about workspaces

Configuration

Set the following environment variables:

export PREFECT_API_URL="http://localhost:4200/api"  # URL of your Prefect API
export PREFECT_API_KEY="your_api_key"               # Your Prefect API key (if using Prefect Cloud)

Usage

Run the MCP server, and prefect:

docker compose up

Example Input

Once connected, an AI assistant can help users interact with Prefect using natural language. Examples:

  • "Show me all my flows"
  • "List all failed flow runs from yesterday"
  • "Trigger the 'data-processing' deployment"
  • "Pause the schedule for the 'daily-reporting' deployment"
  • "What's the status of my last ETL flow run?"

Development

Several of the endpoints have yet to be implemented

Adding New Functions

To add a new function to an existing API:

  1. Add the function to the appropriate module in src/mcp_prefect
  2. Add the function to the get_all_functions() list in the module

To add a new API type:

  1. Add the new type to APIType in enums.py
  2. Create a new module in src/prefect/
  3. Update main.py to include the new API type

Example usage:

{
  "mcpServers": {
    "mcp-prefect": {
      "command": "mcp-prefect",
      "args": [
        "--transport", "sse"
      ],
      "env": {
        "PYTHONPATH": "/path/to/your/project/directory"
      },
      "cwd": "/path/to/your/project/directory"
    }
  }
}

Server Config

{
  "mcpServers": {
    "a-model-context-protocol-(mcp)-server-implementation-for-prefect,-allowing-ai-assistants-to-interact-with-prefect-through-natural-language.-server": {
      "command": "npx",
      "args": [
        "a-model-context-protocol-(mcp)-server-implementation-for-prefect,-allowing-ai-assistants-to-interact-with-prefect-through-natural-language."
      ]
    }
  }
}

Links & Status

Repository: github.com
Hosted: No
Global: No
Official: Yes

Project Info

Hosted Featured
Created At: Aug 08, 2025
Updated At: Aug 08, 2025
Author: Unknown
Category: MCP Server
Tags:
development documentation public