A governance primitive built on absence rather than refusal: a tool is registered only for the phase that requires it and removed when that phase ends, because a tool that does not exist cannot be misused.
The Model Context Protocol (MCP) delivers tools to autonomous agents, but in practice it is deployed statically: every tool is registered at session start and stays visible throughout execution. An agent with access to ten tools can call any of them at any moment, regardless of what phase of its task it is in.
Permission systems block unauthorised calls after the agent makes them. This paper argues that blocking after the fact is the wrong primitive, and that the right one is absence: a tool that does not exist cannot be misused.
DCP defines a controller that governs the MCP server — registering tools when a phase requires them, injecting phase-specific behavioural constraints into tool descriptions at registration time, sending mandatory cache-invalidation notifications on every phase transition, and deregistering tools completely when a phase ends.
DCP operates standalone from a developer-defined phase map, and composes with external authorities — among them the Asymmetric Auditor Protocol — through an authority-signal interface.
DOI: 10.2139/ssrn.6817898
ORCID: orcid.org/0009-0005-6512-3401