[BUG] MCP capability negotiation protocol violation

Resolved 💬 3 comments Opened Oct 6, 2025 by Adamovskiy Closed Jan 9, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Claude ignores MCP server capabilities. Example: a server responds to initialize request with

{
        jsonrpc: "2.0",
        id: 0,
        result: {
            protocolVersion: "2025-06-18",
            capabilities: {
                experimental: {},
                tools: { listChanged: true },
                // prompts: { listChanged: true }, NOT SUPPORTED!
                // resources: { listChanged: true } NOT SUPPORTED!
            },
            serverInfo: {
                name: "Test Server MCP SSE Proxy",
                version: "1.1.1"
            }
        }
    }

But then, it gets resources/list and prompts/list requests anyway.

What Should Happen?

https://modelcontextprotocol.io/specification/2025-06-18/basic/lifecycle#capability-negotiation

Error Messages/Logs

Steps to Reproduce

Connect with claude.ai or Claude Desktop to an MCP server that doesn't support prompts capability.

Claude Model

None

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

Claude 0.13.37 (bfd4ed) 2025-09-24T22:18:50.000Z

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗