Skip to content

tools.web-fetch compiles to invalid MCP Gateway config (command/args instead of container) #17820

@strawgate

Description

@strawgate

tools: web-fetch currently compiles to an MCP Gateway config that fails schema validation.

Repro

Minimal workflow:

---
name: "Web Fetch Repro"
on:
  workflow_dispatch:
engine:
  id: gemini
  model: gemini-3-pro-preview
permissions:
  contents: read
tools:
  web-fetch:
strict: false
---

Compile:

gh aw compile web-fetch-repro

Actual generated lock output

Generated .lock.yml contains:

"web-fetch": {
  "command": "docker",
  "args": ["run", "-i", "--rm", "mcp/fetch"]
}

Expected

web-fetch should be rendered in a gateway-schema-compliant server shape (stdio server with container, e.g.):

"web-fetch": {
  "container": "mcp/fetch"
}

Failure symptom

Gateway startup fails with schema errors like:

  • missing properties: 'container'
  • additionalProperties 'command', 'args' not allowed
  • location: /mcpServers/web-fetch

Engine impact

  • Affected: gemini, likely codex (both rely on MCP web-fetch server generation when tools: web-fetch is requested)
  • Not affected by this specific path: claude, copilot (both have built-in web-fetch support and generally skip MCP web-fetch server generation)

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions