You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: fix documentation inconsistencies from audit (#227) (#232)
- Remove 10 phantom "built-in MCP" references from create prompt; replace
with tools: azure-devops: as the first-class ADO integration
- Fix Complete Example and Common Patterns 1-3 (ado: true → azure-devops)
- Remove msft-learn and kusto: references from examples
- Fix update prompt validation checklist for 1ES MCP guidance
- Add categorized reference table of all 21 safe output tools to Step 9
- Add agent_stats.rs to AGENTS.md architecture tree
- Document --enabled-tools flag for mcp and mcp-http CLI commands
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copy file name to clipboardExpand all lines: prompts/create-ado-agentic-workflow.md
+85-35Lines changed: 85 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -178,29 +178,19 @@ target: 1es
178
178
179
179
### Step 8 — MCP Servers
180
180
181
-
MCP servers give the agent tools at runtime. Two kinds:
181
+
MCP servers give the agent additional tools at runtime via the MCP Gateway (MCPG). Configure them under `mcp-servers:` with either a `container:` field (containerized stdio) or a `url:` field (HTTP).
182
182
183
-
**Built-in** (no `container:` field):
183
+
**Azure DevOps integration** — use `tools: azure-devops:` (first-class, not an MCP server):
> **Security**: All `mcp-servers:` entries must have an explicit `allowed:` list.
218
219
>
219
-
> **1ES target**: Custom containerized MCPs are not supported — only built-ins with service connections.
220
+
> **Standalone target** (default): Only `mcp-servers:` entries with a `container:` or `url:` field are used. Entries without either field are silently skipped.
220
221
>
221
-
> **Standalone target** (the default): Built-in MCPs (entries without a `container:` or `url:` field) are silently skipped at compile time — they have no effect and will not be available to the agent. For the standalone target, use only **custom** containerized MCPs with a `container:` field.
222
+
> **1ES target**: Custom containerized MCPs are mapped to service connections. Use `tools: azure-devops:` for ADO integration on both targets.
222
223
223
224
### Step 9 — Safe Outputs
224
225
@@ -264,9 +265,60 @@ tools:
264
265
- .txt
265
266
```
266
267
267
-
Other safe output tools (no configuration needed): `noop`, `missing-data`, `missing-tool`, `report-incomplete`.
268
+
**All configurable safe output tools:**
269
+
270
+
| Tool | Description | `permissions.write` |
271
+
|------|-------------|:-------------------:|
272
+
| **Work Items** | | |
273
+
| `create-work-item` | Create ADO work items | ✅ |
274
+
| `update-work-item` | Update fields on existing work items (each field requires opt-in) | ✅ |
275
+
| `comment-on-work-item` | Add comments to work items (requires `target` scoping) | ✅ |
276
+
| `link-work-items` | Link two work items (parent/child, related, etc.) | ✅ |
277
+
| `upload-attachment` | Upload a workspace file to a work item | ✅ |
| `missing-tool` | Report a missing tool or capability | — |
297
+
| `report-incomplete` | Report that a task could not be completed | — |
298
+
299
+
Example configuration for additional tools:
300
+
```yaml
301
+
safe-outputs:
302
+
comment-on-work-item:
303
+
target: "TeamProject\\AreaPath" # Required — scopes which work items can be commented on
304
+
max: 3
305
+
update-work-item:
306
+
status: true # Each updatable field requires explicit opt-in
307
+
title: true
308
+
max: 5
309
+
target: "*"
310
+
add-pr-comment:
311
+
max: 10
312
+
queue-build:
313
+
allowed-pipelines: [42, 99] # Required — pipeline definition IDs that can be triggered
314
+
max: 1
315
+
```
316
+
317
+
> See `AGENTS.md` → "Available Safe Output Tools" for full configuration reference of every tool.
318
+
319
+
Diagnostic tools (`noop`, `missing-data`, `missing-tool`, `report-incomplete`) are always available and require no configuration.
268
320
269
-
> **Validation**: The compiler enforces that if `create-pull-request` or `create-work-item` are configured, `permissions.write` must be set.
321
+
> **Validation**: The compiler enforces that if write-requiring safe outputs are configured, `permissions.write` must be set.
270
322
271
323
### Step 10 — Permissions
272
324
@@ -378,8 +430,8 @@ name: "Dependency Updater"
378
430
description: "Checks for outdated npm dependencies and opens PRs to update them"
379
431
engine: claude-sonnet-4.5
380
432
schedule: weekly on monday around 9:00
381
-
mcp-servers:
382
-
ado: true
433
+
tools:
434
+
azure-devops: true
383
435
permissions:
384
436
read: my-read-arm-sc
385
437
write: my-write-arm-sc
@@ -402,7 +454,7 @@ Scan this repository for outdated npm dependencies and open a pull request to up
402
454
### Analysis
403
455
404
456
1. Run `npm outdated --json` to identify packages with newer versions available.
405
-
2. For each outdated package, check whether the new version introduces any breaking changes by reviewing its changelog or release notes (use `msft-learn` if relevant documentation is available).
457
+
2. For each outdated package, check whether the new version introduces any breaking changes by reviewing its changelog or release notes.
406
458
3. Focus on patch and minor updates first; flag major version bumps separately.
407
459
408
460
### Action
@@ -463,10 +515,8 @@ Agent reads data (Kusto, ADO) and files a work item if action is needed.
463
515
464
516
```yaml
465
517
schedule: daily around 10:00
466
-
mcp-servers:
467
-
ado: true
468
-
kusto:
469
-
allowed: [query]
518
+
tools:
519
+
azure-devops: true
470
520
permissions:
471
521
read: my-read-sc
472
522
write: my-write-sc
@@ -485,8 +535,8 @@ triggers:
485
535
pipeline:
486
536
name: "CI Build"
487
537
branches: [main, feature/*]
488
-
mcp-servers:
489
-
ado: true
538
+
tools:
539
+
azure-devops: true
490
540
permissions:
491
541
read: my-read-sc
492
542
write: my-write-sc
@@ -501,8 +551,8 @@ Agent makes code changes and proposes them via PR.
Copy file name to clipboardExpand all lines: prompts/update-ado-agentic-workflow.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -250,7 +250,7 @@ Before finalizing any update, verify:
250
250
251
251
6. **Network domains**: If new MCPs or external services are added, ensure required domains are in `network.allowed`.
252
252
253
-
7. **Target compatibility**: If `target: 1es`, custom MCPs (with `container:`) are not supported — only built-in MCPs with service connections.
253
+
7. **Target compatibility**: If `target: 1es`, custom containerized MCPs (with `container:`) are not supported — use `mcp-servers:` entries mapped to service connections instead.
0 commit comments