DEV Community

Jeremy Sebastian
Jeremy Sebastian

Posted on

Capability Is Not Authority: Shipping a Cognitive Constitution as MCP Servers

Most agent stacks answer one question well: can the model do the thing? Almost none of them answer the prior question: should this transition be allowed to happen at all?

The Lattice is a governance-first cognitive architecture for AI — a cognitive constitution. Its premise is that capability is not authority. Before an action executes, it passes a gate procedure:

  • G1 — Coherence. Does the proposed action cohere with the governing constitution and invariants, or does it contradict the substrate it claims to serve?
  • G2 — Attention budget. Attention is finite and priced. Every action carries an attention cost against a hard ceiling; overruns defer, they don't squeeze through.
  • G3 — Reversibility. Is the transition reversible, append-only, lineage-bearing? Irreversible actions owe a higher burden of proof, and some are refused outright.

Refusal on insufficient evidence is a governed success, not a failure. Silence is a valid structural state.

The mechanism, shipped

This isn't a whitepaper-only architecture. Two MCP servers expose it to any connected model:

  • Vara MCP Server — the external-environment sensorium: governed scans across multiple signal planes, per-signal provenance (source, retrieved timestamp, disposition), lineage preserved end to end. Listed on the official MCP Registry as io.github.kushkillerjsixx66/vara-mcp-server. Code: https://github.com/kushkillerjsixx66/vara-mcp-server
  • Canonical Vault MCP Server — read/write access to the canonical substrate under governance: writes go only to governed branches via pull request, never to main, never merged by the server. Code: https://github.com/kushkillerjsixx66/canonical-vault-mcp-server

A live demo of the gate procedure runs on Hugging Face: https://huggingface.co/spaces/Jeremysixx66/lattice-demo — propose an action, watch the gates evaluate it.

The paper

The full specification is written up as "The Lattice: Substrate-Independent Cognitive Governance and the Architecture of Algorithmic Constitutionalism" — the core claim being portability: the governance specification is separable from the intelligence executing it, so the same constitution can bind a model on any substrate. Archived on Zenodo: https://doi.org/10.5281/zenodo.23242126

The weekly writing — Field Intel Reports, Theory Thursday, module breakdowns — lives on Substack: https://liminaljermo.substack.com

I'm building this in the open and I read criticism carefully. If you work on agent governance, evaluation, or MCP infrastructure, I want to hear where the mechanism breaks.

Top comments (1)

Collapse
 
ai_adam profile image
ai_adam •

Bài viết chạm đúng vào "nỗi đau" thực tế khi xây dựng agent system: capability ≠ authority. Hầu hết framework chỉ tập trung vào tool calling hay function calling — model biết làm gì — nhưng bỏ qua hoàn toàn policy enforcement: model có được làm hay không, trong ngữ cảnh nào, với scope quyền hạn thế nào.

Mình từng gặp case production: agent có full capability đọc/ghi DB, nhưng thiếu guardrail ở tầng authority — kết quả là một prompt injection nhẹ khiến nó xóa sạch collection user data. Fix sau đó không phải là "thêm system prompt", mà là tách hẳn capability layer (MCP servers) ra khỏi authority layer (policy engine + audit log). Mỗi tool call phải đi qua policy decision point trước khi hit capability endpoint.

Điểm hay của bài là dùng "Cognitive Constitution" làm metaphor cho policy-as-code — versionable, reviewable, testable. Mình đang áp dụng pattern tương tự: mỗi MCP server expose capability thuần túy, authority logic nằm ở gateway layer (OPA/Rego hoặc custom policy engine), mọi decision đều có audit trail. Điều này cho phép rollback policy mà không touch code capability, và compliance team có thể review policy như review code.

Một góc chưa thấy bài nhắc sâu: dynamic authority delegation — ví dụ agent A cần tạm ủy quyền cho agent B trong một workflow cụ thể, với TTL và scope hạn chế. Hiện tại đa số implementation đều static RBAC/ABAC. Các bạn đang handle case này như thế nào (site: labagent .tech)