Configurable Tool Exposure to Reduce Context Usage
Currently, gitlab-mcp exposes all available tools to MCP clients, which has several drawbacks:
- High context consumption: All tool descriptions are sent to the LLM, consuming tokens even for unused tools
- Performance impact: Large tool sets (especially when using multiple MCP servers) can impact performance
- Tool limit constraints: Some MCP clients (e.g., Cursor) have hard limits on the number of tools (40 in Cursor's case)
- Unnecessary complexity: Users often need only a subset of available tools for their specific workflows
For example, a user focused on merge request reviews might only need 10-15 tools out of the full set, but currently must expose all tools, wasting context and potentially hitting client limits.