Add trustedBots field to MCP Gateway spec, schema, and frontmatter#21865
Add trustedBots field to MCP Gateway spec, schema, and frontmatter#21865
Conversation
Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com> Agent-Logs-Url: https://github.com/github/gh-aw/sessions/ddc0ea39-4d99-4212-bfe5-a571981cc2bd
|
@copilot make it clear that this list is additive, i.e., it cannot remove the list of trusted bots that the gateway maintains internally. |
…ity list Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com> Agent-Logs-Url: https://github.com/github/gh-aw/sessions/a5b2237b-cc7a-4b21-9d14-1eb8e8e03bf2
Updated in cc60fe7. The spec (§4.1.3 table, §4.1.3.4, §7.5) and both schema descriptions now explicitly state that |
|
@copilot remove any support for X-GitHub-Actor request header, independent of API key authentication. This is only for sharing a list of trusted bots with the gateway via config. Also make sure that this config param can be set by agentic workflow authors in teh front matter and that the renderer will take frontmatter config and translate it into mcp-gateway config |
…frontmatter to renderer Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com> Agent-Logs-Url: https://github.com/github/gh-aw/sessions/a5944233-9f4e-4300-907c-57f2cb82dafe
Done in 80d9f1e.
|
|
@pelikhan let me know if this looks ok to you |
|
There is already a top-level |
|
I will review it and merge it with the existing frontmatter later if you want. |
|
@pelikhan OK, that's fine. The main thing is that it should be clear that the list is additive. I'd also prefer trusted-bots since it's a bit more descriptive. thanks! |
No way existed to share an allowlist of additional GitHub bot identities with the MCP Gateway. This adds
trustedBotsto the gateway configuration as a pure config-passing mechanism: workflow authors declare it in frontmatter, and the compiler translates it into thetrustedBotsarray in the generated gateway config. The field is additive — it extends the gateway's own built-in trusted identity list and cannot remove entries from it.Schema (
gatewayConfig)New optional
trustedBots: array[string]field in both schema files (pkg/workflow/schemas/anddocs/public/schemas/). When present, must be a non-empty array of non-empty strings.{ "gateway": { "port": 8080, "domain": "localhost", "apiKey": "${MCP_GATEWAY_API_KEY}", "trustedBots": [ "github-actions[bot]", "copilot-swe-agent[bot]" ] } }Frontmatter (workflow authors)
Workflow authors configure
trustedBotsviasandbox.mcp.trusted-botsin the workflow frontmatter (both kebab-casetrusted-botsand camelCasetrustedBotskeys are accepted):The compiler extracts this field and includes it in the
trustedBotsarray of thegatewaysection in the generated MCP config file.Go code
tools_types.go—TrustedBots []stringadded toMCPGatewayRuntimeConfigfrontmatter_extraction_security.go—extractMCPGatewayConfigextractstrusted-bots/trustedBotsmcp_gateway_config.go—buildMCPGatewayConfigpropagatesTrustedBotsmcp_renderer.go— renderstrustedBotsas a JSON array in the gateway sectionSpec (
mcp-gateway.md) — bumped to v1.9.0trustedBotsrow added (additive, cannot remove built-in entries)trustedBotsas a config-passing mechanism from frontmatter to gateway config📱 Kick off Copilot coding agent tasks wherever you are with GitHub Mobile, available on iOS and Android.