dag-planner-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HOST | No | Host to bind when using HTTP transport. Default: 127.0.0.1 | 127.0.0.1 |
| MCP_PORT | No | Port to bind when using HTTP transport. Default: 8000 | 8000 |
| DATABASE_URL | No | SQLAlchemy connection URL (SQLite or PostgreSQL). Default: sqlite:///dag_planner.db | sqlite:///dag_planner.db |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_workflow_runC | Create a new workflow run in draft status. |
| create_plan_graphC | Create a plan graph (DAG of tasks) for an existing run. |
| replace_plan_branchC | Cancel downstream tasks from anchor and replace with new tasks. |
| get_ready_tasksC | Return tasks that are ready and not currently claimed. |
| claim_task_for_executionC | Claim a ready task for exclusive execution. |
| mark_task_runningC | Transition a task to running status. |
| mark_task_completedB | Mark a task completed and activate dependent tasks. |
| mark_task_failedC | Mark a task failed, with optional retry logic. |
| mark_task_blocked_humanC | Block a task pending human approval. |
| resume_taskC | Resume a blocked task after human decision. |
| put_task_outputC | Store working or final output for a task. |
| put_task_checkpointC | Save a checkpoint for a running task. |
| get_task_payload_refsB | Retrieve all payload data (input, output, checkpoint, contract) for a task. |
| get_taskC | Return full state of a single task. |
| list_tasksC | List tasks for a run with optional filters. |
| get_workflow_runC | Return workflow run state. |
| get_blocked_tasksB | Return all blocked tasks for a run. |
| get_dag_edgesC | Return all DAG edges for a run. |
| validate_task_outputC | Validate a task's output against its JSON Schema contract. |
| validate_dag_acyclicC | Validate that a task list forms an acyclic DAG. |
| get_my_taskC | Get task details from the executing agent's perspective. |
| update_my_progressC | Update working output and optionally checkpoint progress. |
| submit_my_outputC | Submit final output and mark task completed. |
| request_human_inputB | Request human input, blocking the task until decided. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 24 tools
Each tool targets a distinct action or resource, with descriptions clearly differentiating between agent-specific and system operations. Even conceptually similar tools like mark_task_blocked_human and request_human_input serve separate purposes (blocking vs. input request). No ambiguity.
All tools follow a consistent verb_noun pattern using snake_case, with verbs like claim, create, get, list, mark, put, replace, request, resume, submit, update, validate. The naming is predictable and easy to navigate.
24 tools is on the higher side but reasonable for a DAG planner covering run management, task lifecycle, payloads, human-in-the-loop, and validation. Each tool has a distinct role, and the scope justifies the count without overwhelming.
The tool set covers the full lifecycle of creating runs, plans, and managing tasks with state transitions, checkpoints, and human interaction. Minor gaps exist such as no explicit delete or cancel run tool, but core workflows are well-supported.