MCP is Winning
The Model Context Protocol is becoming the standard for connecting AI to external tools. Anthropic built it. OpenAI adopted it. It's how agents access databases, file systems, APIs, and services. There's just one problem: MCP inherited its authorization model from a world that assumed humans were always present.
The OAuth Dance
Today, when an agent needs access to your documents, it triggers an OAuth flow. You're redirected to a consent screen. You select which documents. You click approve. A token is issued. This works—if a human is sitting there, ready to click.
Why This Breaks
What happens when the agent needs to act at 3 AM? When an orchestrator spawns sub-agents? When you have dozens of agents, each needing authorization? Consent fatigue leads to rubber-stamping—or abandonment.
Flip the Model
DNTLS flips the model. Instead of authorizing at connection time, you declare policy ahead of time. The connection just verifies identity—proving the agent is who it claims to be. The service looks up what that identity is allowed to do.
Simple Example
You run a document service. You want agents to access documents on behalf of users. With DNTLS: declare that
agent1.josh.dntlscan read and writedoc1. When the agent connects, the service verifies the identity and checks the permissions table. No OAuth dance. No consent screen. No human present.
Hierarchical Delegation
A human grants ONE permission: the orchestrator can set permissions—but only for identities under
*.writers.foo.dntls. The orchestrator creates rules within its scope. New agents inherit permissions automatically. Delegation is built into the namespace.
Cross-Domain Scaling
With OAuth, N agents × M services = N×M consent flows. Ten agents and five services? Fifty human interactions. With DNTLS, both services verify identity the same way. Add a third service? One more permission entry. That's it.
What This Means
MCP's protocol mechanics don't change. Tools are still discovered via
tools/list. What changes is the trust layer underneath. The agent presents its identity. The service verifies it. Policy determines access. This is what agent-native infrastructure looks like.