Dolphin MCP Pilot
AI agent interface to Apache DolphinScheduler: 58 MCP tools for workflow orchestration & data ops.
Connector by iflytek · GitHub account verified by the MCP Registry
Install
Pick your client. Read the repository before you give any tool access to your data.
No install instructions from the source yet. Check the repository for setup steps.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.
- Tools
- 19 read · 24 write · 8 delete · 7 not yet classified
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Docker image
Tools by what they do 58
Read from the source code; the running server may list different tools.
Read 19 · Look things up without changing anything.
ds_get_latest_failure_logds_get_resource_by_nameds_get_task_detailds_get_task_logds_get_workflowds_list_datasourcesds_list_process_instancesds_list_projectsds_list_resourcesds_list_schedulesds_list_task_instancesds_list_tenants
Show 7 more tools
ds_list_usersds_list_workflow_versionsds_list_workflowsds_monitor_mastersds_monitor_workersds_raw_getds_view_resource
Write 24 · Create, change, send or run things.
ds_clone_workflowds_create_dag_workflowds_create_folderds_create_projectds_create_workflowds_download_resourceds_offline_scheduleds_online_create_fileds_online_scheduleds_raw_postds_raw_putds_release_workflow
Show 12 more tools
ds_rename_projectds_rename_resourceds_rerun_from_failureds_rerun_process_instanceds_run_workflowds_set_scheduleds_stop_process_instanceds_update_resource_contentds_update_schedule_cronds_update_task_paramds_update_workflowds_upload_file
Delete 8 · Delete, drop, revoke or wipe things.
ds_delete_process_instanceds_delete_projectds_delete_resourceds_delete_scheduleds_delete_workflowds_modify_workflow_dagds_raw_deleteds_rollback_workflow_version
Not yet classified 7 · We could not tell from the name and description.
ds_complement_datads_force_task_successds_helpds_pause_process_instanceds_resume_process_instanceds_skip_taskds_test_connection
Network hosts it talks to 2
github.com· found in codeglama.ai· found in code
Files it touches
- Any path the agent passes to its tools
Tools (58)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
ds_clone_workflowClone/copy a workflow. Args: project_name: Project name source_workflow_code: Source workflow code new_name: New workflow name description: New workflow description (empty = copy source description) auto_online: Auto-release after cloning Returns: { 'success': True, 'workflow_code': int, # New workflow code 'source_code': int, 'name': str, ... }
ds_complement_dataBackfill (complement) workflow data for date range or single partition. Recommended usage (v2.0.14): - Single partition: partition_date="2024-01-01" (clearer semantics, recommended) - Date range: start_date + end_date (multi-partition backfill) - From specific task: start_task_names + task_depend_type="TASK_POST" - Single task only: start_task_names + task_depend_type="TASK_ONLY" ⚠️ Important (v2.0.19): 1. Default mode: RUN_MODE_SERIAL (one partition at a time, safer) 2. Parallel mode: run_mode="RUN_MODE_PARALLEL" (multiple partitions concurrently, higher risk) 3. Before backfill: check depe…
ds_create_dag_workflowCreate a generic DAG workflow supporting any task type (SQL/SHELL/PYTHON/DEPENDENT/SUB_PROCESS/HTTP etc.). Args: project_name: Project name name: Workflow name tasks: Task definition list (see examples below) relations: Dependency list [{"from": "taskA", "to": "taskB"}]; empty "from" = start node description: Description schedule: Whether to create a schedule schedule_cron: Cron expression (7-field Quartz style) locations: Optional node coordinates [{"task_name": "check", "x": 100, …
ds_create_folderCreate a folder in the resource area. Args: name: Folder name (no path prefix, e.g. "scripts") current_dir: Parent directory path, default root "/" resource_type: FILE or UDF
ds_create_projectCreate a new project owned by the current user. Fails if a project with the same name already exists; check with ds_list_projects first. Use ds_rename_project to change it later. Args: name: Project name, unique in DolphinScheduler description: Optional description Returns: {"id": int, "code": int, "name": str}; other tools take the project by name.
ds_create_workflowCreate a workflow (supports simple SQL mode and complex DAG mode). Mode 1 - Simple SQL (backward compatible): - Provide sql_statements + datasource_id - Multiple SQL separated by ";;;" are executed serially Mode 2 - Complex DAG: - Provide tasks_json + relations_json - tasks_json: JSON array string, each task contains name, taskType, taskParams etc. - relations_json: JSON array string defining task dependencies (preTaskName -> postTaskName) Args: project_name: Project name name: Workflow name description: Description sql_statements: [Mode 1] SQL, multiple separated by ";;;" …
ds_delete_process_instancePermanently delete a finished workflow instance and its task records. Irreversible. DolphinScheduler rejects deleting a RUNNING instance; stop it first with ds_stop_process_instance. Does not affect the workflow definition. Args: project_name: Project name process_instance_id: Instance ID (from ds_list_process_instances) Returns: {"process_instance_id": int, "status": "deleted"}
ds_delete_projectDelete an entire project, cascading to all workflows, schedules and instances. This is irreversible - use with caution.
ds_delete_resourceDelete a resource (file or folder). ⚠️ Warning: Deletion is irreversible. Resources referenced by workflow tasks will cause those tasks to fail on next execution. DS behavior: Deleting a non-empty folder returns error 20018. Use recursive=True to delete children first, then the folder. Args: resource_id: Resource ID recursive: Delete children recursively (for folders, default False) Returns: {"resource_id", "status", "deleted_children"}
ds_delete_scheduleDelete a schedule (takes it offline first).
ds_delete_workflowDelete workflow(s) by code (takes offline first). Supports single or batch delete. v2.0.12: merged ds_batch_delete_workflows. - workflow_code=12345: delete single workflow - workflow_code=[12345, 67890]: batch delete (each independent; one failure doesn't block others) Args: project_name: Project name workflow_code: Process-definition code (int for single, list for batch) Returns: Single: {"workflow_code": int, "status": "deleted"} Batch: {"total": int, "deleted": int, "failed": int, "deleted_codes": [...], "failed_details": [...]}
ds_download_resourceDownload a resource file (supports binary, e.g. jar, zip). Args: resource_id: Resource ID save_to: Optional local save path (accessible to MCP server process). If empty, returns base64-encoded content. Returns: If save_to provided: {"resource_id", "saved_to", "size"} Otherwise: {"resource_id", "size", "content_base64"}
ds_force_task_successForce mark a task as success (dangerous — bypasses actual execution). ⚠️ Warning: Use only when task is stuck/failed but you've verified data correctness. This does NOT rerun the task — it only changes the state flag.
ds_get_latest_failure_logOne-click fetch of all failed task logs from the latest failed instance. Combines 3 common troubleshooting steps (list instances → list tasks → fetch logs). v2.0.10: Added per-step error handling — returns partial diagnostic info even if some steps fail. Args: project_name: Project name workflow_code: Process-definition code log_limit: Lines of log to fetch per failed task (default 500) Returns: { "workflow_code": int, "instance_id": int, # Latest failed instance ID "instance_state": "FAILURE", "start_time": str, "failed_…
ds_get_resource_by_nameFind a resource (file or folder) by full path, returning id and metadata. Implementation: uses /resources/list recursive search (avoids /resources/query-by-name due to known DS bug). Args: full_name: Full resource path, e.g. "public/test.py" or "scripts" resource_type: Resource type, default FILE
Show 43 more tools
ds_get_task_detailRead full parameters of a single task (returns only that task, not the whole DAG). Added in v2.0.12 for the "verify a task change took effect" scenario, avoiding pulling a huge DAG payload. Args: project_name: Project name workflow_code: Process-definition code task_name: Task name (exact match) Returns: { "task_code": int, "task_name": str, "task_type": str, "task_params": {...}, # Full taskParams (preStatements/postStatements/sql/script etc.) "description": str, "fail_retry_times": int, "timeout": int, ... …
ds_get_task_logFetch task execution log (supports pagination). Args: task_instance_id: Task instance ID (from ds_list_task_instances) skip_line_num: Skip first N lines (for pagination) limit: Max lines to fetch (default 1000) Returns: { "task_instance_id": int, "log": str, "line_start": int, "line_count": int, "hint": str }
ds_get_workflowRead a single workflow definition (DAG, global params, node coordinates, etc.). Args: project_name: Project name workflow_code: Process-definition code (from ds_list_workflows) compact: Compact mode (default False). When True, returns only metadata and task summary without full taskParams/SQL, greatly reducing token usage. Suitable when you only need to understand DAG structure.
ds_helpInteractive guide to DolphinScheduler MCP tools. Call without arguments to see all categories, or pass a category name to view tools and workflows for that category. Available categories: - quickstart: New user onboarding guide with common scenarios - project: Project CRUD (list/create/rename/delete) - workflow: Basic workflow operations (create/list/get/update/delete/release/run) - workflow_advanced: DAG editing, task updates, version management, cloning - instance: Process instance management, log retrieval, failure troubleshooting - schedule: Schedule configuration (cron/online/offline/de…
ds_list_datasourcesList the data sources of one type that the current user can see (read-only). Pass the returned ``id`` as ``datasource_id`` of SQL tasks, e.g. in ds_create_workflow or ds_create_dag_workflow. Args: ds_type: Data source type in DolphinScheduler's upper-case form, e.g. HIVE (default), MYSQL, POSTGRESQL, SPARK, CLICKHOUSE. Returns: [{"id": int, "name": str, "type": str}, ...]; empty if none match.
ds_list_process_instancesList process instances (filter by workflow_code, state). v2.0.12: merged ds_list_workflow_instances. - workflow_code=0 (default): list all recent instances in the project - workflow_code=<value>: list instances for that specific workflow Troubleshooting / Progress Tracking (v2.0.18): After getting instances, to understand execution details (which tasks running/failed/stuck), use ds_list_task_instances(process_instance_id=<id>, include_full=True) to view task states: - RUNNING_EXECUTION: instance running but no details → check task list for dispatched/running tasks (RUNNING instance with em…
ds_list_projectsList all projects. Returns [{id, code, name, description}].
ds_list_resourcesList resources (files and folders) at a given path. Args: resource_type: Resource type — FILE / UDF / ALL (default, lists both) full_name: Path prefix filter; empty = list everything from root
ds_list_schedulesList schedule configurations (optionally filtered by workflow_code). v2.0.12: merged ds_list_schedules_in_project and ds_get_workflow_schedule. - workflow_code=0 (default): list all schedules in the project - workflow_code=<value>: list schedules for that specific workflow - simplify=True: return a summary dict with has_schedule/cron/release_state Args: project_name: Project name workflow_code: Process-definition code (0 = no filter) simplify: Return summary dict instead of raw list page_no: Page number page_size: Items per page
ds_list_task_instancesList task instances for a process instance (filter by state, optionally include full details). v2.0.18: Added include_full parameter for detailed troubleshooting. Args: project_name: Project name process_instance_id: Process instance ID state: State filter (FAILURE / SUCCESS / RUNNING_EXECUTION, empty = no filter) include_full: When True, returns full taskParams/SQL/script for each task (useful for detailed analysis but consumes more tokens) Returns: List of task instances with: - Basic info: id, name, taskType, state, startTime, endTime, retryTimes…
ds_list_tenantsList all tenants (useful for debugging workflow tenant_id foreign key issues).
ds_list_usersList all DS users (useful for debugging workflow user_id foreign key issues).
ds_list_workflow_versionsList saved versions of a workflow definition (read-only). Each save of the workflow creates a version. Use the returned version number with ds_rollback_workflow_version. Args: project_name: Project name workflow_code: Workflow (process-definition) code from ds_list_workflows page_size: Maximum number of versions to return (first page, default 20) Returns: [{"version": int, "description": str, "createTime": str, "updateTime": str}, ...]
ds_list_workflowsList workflow definitions with pagination, search and exact-match support. v2.0.12: merged ds_list_workflows_simple and ds_get_workflow_by_name. - Default: paginated API (auto-falls back to simple-list on failure) - search="xx": case-insensitive fuzzy match on name + description - name="xxx": exact name match (single-element list or empty list) - use_simple=True: use /process-definition/simple-list (bypasses pagination SQL) Args: project_name: Project name page_no: Page number, starting at 1 page_size: Items per page (max recommended 100) search: Fuzzy search keyword (name + …
ds_modify_workflow_dagModify existing workflow DAG (add/delete/update tasks + adjust dependencies). Implementation: read current DAG → apply operations → write back. ⚠️ Risk warning: - Modifications create a new version; old versions preserved and rollback-able - If workflow is running, it will be taken offline first (auto_offline=True by default) - Auto-re-online after modification (auto_online=True by default) - DS has no native "add single task" API; this tool simulates it via "read → modify → full update" Args: project_name: Project name …
ds_monitor_mastersCheck DS master node status (verify scheduler is alive).
ds_monitor_workersCheck DS worker node status (verify task executors are alive).
ds_offline_scheduleTake a schedule offline so it stops triggering new runs. Keeps the schedule and running instances; bring it back with ds_online_schedule, or remove it with ds_delete_schedule. Args: project_name: Project name schedule_id: Schedule ID (from ds_list_schedules) Returns: {"schedule_id": int, "status": "OFFLINE"}
ds_online_create_fileCreate a text file inline (no upload required). Args: file_name: Filename without extension (e.g. "my_script") suffix: File extension without dot (e.g. "py" / "sh" / "sql") content: Text content to write current_dir: Parent directory path, default root "/" description: File description resource_type: FILE or UDF
ds_online_scheduleBring a schedule online so it starts triggering workflow runs. Needed after ds_set_schedule, which creates schedules offline. The workflow itself must be online (ds_release_workflow). Reverse with ds_offline_schedule. Args: project_name: Project name schedule_id: Schedule ID (from ds_set_schedule or ds_list_schedules) Returns: {"schedule_id": int, "status": "ONLINE"}
ds_pause_process_instancePause a RUNNING workflow instance (reversible; not a stop). Tasks already running finish, no new tasks are started, and the instance ends in PAUSE state. Use ds_resume_process_instance to continue it, or ds_stop_process_instance to kill it instead. Args: project_name: Project name process_instance_id: Instance ID (from ds_list_process_instances) Returns: {"process_instance_id": int, "executeType": "PAUSE", "status": "submitted"}; the request is asynchronous, so check the state with ds_list_process_instances.
ds_raw_deleteSend a raw DELETE request to the DolphinScheduler API (escape hatch). Deletes are irreversible. Prefer the dedicated ds_delete_* tools; use this only for endpoints they do not cover. Args: path: API path starting with / and excluding the /dolphinscheduler prefix, with any query string, e.g. "/projects/123/schedules/7" Returns: DolphinScheduler's response as-is ({"code", "msg", "data", ...}); code 0 means success.
ds_raw_getPass GET through to DolphinScheduler API (path must start with /, excluding the /dolphinscheduler prefix).
ds_raw_postPass POST through to DolphinScheduler API. Args: path: API path (starting with /) form_data_json: form-urlencoded params as a JSON string (choose one) json_body_json: JSON body as a JSON string (choose one)
ds_raw_putSend a raw PUT request to the DolphinScheduler API (escape hatch). Prefer the dedicated update tools (e.g. ds_update_workflow, ds_update_schedule_cron); use this only for endpoints they do not cover. Args: path: API path starting with / and excluding the /dolphinscheduler prefix, e.g. "/projects/123/schedules/7" form_data_json: form-urlencoded params as a JSON object string, e.g. '{"crontab": "0 0 2 * * ? *"}' (set this or json_body_json) json_body_json: JSON body as a JSON string (set this or form_data_json) Returns: DolphinScheduler's response as-is ({"code…
ds_release_workflowBring a workflow online or offline. When bringing online (online=True), auto_online_schedule will also re-activate the associated schedule if it was taken offline (DS takes schedules offline when the workflow goes offline). Args: project_name: Project name workflow_code: Process-definition code online: True=online, False=offline auto_online_schedule: Auto-reactivate associated schedule when going online (default True) Returns: { "workflow_code": int, "releaseState": "ONLINE" / "OFFLINE", "schedule_action": str, "schedule_id": int, }
ds_rename_projectRename a project. Args: old_name: Current project name new_name: New project name description: Optional new description; keeps the existing one if omitted
ds_rename_resourceRename a resource file or folder. ⚠️ Warning: DS may implement rename as delete + recreate, which changes the resource_id. If this resource is referenced by workflow tasks, the reference will become invalid after renaming. Check references with ds_list_workflows before proceeding. Args: resource_id: Resource ID new_name: New name (filename or folder name only, no path prefix) description: Description resource_type: FILE or UDF
ds_rerun_from_failureResume from failed tasks (rerun only failed and pending tasks, skip succeeded ones).
ds_rerun_process_instanceRerun entire workflow instance (from the beginning).
ds_resume_process_instanceResume a workflow instance that is in PAUSE state. Continues from where ds_pause_process_instance stopped it. Not for failed or stopped instances: use ds_rerun_from_failure or ds_rerun_process_instance. Args: project_name: Project name process_instance_id: Instance ID (from ds_list_process_instances) Returns: {"process_instance_id": int, "executeType": "RECOVER_SUSPENDED_PROCESS", "status": "submitted"}; the request is asynchronous.
ds_rollback_workflow_versionRoll back a workflow to a specific historical version. Args: project_name: Project name workflow_code: Process-definition code version: Target version number (from ds_list_workflow_versions)
ds_run_workflowManually trigger a workflow run (brings it online first). Args: project_name: Project name workflow_code: Process-definition code start_task_names: Optional list of task names to start from (including their downstream tasks). Leave empty to run the entire workflow. Example: ["partition_check"] starts from that task and all its successors.
ds_set_scheduleCreate a schedule for a workflow (created OFFLINE; activate with ds_online_schedule). v2.0.12: cron is now required (no default) to prevent silent misuse. Args: project_name: Project name workflow_code: Process-definition code cron: Quartz 7-field expression (required, e.g. "0 0 6 * * ? *") start_time: Start time yyyy-MM-dd HH:mm:ss; defaults to today 00:00:00 end_time: End time; defaults to 2030-12-31 23:59:59
ds_skip_taskSkip a task (mark as success without running). ⚠️ Warning: Use only for non-critical tasks (e.g., notifications). Downstream tasks will proceed as if this task succeeded.
ds_stop_process_instanceStop a running workflow instance (force kill).
ds_test_connectionTest DolphinScheduler login and connectivity.
ds_update_resource_contentUpdate resource file content (text files only). ⚠️ Changes take effect immediately. Workflows referencing this script will use the new version on their next execution. Args: resource_id: Resource ID content: New file content description: Update note (optional)
ds_update_schedule_cronUpdate only the cron expression of a schedule (keeps all other settings). Flow: read current state → offline if needed → update → re-online (default). v2.0.10: queries the target schedule directly instead of scanning the full list. Args: project_name: Project name schedule_id: Schedule ID (from ds_list_schedules) cron: New Quartz 7-field expression start_time: New start time yyyy-MM-dd HH:mm:ss (keep original if empty) end_time: New end time (keep original if empty) auto_online: Re-activate after update (default True) Returns: { "schedule_id": int, …
ds_update_task_paramLightweight single-task parameter update — no need to pass full DAG definition. This tool is a convenience wrapper around ds_modify_workflow_dag's update_task, automatically handling the "read → modify → write → online/offline" flow. Use case: Change a single task's SQL/script/name/retry params without constructing a full operations list. Args: project_name: Project name workflow_code: Workflow code task_name: Task name to modify (exact match) updates: Fields to update (flat dict, field names same as update_task's updates) auto_offline: Auto-offline before modification (…
ds_update_workflowUpdate workflow definition (PUT method, preserves code, auto-increments version). This is a fallback when ds_modify_workflow_dag cannot handle the change. Supports full task definition override with complete replacement. Args: project_name: Project name workflow_code: Process-definition code task_definitions: Task definition list (list or JSON string) task_relations: Task relation list (list or JSON string) locations: Node coordinates (list or JSON string, default "[]") name: Workflow name (empty = keep original) description: Description (empty = keep original) …
ds_upload_fileUpload a file to the resource area (supports binary, e.g. jar / zip). Two ways to provide file content: Method 1: local_path — path to a file accessible by the MCP server process Method 2: file_name + file_content_base64 — base64-encoded content Args: local_path: Local file path (Method 1) file_name: Filename with extension (Method 2) file_content_base64: Base64-encoded file content (Method 2) current_dir: Parent directory path, default root "/" resource_type: FILE or UDF
ds_view_resourceView resource file content (paginated, text files only). Args: resource_id: Resource ID (from ds_list_resources or ds_get_resource_by_name) skip_line_num: Number of lines to skip limit: Max lines to read
Signals
- Stars
- 20
- Forks
- 17
- Open issues
- 3
- Contributors
- 9
- Last commit
- Oct 9, 2026 (19 days ago)
- Last release
- Aug 31, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
io.github.iflytek/dolphin-mcp-pilot- Version
- 0.3.1
- Auth
- No auth
- Packages
- oci
ghcr.io/iflytek/dolphin-mcp-pilot:0.3.1 - License
- Apache-2.0
- Repository
- github.com/iflytek/dolphin-mcp-pilot
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
More from iflytek
- 0.649score
astron-agent
iflytek
Apache-2.0 agentic workflow platform combining orchestration, model management, MCP tools and RPA for enterprise agents.
BuilderAFreshness: A★ 8.9K - 0.645score
AGENTS.md · iflytek/astron-agent
iflytek
AGENTS.md from iflytek/astron-agent: 86 lines covering Project Overview, Repository Structure, Typical Communication Flows, Important Notes.
TemplateAFreshness: A★ 8.9KCodex +5 - 0.645score
CLAUDE.md · iflytek/astron-agent
iflytek
CLAUDE.md from iflytek/astron-agent: 91 lines covering Project Overview, Repository Structure, Typical Communication Flows, Important Notes.
TemplateAFreshness: A★ 8.9KClaude Code
Cite this page
Dolphin MCP Pilot. Agent Mart. https://agentmart.dev/connectors/iflytek-dolphin-mcp-pilot (last updated 2026-10-24)