Skip to main content
Glama

copilot_delegate

Delegates bounded reviews, analysis, sparring, or code proposals to an automatically selected Copilot model, with scoped file access and staged writes for review.

Instructions

Preferred delegation entry point: automatically select a model and reasoning effort for a bounded review, sparring, analysis or code proposal. Use after meaningful changes/tests, before consequential decisions, or for well-specified analytical work; skip trivial work. Assert sharing authorization from the user/project policy, never guess it; granted file contents are shared too. Optional files grants scoped read access and staged writes; no shell or execution. Consumes Copilot allowance. Poll copilot_events, verify findings, optionally provide feedback. One explicit parentJobId escalation is allowed; no unattended retries.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "requestId": "<requestId>",
      "role": "<role>",
      "task": "<task>",
      "context": "<context>",
      "acceptanceCriteria": "<acceptanceCriteria>",
      "sharingAuthorized": "<sharingAuthorized>"
    },
    "name": "copilot_delegate"
  }
}

Input Schema

NameRequiredDescriptionDefault
riskNolow
roleYes
taskYes
filesNoOptional scoped file access for the delegate. Omit for context-only jobs.
contextYes
requestIdYes
complexityNonormal
leadFamilyNoModel family of the orchestrating assistant (Codex: openai, Claude: anthropic). Reviews prefer the other family. Defaults to the server's COPILOT_COUNTERPART_LEAD_FAMILY.
parentJobIdNoOne supervised escalation from a finished routed job, never an automatic retry.
timeoutSecondsNo
sharingAuthorizedYesAssert that this task context is authorized for your Copilot account; do not infer employer permission.
acceptanceCriteriaYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so: it discloses cost ('Consumes Copilot allowance'), side-effect limits ('no shell or execution', writes are staged), the authorization requirement that must not be guessed, and the retry/escalation policy ('One explicit parentJobId escalation... no unattended retries'). The polling instruction also signals the call is asynchronous rather than returning findings directly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the primary purpose and the trigger conditions, then layered with constraints; nearly every clause carries operational meaning. It is dense to the point of reading as a run-on across cost, auth, files, polling and retries, but no sentence is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter asynchronous job tool with a nested files object and no output schema, the description covers the lifecycle (delegate, poll, verify findings, optional feedback, apply staged writes) and the guardrails most likely to cause misuse. The main residual gap is that it does not state what the immediate call returns (presumably a job identifier), which an agent must infer from the polling instruction.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 33%, so the description needs to compensate, and it partially does: it explains the files grant (scoped recursive reads, staged writes), reinforces sharingAuthorized as an assertion not an inference, and constrains parentJobId to a single escalation. It says nothing about risk, complexity, leadFamily, timeoutSeconds, or requestId, and the enumerated roles omit 'correctness' even though it is in the enum, leaving several parameters to the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource framing ('Preferred delegation entry point') and enumerates the exact job shapes it handles: bounded review, sparring, analysis or code proposal. Combined with the explicit 'preferred' claim and the pointer to copilot_events for follow-up, an agent can tell this is the default way to hand off work rather than a lower-level start/orchestrate sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives concrete triggering conditions ('after meaningful changes/tests, before consequential decisions, or for well-specified analytical work') and an explicit exclusion ('skip trivial work'). It also routes the agent downstream to copilot_events for polling and to copilot_apply implicitly via staged writes, so the surrounding workflow is not left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.