MCP Server: Support multiple specifications in client handshake (2025-06-18 now, future ?)

Release notes

Problem to solve

The GitLab MCP Server supports the current MCP specification, 2025-06-18.

We learned that older specifications exist, which are implemented by clients like continue. These clients throw an error on connect:

Failed to connect to "GitLab MCP server"
Error: Server's protocol version is not supported: 2025-06-18

To work with GitLab, these MCP Clients need to update their client SDKs implementation to the newer protocol specification.

Full details in #561564 (comment 2900533601)

Proposal

The MCP protocol specification will release a new version, and we should discuss how best to support our customers using different clients (and therefore, spec versions) in production.

Questions to answer:

  1. Will all MCP Clients immediately be updated to the newer spec version
  2. Are there any LTS use cases to support an older spec for X amount of time (will need docs + support maintenance policy updates).

Idea:

  1. Implement a client handshake with supported versions
  2. Different behavior depending on client sent version
  3. Similar to Docker API version requirements

Intended users

Feature Usage Metrics

Does this feature require an audit event?

/cc @nateweinshenker @amandarueda @wortschi

Edited by 🤖 GitLab Bot 🤖