Draft: Rename gitlab_search mcp tool to search

What does this MR do and why?

What

This MR

  • adds support for tool aliases to allow graceful rename and no downtime for connected clients
  • renames gitlab_search MCP tool to search

Why

The tools are already prefixed by gitlab_ so this tool ends up being gitlab_gitlab_search. None of the other tools are named like this.

A note about this change: The tool rename will NOT cause errors for connected clients. The MCP documentation says "Servers can notify clients when tools change using notifications/tools/list_changed" but the gitlab MCP server does not support this.

I considered gracefully supporting both tools for a period of time with some "DEPRECATED" notice in description, but I don't think we can guarantee connected clients won't still call the old tool name and they call list tools again to see what's available.

AI Summary

This code change renames a search tool from "gitlab_search" to simply "search" throughout the codebase. To maintain backward compatibility, the old name "gitlab_search" is kept as an alias, so existing code that uses the old name will continue to work. The change also adds a new alias system that allows tools to have multiple names, making it easier to rename tools in the future without breaking existing integrations. All related files, tests, and documentation have been updated to use the new shorter name while preserving the functionality.

References

Screenshots or screen recordings

Before After

How to set up and validate locally

Using Claude desktop

  1. start a discussion on master branch
  2. ask Claude to only use the GDK MCP server
  3. ask to "search for issues with _______", in my gdk I use dismiss because I know those issues exist
  4. note it uses gitlab search tool
  5. switch to this branch
  6. ask Claude to search within a specific project or group for the same thing
  7. note it continues to use gitlab search tool with no problems/hangs/issues

I verified this in the claude logs

Using mcp jam inspector

  1. setup mcp server in your favorite testing tool, I used mcp jam inspector
    npx @mcpjam/inspector@latest
  2. run the search tool

image

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

Merge request reports

Loading