delega-dev avatar

Delega

delega-dev/delega-mcp

Connects Claude and other MCP clients to Delega's task coordination API, turning natural language into task operations across multi-agent workflows. You get 18 tools covering the full lifecycle: create, assign, delegate (with parent/child chains), update context blobs, find duplicates via TF-IDF similarity, and retrieve delegation trees. Supports both self-hosted instances and the hosted tier at api.delega.dev. Reach for this when you need persistent task handoffs between agents, not just in-memory chat context. Security defaults redact agent keys in tool output to prevent prompt injection exfiltration. Configuration is stdio based with API keys passed through environment variables rather than CLI args.

GitHub stars
1
tools
48
auth
Secret needed
transport
STDIO
env vars
4
last updated
Oct 25, 2026

Tools

48 tools

Public tool metadata for what this MCP can expose to an agent.

register_human_requestRegister a held, evidence-required checklist on an existing task assigned to the configured runtime; maximum two prompts and 1,200 seconds

Register a held, evidence-required checklist on an existing task assigned to the configured runtime; maximum two prompts and 1,200 seconds

No parameter schema in public metadata yet.

get_human_requestRead immutable request scope, phase, request version and protected replies

Read immutable request scope, phase, request version and protected replies

No parameter schema in public metadata yet.

get_human_resultRead canonical completion evidence and the human-attested result, or null while unverified

Read canonical completion evidence and the human-attested result, or null while unverified

No parameter schema in public metadata yet.

cancel_human_requestRecord cancellation with `expected_version`; repeated cancellation is a no-op

Record cancellation with `expected_version`; repeated cancellation is a no-op

No parameter schema in public metadata yet.

list_tasksCompact complete pagination; filter by project, label, due date, completion, claim, assignee, search or session state

Compact complete pagination; filter by project, label, due date, completion, claim, assignee, search or session state

No parameter schema in public metadata yet.

get_taskGet full task details including subtasks and task links

Get full task details including subtasks and task links

No parameter schema in public metadata yet.

link_taskAttach a branch, commit, PR, or URL link to a task

Attach a branch, commit, PR, or URL link to a task

No parameter schema in public metadata yet.

list_task_linksList branch, commit, PR, and URL links attached to a task

List branch, commit, PR, and URL links attached to a task

No parameter schema in public metadata yet.

create_taskCreate a new task (optional `evidence_policy: 'required'` forces completion evidence)

Create a new task (optional `evidence_policy: 'required'` forces completion evidence)

No parameter schema in public metadata yet.

list_recurrencesList recurring task templates

List recurring task templates

No parameter schema in public metadata yet.

create_recurring_taskCreate a recurring task template (`daily`, `weekly`, `monthly`, or `yearly`)

Create a recurring task template (`daily`, `weekly`, `monthly`, or `yearly`)

No parameter schema in public metadata yet.

update_recurrenceUpdate a recurring task template, including pausing/resuming with `active`

Update a recurring task template, including pausing/resuming with `active`

No parameter schema in public metadata yet.

delete_recurrenceDelete a recurring task template; existing spawned task instances remain

Delete a recurring task template; existing spawned task instances remain

No parameter schema in public metadata yet.

update_taskUpdate task fields (incl. `assigned_to_agent_id`)

Update task fields (incl. `assigned_to_agent_id`)

No parameter schema in public metadata yet.

assign_taskAssign a task to an agent (or pass `null` to unassign)

Assign a task to an agent (or pass `null` to unassign)

No parameter schema in public metadata yet.

delegate_taskDelegate a task: create a child task linked to a parent (parent status flips to `delegated`). Use this for multi-agent handoffs — `assign_task` does not create a delegation chain.

Delegate a task: create a child task linked to a parent (parent status flips to `delegated`). Use this for multi-agent handoffs — `assign_task` does not create a delegation chain.

No parameter schema in public metadata yet.

get_task_chainReturn the full delegation chain for a task (root + descendants, sorted by depth)

Return the full delegation chain for a task (root + descendants, sorted by depth)

No parameter schema in public metadata yet.

update_task_contextMerge keys into a task's persistent context blob (deep merge, not replace), recording provenance source

Merge keys into a task's persistent context blob (deep merge, not replace), recording provenance source

No parameter schema in public metadata yet.

get_task_contextCurrent summary/key index or exact key selection; bounded full access and per-key provenance

Current summary/key index or exact key selection; bounded full access and per-key provenance

No parameter schema in public metadata yet.

get_context_historyRead the append-only provenance ledger for a task's context

Read the append-only provenance ledger for a task's context

No parameter schema in public metadata yet.

recallSearch decision-memory across ALL tasks — recall a prior decision/fact without knowing which task holds it. Ranked, human-stated weighted highest, scoped to what you can read. **Hosted API only.**

Search decision-memory across ALL tasks — recall a prior decision/fact without knowing which task holds it. Ranked, human-stated weighted highest, scoped to what you can read. **Hosted API only.**

No parameter schema in public metadata yet.

find_duplicate_tasksCheck whether proposed task content is similar to existing open tasks (TF-IDF + cosine similarity). Call before `create_task` to avoid redundant work.

Check whether proposed task content is similar to existing open tasks (TF-IDF + cosine similarity). Call before `create_task` to avoid redundant work.

No parameter schema in public metadata yet.

get_usageReturn quota + rate-limit info. **Hosted API only** (`api.delega.dev`); custom endpoints receive a clear error.

Return quota + rate-limit info. **Hosted API only** (`api.delega.dev`); custom endpoints receive a clear error.

No parameter schema in public metadata yet.

claim_taskClaim a task for exclusive processing (work-queue semantics). Without `task_id`, claims the next available task from the queue; with `task_id`, targets a specific task. Lease-based: default 300s, configurable 30-3600. Queue claims can filter by `project_id` and `labels`; targe...

Claim a task for exclusive processing (work-queue semantics). Without `task_id`, claims the next available task from the queue; with `task_id`, targets a specific task. Lease-based: default 300s, configurable 30-3600. Queue claims can filter by `project_id` and `labels`; targe...

No parameter schema in public metadata yet.

heartbeat_taskExtend the lease on a claimed task. Optionally report `working`, `waiting_input`, or `errored` plus detail while extending the lease. **Hosted API only.**

Extend the lease on a claimed task. Optionally report `working`, `waiting_input`, or `errored` plus detail while extending the lease. **Hosted API only.**

No parameter schema in public metadata yet.

release_taskRelease a claimed task back to the queue without completing it. Pass an optional `handoff` note ("where I left off / why I stopped") that the next agent sees as a "Resuming from" line. **Hosted API only.**

Release a claimed task back to the queue without completing it. Pass an optional `handoff` note ("where I left off / why I stopped") that the next agent sees as a "Resuming from" line. **Hosted API only.**

No parameter schema in public metadata yet.

set_task_stateReport `working`, `waiting_input`, or `errored` on a claimed task without extending the lease. **Hosted API only.**

Report `working`, `waiting_input`, or `errored` on a claimed task without extending the lease. **Hosted API only.**

No parameter schema in public metadata yet.

complete_taskMark a task as completed with optional structured `evidence`. Required-evidence tasks need a strong reference. Registered human requests also require current `expected_revision`, `claim_generation` and protected affirmative replies.

Mark a task as completed with optional structured `evidence`. Required-evidence tasks need a strong reference. Registered human requests also require current `expected_revision`, `claim_generation` and protected affirmative replies.

No parameter schema in public metadata yet.

delete_taskDelete a task permanently

Delete a task permanently

No parameter schema in public metadata yet.

add_commentAdd a comment to a task

Add a comment to a task

No parameter schema in public metadata yet.

list_projectsList all projects

List all projects

No parameter schema in public metadata yet.

get_statsGet task statistics

Get task statistics

No parameter schema in public metadata yet.

fleet_attentionTriage board of work needing a human: abandoned claims, silent holders, errored, waiting-on-input, overdue, and looping tasks. Scoped like stats. **Hosted API only.**

Triage board of work needing a human: abandoned claims, silent holders, errored, waiting-on-input, overdue, and looping tasks. Scoped like stats. **Hosted API only.**

No parameter schema in public metadata yet.

list_agentsList registered agents

List registered agents

No parameter schema in public metadata yet.

register_agentRegister a new agent (returns API key), optionally with a role preset

Register a new agent (returns API key), optionally with a role preset

No parameter schema in public metadata yet.

set_agent_roleSet an agent's role: `worker`, `coordinator`, or `admin` (admin key required)

Set an agent's role: `worker`, `coordinator`, or `admin` (admin key required)

No parameter schema in public metadata yet.

delete_agentDelete an agent (refused if the agent has active tasks or is the last active agent)

Delete an agent (refused if the agent has active tasks or is the last active agent)

No parameter schema in public metadata yet.

list_webhooksList all webhooks (admin only)

List all webhooks (admin only)

No parameter schema in public metadata yet.

create_webhookCreate a webhook for event notifications: `task.created`, `task.updated`, `task.completed`, `task.deleted`, `task.assigned`, `task.delegated`, `task.commented`, `task.claimed`, `task.released`, `task.state_changed`, and `task.linked` (admin only)

Create a webhook for event notifications: `task.created`, `task.updated`, `task.completed`, `task.deleted`, `task.assigned`, `task.delegated`, `task.commented`, `task.claimed`, `task.released`, `task.state_changed`, and `task.linked` (admin only)

No parameter schema in public metadata yet.

delete_webhookDelete a webhook by ID (admin only)

Delete a webhook by ID (admin only)

No parameter schema in public metadata yet.

list_automationsList automation rules with run/failure counters (admin only). **Hosted API only.**

List automation rules with run/failure counters (admin only). **Hosted API only.**

No parameter schema in public metadata yet.

create_automationCreate a when→then automation rule that runs in-process on task events — e.g. "when a task labeled `bug` is created, assign it to Codex at P3". Conditions are AND-combined from a closed vocabulary; actions: `assign`, `set_priority`, `add_label`, `add_comment`, `create_task`, `...

Create a when→then automation rule that runs in-process on task events — e.g. "when a task labeled `bug` is created, assign it to Codex at P3". Conditions are AND-combined from a closed vocabulary; actions: `assign`, `set_priority`, `add_label`, `add_comment`, `create_task`, `...

No parameter schema in public metadata yet.

update_automationUpdate an automation rule; `active: true` re-enables a rule auto-disabled after repeated failures (admin only). **Hosted API only.**

Update an automation rule; `active: true` re-enables a rule auto-disabled after repeated failures (admin only). **Hosted API only.**

No parameter schema in public metadata yet.

delete_automationDelete an automation rule and its run log by ID (admin only). **Hosted API only.**

Delete an automation rule and its run log by ID (admin only). **Hosted API only.**

No parameter schema in public metadata yet.

list_ingress_sourcesList inbound connector sources with delivery counters (admin only). **Hosted API only.**

List inbound connector sources with delivery counters (admin only). **Hosted API only.**

No parameter schema in public metadata yet.

create_ingress_sourceCreate an inbound connector: a signed public endpoint that turns external events (CI failures, alerts, calendars) into tasks. Returns the HMAC signing secret once. (admin only). **Hosted API only.**

Create an inbound connector: a signed public endpoint that turns external events (CI failures, alerts, calendars) into tasks. Returns the HMAC signing secret once. (admin only). **Hosted API only.**

No parameter schema in public metadata yet.

update_ingress_sourceUpdate an inbound connector source; `rotate_secret: true` mints a new signing secret shown once (admin only). **Hosted API only.**

Update an inbound connector source; `rotate_secret: true` mints a new signing secret shown once (admin only). **Hosted API only.**

No parameter schema in public metadata yet.

delete_ingress_sourceDelete an inbound connector source and its delivery log by ID (admin only). **Hosted API only.**

Delete an inbound connector source and its delivery log by ID (admin only). **Hosted API only.**

No parameter schema in public metadata yet.

Sponsors

Configuration

DELEGA_API_KEY*secret

Existing Delega owner credential. Public hosted onboarding is retired.

DELEGA_API_URL

Delega API endpoint. The default https://api.delega.dev is an owner-only private runtime.

DELEGA_CF_ACCESS_CLIENT_IDsecret

Cloudflare Access service-token client ID. Configure it together with DELEGA_CF_ACCESS_CLIENT_SECRET.

DELEGA_CF_ACCESS_CLIENT_SECRETsecret

Cloudflare Access service-token secret. Configure it together with DELEGA_CF_ACCESS_CLIENT_ID.

Readme

delega-mcp

Maintenance status: Delega’s public hosted service retired on July 28, 2026. This client remains public as a verifiable engineering artifact and for Ryan McMillan’s existing private deployment. New public accounts and hosted access are not available. See the case study.

MCP server for Delega — a production task-coordination system for AI agents.

The package is maintained only where Ryan’s private operational use requires it. The default hosted endpoint accepts existing owner credentials only.

Install

npm install -g @delega-dev/mcp

Configure

Add to your MCP client config (e.g. Claude Code claude_code_config.json):

{
  "mcpServers": {
    "delega": {
      "command": "npx",
      "args": ["-y", "@delega-dev/mcp"],
      "env": {
        "DELEGA_API_URL": "https://api.delega.dev",
        "DELEGA_AGENT_KEY": "dlg_your_agent_key_here",
        "DELEGA_CF_ACCESS_CLIENT_ID": "your-access-client-id",
        "DELEGA_CF_ACCESS_CLIENT_SECRET": "your-access-client-secret"
      }
    }
  }
}

Environment Variables


View the full README on GitHub

Details

Repository
github.com/delega-dev/delega-mcp
Website
ryanmcmillan.com/delega
Package
@delega-dev/mcp
Transport
STDIO
Auth
Required
Registry
MCP registry, active