mcpField
V
Vouchwell

Vouchwell

Local
vouchwell.axonscape.comSecurity1Updated 2w ago

About Vouchwell

Vouchwell is a read-only CLI and proxy for teams that need policy checks and independently verifiable evidence of AI agent actions. It records decisions in a cryptographically chained, append-only log.

Key features

  1. 01Policy-gated MCP tool calls
  2. 02Signed, chained audit receipts
  3. 03Merkle-log inclusion proofs
  4. 04Exportable third-party evidence
  5. 05Log verification and inspection

Use cases

  1. 01Block disallowed tool calls before execution
  2. 02Audit agent actions for compliance
  3. 03Verify log integrity in CI
  4. 04Share verifiable evidence with auditors

MCP support

Vouchwell wraps an MCP server as a proxy, checking each tool call against policy and recording its decision as a receipt. MCP clients connect through the proxy rather than directly to the wrapped server.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"vouchwell-vouchwell": {
"command": "npx",
"args": [
"-y",
"vouchwell"
]
}
}
}
Run commandnpx -y vouchwell

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmvouchwell0.8.0

Tools

5

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
tailintegerNoHow many of the latest matching receipts to return (default 20).
deniedbooleanNoOnly calls the policy refused or escalated.
targetstringNoOnly tools whose name contains this text.
sessionstringNoOnly this session.
unfinishedbooleanNoOnly calls that were authorised and sent but never reported a result.
would_blockbooleanNoOnly calls monitor mode let through that the policy would have blocked.

Details

From the project README

vouchwell

Tamper-evident receipts for AI agent actions.

CI License Dependencies

Your agents spend money, send mail, and touch customer data. When something goes wrong, "our logs say it didn't" is not an answer — your logs are a text file you can edit.

Vouchwell makes every agent action policy-gated before it runs and cryptographically provable afterwards.

npm install -g vouchwell
vw init

Then wrap any MCP server — this is the whole integration:

// .mcp.json — before
{ "command": "npx", "args": ["-y", "@acme/mcp-crm"] }

// after
{ "command": "vw", "args": ["proxy", "--namespace", "crm", "--", "npx", "-y", "@acme/mcp-crm"] }

Every tool call now hits your policy first, and every decision — allowed, blocked, or escalated to a human — lands in an append-only log an outside party can verify without trusting you.

BLOCKED  ops.query    destructive SQL from an agent is never permitted
BLOCKED  ops.refund   budget refunds.daily would be exceeded: 45 already
                      committed plus 90 proposed, against a cap of 100 per 24h
BLOCKED  ops.query    arguments contain anthropic_key; policy forbids sending
                      these to a tool

Why it is not just logging

Everyone is building agent observability — dashboards you have to take on faith. Vouchwell builds agent evidence: a record whose integrity a third party can check independently, using nothing but the file you hand them.

  • Signed — Ed25519 over an RFC 8785 canonical form.
  • Chained — each receipt commits to its predecessor's hash.
  • Tree-anchored — RFC 6962 Merkle log, the construction Certificate Transparency uses. Verified against the published CT reference vectors.
  • Sealed — arguments are salted commitments, not payloads. Destroy the salts and those payloads become permanently unopenable while every proof still verifies, so a GDPR erasure does not gut the audit trail.

Commands

vw init                    create a log, a starter policy, and a config
vw proxy -- <cmd...>       wrap an MCP server; enforce policy, write receipts
vw log / vw stats / vw dash        inspect
vw verify                  audit the local log end to end
vw prove <seq>             inclusion proof for one receipt
vw export / vw check       evidence bundle for a third party, and verify one
vw remote add / vw push    connect to a hub and ship receipts
vw cosign                  have an independent witness counter-sign your root
vw shred --before <date>   destroy payload commitments, keep the audit trail

vw verify exits non-zero when a log has been altered — put it in CI.

What it does not do

  • It cannot prove an action it never saw. An agent with a second, unwrapped path to the same API leaves no receipt.
  • The cryptography has not been reviewed by anyone independent. It is pinned to published RFC 6962 and RFC 8032 vectors rather than only to itself, but that is not the same thing.

Full threat model: https://github.com/vouchwell/vouchwell/blob/main/docs/THREAT-MODEL.md

Part of Vouchwell

PackageWhat it is
vouchwellThe vw CLI — start here
@vouchwell/coreReceipts, Merkle log, policy engine. Zero dependencies.
@vouchwell/proxyThe MCP proxy and the hub client
@vouchwell/serverThe multi-tenant hub
@vouchwell/dashboardLocal read-only dashboard

Full documentation: https://github.com/vouchwell/vouchwell

Apache-2.0. The format, the verifier and the CLI are open and stay open: evidence you cannot verify without a vendor's permission is not evidence.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.