
Company News
Free Business Plan Upgrades for Open Source Maintainers
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.
@delega-dev/mcp
Advanced tools
MCP server for Delega — the task handoff layer for AI agents.
Connect any MCP-compatible client (Claude Code, Cursor, Codex, etc.) to Delega and manage tasks, projects, and agents through natural language.
npm install -g @delega-dev/mcp
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"
}
}
}
}
| Variable | Default | Description |
|---|---|---|
DELEGA_API_URL | https://api.delega.dev | Delega API endpoint. Defaults to the hosted API; custom /api-style endpoints (e.g. http://localhost:18890) are an advanced override. |
DELEGA_AGENT_KEY | (none) | Agent API key for authenticated requests. Preferred for MCP configs; if both key env vars are set, this one wins. |
DELEGA_API_KEY | (none) | Fallback alias accepted so the MCP, CLI, and SDK can share one env var when needed. |
DELEGA_REVEAL_AGENT_KEYS | 0 | ⚠️ Development only. Set to 1 to print full API keys in tool output. Never enable in production: a prompt-injected agent could exfiltrate keys from register_agent or list_agents responses. |
DELEGA_REVEAL_WEBHOOK_SECRETS | 0 | ⚠️ Development only. Set to 1 to print a newly created webhook signing secret in full. Leave disabled when transcripts or tool output may be retained. |
Use https://api.delega.dev as the URL.
DELEGA_API_URL values must use https://.DELEGA_REVEAL_AGENT_KEYS=1 in production. This flag exists for initial setup only. In production, a prompt-injected agent could exfiltrate keys from register_agent or list_agents tool output. Keys are returned once at creation time; register a replacement agent if you need a new key.| Tool | Description |
|---|---|
list_tasks | List tasks, filter by project, label, due date, completion |
get_task | Get full task details including subtasks and task links |
link_task | Attach a branch, commit, PR, or URL link to a task |
list_task_links | List branch, commit, PR, and URL links attached to a task |
create_task | Create a new task |
list_recurrences | List recurring task templates |
create_recurring_task | Create a recurring task template (daily, weekly, monthly, or yearly) |
update_recurrence | Update a recurring task template, including pausing/resuming with active |
delete_recurrence | Delete a recurring task template; existing spawned task instances remain |
update_task | Update task fields (incl. assigned_to_agent_id) |
assign_task | Assign a task to an agent (or pass null to unassign) |
delegate_task | 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. |
get_task_chain | Return the full delegation chain for a task (root + descendants, sorted by depth) |
update_task_context | Merge keys into a task's persistent context blob (deep merge, not replace), recording provenance source |
get_task_context | Read a task's persistent context blob, optionally with per-key provenance |
get_context_history | Read the append-only provenance ledger for a task's context |
find_duplicate_tasks | Check whether proposed task content is similar to existing open tasks (TF-IDF + cosine similarity). Call before create_task to avoid redundant work. |
get_usage | Return quota + rate-limit info. Hosted API only (api.delega.dev); custom endpoints receive a clear error. |
claim_task | 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; targeted claims ignore those queue-only filters. Hosted API only. |
heartbeat_task | Extend the lease on a claimed task. Optionally report working, waiting_input, or errored plus detail while extending the lease. Hosted API only. |
release_task | Release a claimed task back to the queue without completing it. Hosted API only. |
set_task_state | Report working, waiting_input, or errored on a claimed task without extending the lease. Hosted API only. |
complete_task | Mark a task as completed |
delete_task | Delete a task permanently |
add_comment | Add a comment to a task |
list_projects | List all projects |
get_stats | Get task statistics |
list_agents | List registered agents |
register_agent | Register a new agent (returns API key), optionally with a role preset |
set_agent_role | Set an agent's role: worker, coordinator, or admin (admin key required) |
delete_agent | Delete an agent (refused if agent has active tasks) |
list_webhooks | List all webhooks (admin only) |
create_webhook | 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) |
delete_webhook | Delete a webhook by ID (admin only) |
Task list and detail outputs (list_tasks, get_task, create_task, update_task, assign_task, delegate_task, and successful claim_task) render each task with assignment metadata when available:
[#42] Ship the release
Description: Cut RC, tag, push to npm
Project: Delega
Labels: release
Priority: 3
Due: 2026-04-20
Assigned to: Coordinator (#7)
Created by: planner (#3)
Completed: no
Assigned to / Created by / Accountable / Completed by lines are emitted only when the underlying field is populated. Completed by is shown only for completed tasks. Custom /api-style endpoints return a nested agent object so the assignee renders as <display_name> (#id); the hosted api.delega.dev API returns the raw agent ID so it renders as #<id>.
Tasks that are part of a delegation chain also surface the chain metadata:
[#def] Draft intro
Status: delegated
Assigned to: Drafter (#3)
Created by: Coordinator (#7)
Delegation: depth 1, parent #abc, root #abc
Delegated by: Coordinator (#7)
Completed: no
Context keys: step, findings (2)
Single-task tools (get_task, create_task, update_task, assign_task, delegate_task, and successful claim_task) use a detail render that pretty-prints the full context blob (truncated at 2000 chars). update_task_context shows the updated task detail when the API returns a task; otherwise it prints the merged context and version. list_tasks uses the concise list render which shows Context keys: … instead.
Claimed tasks can include a session state inline with Status, for example Status: claimed (waiting_input — "needs prod API key"). heartbeat_task can set that state while extending the lease; set_task_state changes it without extending the lease.
get_task also shows attached task links when present:
Links:
branch: delega-dev/delega-api phase-3-github — https://github.com/delega-dev/delega-api/tree/phase-3-github
pr: delega-dev/delega-api 42 — https://github.com/delega-dev/delega-api/pull/42
get_task_chain returns the full parent/child chain for any task in the chain. Output is indented by delegation_depth:
Delegation chain (root #abc, depth 2, 2/4 complete):
[#abc] Write report (depth 0, delegated)
[#def] Draft intro (depth 1, completed)
[#jkl] Draft conclusion (depth 1, pending)
[#ghi] Research sources (depth 2, completed)
Nodes are sorted by depth then creation order (matching the API's response ordering).
Recurring task tools manage templates. The hosted scheduler creates normal task instances from those templates; completing an instance does not delete or pause the recurrence.
list_recurrences, create_recurring_task, and update_recurrence render templates with their rule, next due timestamp, active state, skip-if-open behavior, and available agent metadata:
[#weekly-report] Weekly report
Rule: weekly, weekday 1
Timezone: America/Chicago
Next due: 2026-06-22T14:00:00Z
Active: yes
Skip if open: yes
Assigned to: Reporter (#7)
Delega is a hosted service. Point DELEGA_API_URL at https://api.delega.dev — free up to 1,000 tasks/month.
MIT
FAQs
MCP client for Delega, a retired public service preserved as production engineering proof
The npm package @delega-dev/mcp receives a total of 166 weekly downloads. As such, @delega-dev/mcp popularity was classified as not popular.
We found that @delega-dev/mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Open source maintainers are under more pressure than ever. We're raising our open source program from the Team plan to the Business plan, free.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.