Loading
Remove the mcp_toolsets feature flag
What does this MR do and why?
Removes the mcp_toolsets feature flag and its YAML definition. MCP server toolset selection is now always on: tools/list honours the X-Gitlab-Enabled-Mcp-Server-Toolsets header, falls back to the default toolsets when neither the tools nor the toolsets header is set, and annotates every tool with its toolset.
References
- Rollout issue: #628470 (closed)
- Feature issue: #607755 (closed)
- Introduced in !252370 (merged)
Screenshots or screen recordings
No UI changes.
How to set up and validate locally
- Make sure the flag has no stored state:
Feature.remove(:mcp_toolsets)inrails console. - Call
tools/liston the MCP endpoint with a personal access token that has themcpscope:curl -s -X POST http://gdk.test:3000/api/v4/mcp \ -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \ -H "X-Gitlab-Enabled-Mcp-Server-Toolsets: ci" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | jq '.result.tools[] | {name, toolset: .annotations.toolset}' - Only
citools and the always-on tools come back, and each has atoolsetannotation. - Repeat without the toolsets header. Only the default toolsets are returned.
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Terri Chu