{"version":"2.1.269","anchor":"tool-unavailable-messaging-refactored-around-mcp-source-reso","canonical_anchor":"tool-unavailable-messaging-refactored-around-mcp-source-reso","heading":"Tool-unavailable messaging refactored around MCP source resolution","tier":"internal","area":"MCP","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.269\/e\/tool-unavailable-messaging-refactored-around-mcp-source-reso","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.269","markdown":"### Tool-unavailable messaging refactored around MCP source resolution\n\nTool-unavailable error messages now resolve MCP server info before falling back to older logic\n\n**What**\n\nWhen Claude Code needs to explain that a tool isn't available, it now first tries to look up the tool's MCP (Model Context Protocol, used for connecting external tool servers) source. If that source has MCP info and the tool isn't a plain slash-command-style tool, a different message formatter is used to build the explanation. Otherwise, it falls back to the older logic based on tool name and underlying tool identifiers.\n\n**Why**\n\nThis should produce more accurate or more specific 'tool not available' messages for tools that come from MCP servers, rather than relying only on generic name-based checks.\n\n- Area: MCP\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5"}