Skip to main content
Glama

ado_create_task

WHEN: user asks to create a DevOps Task or start development on a Work Item. Triggers: 'create task', 'créer une tâche', 'start development on', 'commencer le dev sur', 'créer un task ADO', 'new development task for WI'. Create a D365 F&O development Task work item in Azure DevOps following the project naming convention. Rules applied automatically based on the parent work item: (A) Parent title starts with a project prefix + digits (FDD/RDD/IDD/CR/...) => Task named '{Prefix} - N - {Title}', Task is child of that WI, branch '{Prefix}Task{id}'. (B) Selected WI is related to a prefixed WI (e.g. a Bug linked to a CR) => Task is child of the prefixed WI, Bug is 'related' to the Task, same naming. (C) No prefixed relation => Task named '{3-letter-type}{wiId} - N - {Title}', child of selected WI, branch '{3-letter-type}{wiId}Task{id}'. The N counter increments automatically based on existing sibling tasks. A Git branch is created automatically in the repository. Assignee and CC list are embedded in the task description. LANGUAGE RULE: write the 'description' (Proposed Solution) in the same language the user used in their request. Default is English. If the user wrote in French, write the solution in French. Static section labels (headers, field names) remain in English. Requires DEVOPS_ORG_URL + DEVOPS_PAT (Work Items: Read & Write, Code: Read & Write).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
projectNoOptional: Azure DevOps project name. Falls back to DEVOPS_PROJECT env var.
areaPathNoOptional: area path for the new task, e.g. 'MyProject\SER'. Inherits from parent if omitted.
assignToNoOptional: email address of the person to assign the task to, e.g. 'dev@company.com'.
notifyListNoOptional: comma-separated list of email addresses to notify (added to task description), e.g. 'lead@company.com,qa@company.com'.
workItemIdYesID of the selected Work Item (parent, bug, issue, etc.) to base the task on.
descriptionNoOptional: additional description / acceptance criteria text to append to the task.
effortHoursNoOptional: estimated effort in hours (Original Estimate).
repositoryIdNoOptional: Git repository name to create the branch in. If omitted, uses the first repository found.
sourceBranchNoOptional: source branch to branch from (default: repo default branch, e.g. 'main').
iterationPathNoOptional: iteration path for the new task, e.g. 'MyProject\Sprint 5'. Inherits from parent if omitted.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

The description richly discloses behavior beyond the annotations: automatic Git branch creation, the three-case naming convention logic (A/B/C), the N counter increment behavior, assignee/CC embedding in the task description, the French/English language rule, and credential requirements (DEVOPS_ORG_URL + DEVOPS_PAT with specific permissions). readOnlyHint=false is consistent with a create operation; no contradiction.

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?

The description is long but earns its length given the tool's complexity (10 parameters, three naming branches, language rule, auth requirements). It is well-structured and front-loaded with WHEN triggers before rules and requirements. Minor redundancy exists in repeating trigger examples and the naming convention explanation, but no sentence is wasted.

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 high-complexity tool with no output schema, the description covers usage, naming behavior, branch creation, language handling, and credentials. The main gap is that it never states what the tool returns (task ID, branch name, URL), which an agent would need to continue a workflow after creating the task.

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 100%, so the schema already documents all 10 parameters, warranting the baseline of 3. The description adds indirect context—naming rules depend on the parent work item (workItemId) and assignee/CC get embedded in the description—but it does not add per-parameter semantic detail beyond what the schema provides.

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 states a specific verb and resource: 'Create a D365 F&O development Task work item in Azure DevOps following the project naming convention.' It also includes concrete trigger phrases ('create task', 'start development on', 'créer une tâche') that make selection unambiguous. The create-vs-update distinction is clear against siblings like ado_update_workitem.

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

Usage Guidelines4/5

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

The description gives explicit WHEN guidance with trigger phrases ('create task', 'créer une tâche', 'start development on', etc.), which is strong usage direction. It does not explicitly name alternatives to avoid or when-not conditions, but the trigger listing plus the creation-oriented rules make the intended invocation context clear.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.