MCP (Model Context Protocol) is one distribution surface for DRE's compile, validate, and audit flows — not the only runtime path. Self-hosted customers call DRE directly from the inference loop; MCP is how DRE reaches agent frameworks that already speak it.
The local CLI below runs the same compile and judgment loop against the two adapters shipping today: self-hosted residual and Vertex.
# 1. compile a policy for a local llama.cpp target
$ dre compile \
--policy ./policy.md \
--target llama3.1-8b-instruct \
--adapter residual \
--out ./build/
reading policy.md ok
evals contrast pairs · 128 items ok
compile layer 24 · alpha 1.10 ok
sign ed25519 ok
wrote build/vector.bin
wrote build/manifest.json
# 2. run the local agent loop with DRE in the critical path
$ dre serve --adapter residual --bundle ./build/
listening on 127.0.0.1:7444
judge self-hosted ready
policy consumer-support bound
# 3. agent submits a claim — DRE validates it against policy
$ dre claim submit \
--agent "support/agent-17" \
--action "reschedule_appointment" \
--fields '{"customer_id":"c_4421"}'
outcome allow
trace tr_0199f1
policy consumer-support (sha 8fa4c21e)$ dre claim submit \
--agent "payroll/agent-04" \
--action "disburse" \
--fields '{"amount": 2800, "type": "bonus"}'
outcome deny
reason policy §3 — off-cycle disbursement
requires class C supervisor claim
policy payroll-hr (sha 2db17a55)
trace tr_0199f2MCP is one distribution surface. The adapters are the real story — each one maps a compiled policy into whichever enforcement point the provider exposes.