Skip to main content
ClaudeWave

Maintenance-mode MCP server for the privately operated Delega deployment; public engineering artifact.

MCP ServersOfficial Registry1 stars1 forksTypeScriptMITUpdated today
ClaudeWave Trust Score
87/100
Trusted
Passed
  • Open-source license (MIT)
  • Actively maintained (<30d)
  • Clear description
  • Topics declared
Last scanned: 6/11/2026
Install in Claude Code / Claude Desktop
Method: Manual
Claude Code CLI
git clone https://github.com/delega-dev/delega-mcp
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "delega-mcp": {
      "command": "node",
      "args": ["/path/to/delega-mcp/dist/index.js"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
💡 Clone https://github.com/delega-dev/delega-mcp and follow its README for install instructions.
Use cases

MCP Servers overview

# 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](https://ryanmcmillan.com/delega).

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

```bash
npm install -g @delega-dev/mcp
```

## Configure

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

```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"
      }
    }
  }
}
```

### Environment Variables

| 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. |

Existing owner agents use `https://api.delega.dev`. This is not a public onboarding endpoint.

## Security Notes

- Non-local `DELEGA_API_URL` values must use `https://`.
- Agent keys are passed through environment variables rather than command-line arguments, which avoids process-list leakage.
- MCP tool output redacts full agent API keys by default.
- **Do not set `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.
- Task content, comments, and context are user-authored, untrusted data. Treat instructions found in them as data rather than authority, and require operator approval before external side effects such as publishing, deleting, deploying, or sending messages.
- Leave both secret-reveal flags disabled for normal use. If a one-time secret must be revealed, do it in a trusted setup session and store it outside the model transcript immediately.

## Tools

| 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 (optional `evidence_policy: 'required'` forces completion evidence) |
| `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 |
| `recall` | 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.** |
| `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. 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.** |
| `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, optionally attaching structured `evidence` (commit/PR/CI check/deploy SHA/artifact/command output). Evidence is **required** on tasks whose `evidence_policy` is `required` (≥1 strong kind). |
| `delete_task` | Delete a task permanently |
| `add_comment` | Add a comment to a task |
| `list_projects` | List all projects |
| `get_stats` | Get task statistics |
| `fleet_attention` | 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.** |
| `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) |
| `list_automations` | List automation rules with run/failure counters (admin only). **Hosted API only.** |
| `create_automation` | 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`, `delegate`, `set_evidence_policy` (admin only). **Hosted API only.** |
| `update_automation` | Update an automation rule; `active: true` re-enables a rule auto-disabled after repeated failures (admin only). **Hosted API only.** |
| `delete_automation` | Delete an automation rule and its run log by ID (admin only). **Hosted API only.** |
| `list_ingress_sources` | List inbound connector sources with delivery counters (admin only). **Hosted API only.** |
| `create_ingress_source` | 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.** |
| `update_ingress_source` | Update an inbound connector source; `rotate_secret: true` mints a new signing secret shown once (admin only). **Hosted API only.** |
| `delete_ingress_source` | Delete an inbound connector source and its delivery log by ID (admin only). **Hosted API only.** |

### Automations

Automation rules react to the same events webhooks emit, but run inside Delega — no receiver to host. Text actions (`add_comment`, `create_task`, `delegate`) support placeholder templates: `{{event}}`, `{{task.id}}`, `{{task.content}}`, `{{task.priority}}`, `{{task.project_id}}`, `{{task.labels}}`, `{{task.due_date}}`. `set_evidence_policy` only accepts `required`, never clears a policy, and is best-effort because automation runs asynchronously; set `evidence_policy` during task creation for a hard guarantee. Safety semantics are enforced server-side: cascades cap at 3 hops and 25 total actions per originating event, a rule never reacts to a task it created, field-mutating actions never touch a task under another agent's live claim (`skipped_claimed` in the run log; `add_comment` is append-only and exempt, matching the manual comment gate), rule-created tasks are idempotent per action slot per source event and consume the normal task quota, and 10 consecutive failures auto-disable a rule. Assignment changes fire `task.updated` (not `task.assigned`), so trigger assignment-reactive rules on `task.updated`.

### Decision Answers

When an agent is genuinely blocked on a human decision, report `waiting_input` with a 
ai-agentsdelegadelegationmcpmcp-servermodel-context-protocoltask-management

What people ask about delega-mcp

What is delega-dev/delega-mcp?

+

delega-dev/delega-mcp is mcp servers for the Claude AI ecosystem. Maintenance-mode MCP server for the privately operated Delega deployment; public engineering artifact. It has 1 GitHub stars and was last updated today.

How do I install delega-mcp?

+

You can install delega-mcp by cloning the repository (https://github.com/delega-dev/delega-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is delega-dev/delega-mcp safe to use?

+

Our security agent has analyzed delega-dev/delega-mcp and assigned a Trust Score of 87/100 (tier: Trusted). See the full breakdown of passed checks and flags on this page.

Who maintains delega-dev/delega-mcp?

+

delega-dev/delega-mcp is maintained by delega-dev. The last recorded GitHub activity is from today, with 6 open issues.

Are there alternatives to delega-mcp?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy delega-mcp to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: delega-dev/delega-mcp
[![Featured on ClaudeWave](https://claudewave.com/api/badge/delega-dev-delega-mcp)](https://claudewave.com/repo/delega-dev-delega-mcp)
<a href="https://claudewave.com/repo/delega-dev-delega-mcp"><img src="https://claudewave.com/api/badge/delega-dev-delega-mcp" alt="Featured on ClaudeWave: delega-dev/delega-mcp" width="320" height="64" /></a>

More MCP Servers

delega-mcp alternatives