workflow-orchestration-gateway-protocol
Interface with the Apache DolphinScheduler ecosystem via a standardized Model Context Protocol (MCP) implementation to govern complex task pipelines, orchestrate project workflows, and access its full suite of operational controls through a uniform abstraction layer.
Author

ocean-zhc
Quick Info
Actions
Tags
Unified Operational Interface for DolphinScheduler (MCP Server)
A Model Context Protocol (MCP) implementation serving as an intermediary for programmatic interaction with Apache DolphinScheduler, enabling AI entities to control scheduling and execution functions using a consistent interface.
Core Concept
This component establishes a FastMCP server wrapper that exposes the underlying DolphinScheduler REST API as a collection of discrete, protocol-compliant operational functions consumable by autonomous agents. It functions as the essential communication conduit facilitating AI-driven management of distributed workflows.
Key Capabilities
- Complete exposure of all DolphinScheduler programmatic functionalities via the API.
- Adherence to the Model Context Protocol specification for tool invocation consistency.
- Simplified setup and parameterization using environment variables or command-line arguments.
- Built-in support for exhaustive tool documentation retrieval.
Deployment Instructions
Installation via Python package manager:
pip install dolphinscheduler-mcp
Configuration Parameters
Configuration is primarily managed via environment settings:
DOLPHINSCHEDULER_API_URL: Endpoint address for the DolphinScheduler communication layer (Default: http://localhost:12345/dolphinscheduler).DOLPHINSCHEDULER_API_KEY: Security credential (token) required for authenticating requests against the DolphinScheduler service.DOLPHINSCHEDULER_MCP_HOST: Network interface address where the MCP service will listen (Default: 0.0.0.0).DOLPHINSCHEDULER_MCP_PORT: Network port assigned for the MCP service listener (Default: 8089).DOLPHINSCHEDULER_MCP_LOG_LEVEL: Verbosity setting for system logging (Default: INFO).
Operational Guidance
Execution via CLI
Launch the abstraction layer service using the command-line interface:
ds-mcp --host 0.0.0.0 --port 8089
Programmatic Server Initialization
Utilizing the internal Python interface:
from dolphinscheduler_mcp.server import run_server
# Initiate the service listener
run_server(host="0.0.0.0", port=8089)
Exposed Functional Toolsets
The DolphinScheduler MCP Server exposes functions categorized for interaction with the following DolphinScheduler domains:
- Project Structure Administration
- Process Blueprint Definition Control
- Executed Process Instance Oversight
- Individual Task Blueprint Management
- Workflow Scheduling Governance
- System Resource Inventory
- Data Connection Configuration
- Alerting Group Configuration
- Alerting Mechanism Plugin Administration
- Worker Cluster Group Management
- Multi-tenancy/Namespace Administration
- User Identity Management
- System Health and Metric Reporting
Illustrative Agent Interaction (Client Side)
from mcp_client import MCPClient
# Establish a connection channel to the listening service
client = MCPClient("http://localhost:8089/mcp")
# Query the repository for defined projects
response = await client.invoke_tool("get-project-list")
# Initiate the creation of a novel project entity
response = await client.invoke_tool(
"create-project",
{"name": "My AI Project", "description": "Project created by AI"}
)
Governing Terms
Released under the terms of the Apache License, Version 2.0.
