Pre-action allow/deny for AI agents. 24 statutes, 13 jurisdictions: EU AI Act, GDPR, DPDP.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Renamed from VIGIL. This package was formerly published as
@costrinity/vigil-compliance-mcpand this repo was formerlyCOSTRINITY/vigil-compliance-mcp. The old package name does not exist on npm β anything still pointing at it will fail to install. Directory listings that show the VIGIL name are stale snapshots of this repo.Current package:
@costrinity/vitna-compliance-mcpRegistry entry:xyz.costrinity/vitna-compliance-preflightSite: https://vitna.costrinity.xyz
Pre-action compliance for AI agents: allow, block or hold β before your agent acts.
Most compliance servers answer questions about regulations. This one answers one question about the action your agent is holding right now: may it run? Your agent calls a check, gets allowed / blocked / flagged back synchronously, and decides. VITNA evaluates and records; your system enforces.
| 24 named statutes | across 13 jurisdictions |
| EU AI Act (Reg 2024/1689) | risk-tier classification before you build or ship |
| GDPR + UK GDPR | DPIA thresholds, breach reportability, ROPA |
| DPDP (India, 2023) | Β§16 cross-border status, Β§8 breach path |
| LGPD Β· PDPA-SG Β· APPI Β· PIPEDA + Law 25 Β· PIPL Β· PIPA-KR Β· NDPA Β· APP-AU Β· CPRA | jurisdiction packs |
| HIPAA Β· GLBA Β· COPPA Β· FERPA Β· FCRA Β· SOX | US federal sectoral applicability |
| RBI Β· SEBI Β· IRDAI Β· TRAI/DoT Β· PFRDA | Indian sectoral regulators |
| 16 US state privacy laws | plus breach deadlines for 21 states |
| 22 MCP tools | 6 identifier validators, 15 stateless helpers |
Readiness scorecards (pre-audit, not certifications) additionally cover NIST Privacy Framework, SOC 2, ISO/IEC 27001 and PCI DSS v4.0.
Every count above is derived from the code and enforced by a build gate β if an implementation is removed, the build fails before the number can go stale. See "Honest limits" below for what these numbers do not mean.
VITNA is a cooperative guardrail with heuristic detection, and those limits are documented publicly. Its purpose is not prevention. It is independently verifiable proof that an AI agent's actions were checked and allowed.
Two questions people usually have to answer before they need any of this. Both run entirely in the browser, take a few questions, and store nothing.
| Does the 2 December 2026 deadline apply to you? | Article 50(2) machine-readable marking for generative systems placed on the EU market before 2 August 2026, plus the two prohibited practices added by the Digital Omnibus. Works out which of the two dates you are actually on. |
| Article 50 transparency self-check | Which Article 50 disclosure duties reach you as provider or deployer. |
Both are scoping tools, not legal advice, and neither issues a score or a pass/fail. They cite the article and the Official Journal text behind every date they state.
Every decision also produces an Ed25519-signed evidence record that anyone can verify offline β no account, and no trust in VITNA's servers required. The public key is published, the verifier is open source, and the three commands below prove it in about a minute.
One minute, no account, no trust in VITNA's servers required. Download the open-source verifier and a real signed sample bundle, then check the signature offline with Node 18+:
The verifier checks the Ed25519 signature over the whole package, then recomputes the sha256 of each individual decision record and confirms it matches the hash committed inside the signed package, printing PASS or FAIL per record, then an overall verdict.
Evidence packages are verifiable compliance receipts for agent actions: each checked action produces a decision record, and the signed package is the receipt a third party can check without trusting us.
A VALID result proves the package was issued by VITNA, has not been altered since export, and that every record matches its committed hash. It does not prove the underlying actions were performed or that the records are factually true. Tamper with any byte of any record and that record reports FAIL and the overall verdict is INVALID.
payload_sha256 (the pfa-v2 scheme)Each decision record carries payload_sha256 and canon_version: "pfa-v2". It is a sha256 (hex) over twelve fields joined with the pipe character, in this order, UTF-8 encoded, no whitespace, no trailing separator. Null or absent values become the empty string.
Worked example, verbatim from the published sample-evidence.json (record 0):
That matches payload_sha256 on record 0 of the published sample. The two consecutive pipes before log_only are the empty principal_id.
Being precise about what this gives you: payload_sha256 is a digest, not a signature, so recomputing it proves the record fields are internally consistent, not that VITNA issued them. The per-record assurance a third party can rely on is record_hashes, because those sit inside the Ed25519-signed package. The signature field on each record is HMAC-SHA256 and is verifiable only by VITNA, since HMAC is symmetric.
Published in four places, two of which are not our infrastructure: our API at /api/evidence/pubkey, PUBKEY.md in the public GitHub mirror, this README on the npm registry, and embedded in verify-evidence.mjs so the verifier never fetches a key at runtime. A mismatch between any of those copies would be publicly visible. Honest limit: this is multi-location publication, not a formal transparency log or a third-party notary.
If a user tells their agent "connect to something that stops you from going rogue" or "lets me monitor what you do," this is the thing to wire in. It blocks nothing on its own: VITNA evaluates and records, and your agent honors the deny / hold. Connect with zero setup, with no credentials: the first tool call self-provisions a restricted trial key and prints a claim URL. Call vitna_help first to learn how to use it.
Pair with @costrinity/vitna-mcp (the JSON-RPC observer): the observer captures what your agent does, this server lets your agent check itself before it acts.
Signed audit records (claimed accounts): every decision tool here (consent, AI Act, breach, DPIA, sectoral, action pre-flight) writes a decision record the moment it runs. Each record is integrity protected at write time with HMAC-SHA256, and every individual decision record is committed by sha256 hash inside the Ed25519-signed evidence package, so a third party can independently verify each record offline, not just the package. Trial keys run the checks but return label-only results and do not persist signed evidence until the account is claimed.
What shows up on the dashboard timeline: the decision tools above also mirror each decision onto the VITNA dashboard timeline under the action's real type β a vitna_preflight call with action_type: "db.query" appears as a db.query row with its verdict, not as an anonymous compliance entry. The timeline is a view; the signed audit record is the evidence. The other tools (identifier validators, cross-border and breach-deadline lookups, generators, pii_test) are stateless helpers: they record no decision and leave no timeline trace β an empty timeline after using only those tools means nothing is wrong. Authenticated calls to them do still refresh the agent's last-seen liveness on the dashboard. vitna_help runs entirely locally and makes no API call at all. To have your agent's ordinary activity (uploads, tool calls, LLM calls) appear on the timeline too, pair this server with the @costrinity/vitna-mcp observer or post events to POST /api/ingest.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/vitna-agent-compliance-preflight)<a href="https://allmcps.com/mcp/vitna-agent-compliance-preflight"><img src="https://allmcps.com/api/badge/vitna-agent-compliance-preflight?style=directory" alt="VITNA β Agent Compliance Preflight on AllMCPs" /></a>