[BUG] MCP server instructions from initialize response are not passed to the model
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?
When an MCP server returns instructions in its initialize response (as defined by the MCP spec), these instructions are not included in the system prompt or otherwise made available to Claude at the start of a conversation. This means the model has no awareness of server-provided guidance unless it separately calls a tool like vim_info to retrieve similar information.
What Should Happen?
Expected behavior
The instructions field from the MCP initialize response should be injected into the model's context at the start of any chat where that MCP server is connected. This is the mechanism the MCP spec provides for servers to give the model context about how to use their tools effectively.
Actual behavior
The instructions are silently dropped. The model receives the tool definitions (names, descriptions, parameters) but not the server's high-level instructions. The model has no way to discover these instructions existed.
Error Messages/Logs
Steps to Reproduce
Configure an MCP server that returns an instructions field in its initialize response.
Connect Claude Desktop to that server.
Start a new chat.
Ask Claude: "Did you receive any instructions from the MCP protocol initialization?"
Claude will confirm it has no visibility into the initialize handshake and cannot see any instructions returned there.
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
Version 1.1.2102 (c5675a)
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
Terminal.app (macOS)
Additional Information
_No response_
This issue has 10 comments on GitHub. Read the full discussion on GitHub ↗