Skip to content

Commit 009e03a

Browse files
jamesadevineCopilot
andcommitted
fix: remove legacy service-connection MCP field (#233)
Remove the dead `service_connection` field from `McpOptions` and fix incorrect documentation claiming 1ES uses service connections for MCP routing. Both targets use MCPG — the field was parsed but never read. - Remove `service_connection` field from `McpOptions` in types.rs - Remove `service-connection:` from AGENTS.md MCP config docs - Fix create/update prompts: 1ES supports containerized MCPs via MCPG Closes #233 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 1e396a0 commit 009e03a

4 files changed

Lines changed: 3 additions & 9 deletions

File tree

AGENTS.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1561,7 +1561,6 @@ mcp-servers:
15611561
**Common (both types):**
15621562
- `allowed:` - Array of tool names the agent is permitted to call (required for security)
15631563
- `env:` - Environment variables for the MCP server process. Use `""` (empty string) for passthrough from the pipeline environment.
1564-
- `service-connection:` - (1ES target only) Override the service connection name. Defaults to `mcp-<name>-service-connection`
15651564

15661565
### Environment Variable Passthrough
15671566

prompts/create-ado-agentic-workflow.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ target: 1es
174174
| Value | Generates |
175175
|---|---|
176176
| `standalone` | Full 3-job pipeline with AWF network sandbox and Squid proxy |
177-
| `1es` | Pipeline extending `1ES.Unofficial.PipelineTemplate.yml`; no custom proxy; MCPs via service connections |
177+
| `1es` | Pipeline extending `1ES.Unofficial.PipelineTemplate.yml`; no custom proxy; MCPs via MCPG |
178178

179179
### Step 8 — MCP Servers
180180

@@ -216,8 +216,6 @@ mcp-servers:
216216

217217
> **Security**: Custom MCPs must have an explicit `allowed:` list. Built-in MCPs default to all tools when set to `true`.
218218
>
219-
> **1ES target**: Custom containerized MCPs are not supported — only built-ins with service connections.
220-
>
221219
> **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.
222220

223221
### Step 9 — Safe Outputs
@@ -542,4 +540,4 @@ safe-outputs:
542540
- **No direct writes**: All mutations go through safe outputs — the agent cannot push code or call write APIs directly.
543541
- **Compile before committing**: Always compile with `ado-aw compile` and commit both the `.md` source and generated `.yml` together.
544542
- **Check validation**: The compiler will error if write safe-outputs are configured without `permissions.write`.
545-
- **1ES target limits**: No custom MCPs, no custom network allow-lists — these are handled by OneBranch infrastructure.
543+
- **1ES target limits**: No custom network allow-lists — these are handled by OneBranch infrastructure.

prompts/update-ado-agentic-workflow.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ Before finalizing any update, verify:
250250

251251
6. **Network domains**: If new MCPs or external services are added, ensure required domains are in `network.allowed`.
252252

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**: Both `standalone` and `1es` targets support containerized MCPs via MCPG.
254254

255255
8. **Safe output `target` fields**: `comment-on-work-item` requires an explicit `target` field. `update-work-item` fields require explicit opt-in (`status: true`, `title: true`, etc.).
256256

src/compile/types.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -707,9 +707,6 @@ pub struct McpOptions {
707707
/// Environment variables for the MCP server process
708708
#[serde(default)]
709709
pub env: HashMap<String, String>,
710-
/// Service connection name (1ES only, auto-generated if not specified)
711-
#[serde(default, rename = "service-connection")]
712-
pub service_connection: Option<String>,
713710
}
714711

715712
/// Trigger configuration for the pipeline

0 commit comments

Comments
 (0)