My MCP Tools Broke Silently — Schema Drift Is the New Dependency Hell

Here's a failure mode that looks like nothing went wrong. An agent queries an MCP search tool. The tool returns valid JSON — empty results. The model receives the empty response, thinks about it, a...

By · · 1 min read
My MCP Tools Broke Silently — Schema Drift Is the New Dependency Hell

Source: DEV Community

Here's a failure mode that looks like nothing went wrong. An agent queries an MCP search tool. The tool returns valid JSON — empty results. The model receives the empty response, thinks about it, and returns: "No results found. The query might be too specific — try broadening your search terms." Helpful. Confident. Wrong. The cause: the upstream MCP tool renamed a parameter from query to search_query. The agent was still sending query. The tool didn't reject it — it silently ignored the unknown field, used its default (empty string), and dutifully searched for nothing. The model got the empty result, reasoned around it like a good language model does, and produced a polished explanation of why nothing was found. No error. No warning. No stack trace. Just a quiet lie wrapped in perfect grammar. Why didn't the client validate tool inputs against the schema before calling? Many agent frameworks don't validate by default — they pass the model's tool call directly to the server. And many MC