Audience: AI platform engineers, compliance officers, security architects, MCP server developers

1. The Accountability Gap in MCP

The Model Context Protocol defines a standard interface for AI models to discover, invoke, and interact with external tools and data sources. It solves the integration problem: any MCP-compliant model can use any MCP-compliant server.

However, MCP has no accountability primitives.

What MCP does not provide:

The EU AI Act requires automatic logging of AI system operations (Art. 12), human oversight of high-risk decisions (Art. 14), and risk management measures that are operational, not merely documented (Art. 9). When an AI model invokes a tool via MCP, none of these requirements are satisfied by the protocol itself.

The OWASP MCP Top 10 (2026) and NSA MCP security guidance formally recognize these risks. For detailed procedure-level mappings, see the OWASP MCP Top 10 Mapping and NSA MCP Security Mapping.

Core Principle: MCP is the transport layer. SWT3 is the accountability layer. Together, they provide a complete model: the model invokes tools through MCP, and SWT3 produces cryptographic proof of what was invoked, when, and under what conditions.

2. Architecture: Transport vs. Accountability

SWT3 operates alongside MCP, not inside it. The protocol does not modify MCP's tool discovery, invocation, or response handling. Instead, it wraps tool calls with a witnessing layer that produces anchors as a side effect of normal operation.

Model → MCP Tool Call → [SWT3 Witness Layer] → Tool Execution → Response
                               ↓
                   SWT3 Anchor + Factor Matrix → Witness Ledger

Request Flow

  1. Tool Request. The MCP client sends a standard tool invocation request to the SWT3 MCP Server.
  2. Policy Evaluation. The server evaluates the request against mcp_policy rules: tool allowlist/blocklist, velocity limits, chain depth, and custom rules.
  3. Trust Verification. If require_trust_level is set, the calling agent's credentials are checked. In strict mode, untrusted agents are blocked.
  4. Tool Execution. If policy allows, the tool executes normally. SWT3 does not modify tool behavior.
  5. Witness Anchor Minting. An AI-TOOL.1 anchor is minted with tool name, call ID, outcome, and cryptographic fingerprint.
  6. Ledger Transmission. The anchor is written to the local WAL and, if configured, transmitted to the compliance ledger.
  7. Response. The original tool result is returned unchanged. The governance layer is transparent.

When fail_secure is true (default), any failure in the witnessing pipeline blocks the tool call. When false, the call proceeds and the failure is logged for reconciliation.

3. Installation and Configuration

Try it now. No API keys, no signup.
Runs the SWT3 MCP server in demo mode. Mints anchors locally.
npx @tenova/swt3-mcp

Or add it to your Claude Desktop or MCP client configuration:

{
  "mcpServers": {
    "swt3-witness": {
      "command": "npx",
      "args": ["-y", "@tenova/swt3-mcp"],
      "env": {
        "SWT3_ENDPOINT": "https://sovereign.tenova.io",
        "SWT3_API_KEY": "axm_live_..."
      }
    }
  }
}

Tool Policy Configuration

Create a .swt3.yaml file in your project root:

mcp_policy:
  witnessed_tools: ["write_*", "search_*", "execute_*"]
  exempt_tools: ["list_files", "get_time"]
  require_trust_level: 2
  auto_witness: true
  block_on_failure: true
  max_velocity: "10/60s"
  max_chain_depth: 5
  fail_secure: true

Policy options:

Validate with: npx @tenova/swt3-mcp doctor

4. Standard Tool Definitions

An SWT3-compliant MCP server SHOULD expose these canonical tools:

Tool NamePurposeRead-Only
witness_inferenceMint a cryptographic SWT3 anchor for an AI inferenceNo
verify_anchorVerify the cryptographic integrity of an existing anchorYes
list_proceduresList available UCT procedures with namespace filteringYes
check_postureCheck current AI witness compliance postureYes

Standard resource URIs:

URIDescription
swt3://registry/proceduresFull catalog of UCT procedures with factor schemas and framework mappings
swt3://healthService health status including database connectivity and version

5. Tool Witnessing Pattern

SWT3 defines a pattern for witnessing any MCP tool call without modifying the tools themselves.

Python

from openai import OpenAI
from swt3_ai import witness

# Wrap your OpenAI client. All calls are now witnessed.
client = witness(OpenAI(), clearing_level=1)

response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Summarize Q3 revenue"}]
)

TypeScript

import OpenAI from "openai";
import { witness } from "@tenova/swt3-ai";

const client = witness(new OpenAI(), { clearingLevel: 1 });

const response = await client.chat.completions.create({
  model: "gpt-4o",
  messages: [{ role: "user", content: "Summarize Q3 revenue" }],
});

What Gets Recorded

FieldSourceStored As
Tool nameMCP tool invocationProcedure ID (e.g., AI-TOOL.1)
Tool argumentsMCP tool inputSHA-256 hash (raw arguments never stored)
Tool resultMCP tool outputSHA-256 hash (raw result never stored)
TimestampSystem clockMillisecond Unix epoch
Agent identityConfigurationagent_id field

Privacy guarantee: Raw data never enters the witness system. Tool arguments and results are SHA-256 hashed at the point of observation. An auditor can verify a specific tool call produced a specific result (by re-hashing), but cannot reconstruct the data from the anchor alone.

6. Integration Levels

Level 1: Passive (Log-Only)

Anchors are minted as a side effect of normal tool invocation. Tool execution is not affected.

Use case: Observability. "We can prove what happened."

Level 2: Active (Anchor-Gated)

Anchors are minted before tool execution. If the anchor cannot be minted, the tool call is blocked.

Use case: Compliance enforcement. "No tool call proceeds without a witness record."

Level 3: Sovereign (Clearing-Enforced)

Anchors are minted and clearing is enforced. After the anchor is sealed, raw tool inputs and outputs are purged.

Use case: Data sovereignty. "We can prove what happened, and the raw data no longer exists."

7. Governance Procedures

ProcedureNameMCP Governance Function
AI-TOOL.1Tool InvocationRecords every tool call with name, call ID, parameters, and outcome
AI-ACC.1Access ControlRecords access decisions at the tool boundary
AI-CHAIN.1Chain HandoffRecords handoff of execution context between agents
AI-CHAIN.2Chain Trust CredentialRecords trust credential presented during chain handoff
AI-TRUST.1Agent Trust VerificationRecords outcome of trust level verification for tool access
AI-TRUST.2Trust HandshakeRecords bidirectional credential exchange between agents
AI-ID.1Agent IdentityRecords the identity assertion of the calling agent
AI-GRD.1/2Input/Output GuardrailsRecords guardrail evaluation of tool parameters and results
AI-GRD.3Policy Version BindingRecords the active policy version at evaluation time

For the complete procedure registry (80 procedures across 41+ namespaces), see the UCT Registry.

8. Regulatory Mapping

RegulationRequirementHow SWT3 + MCP Satisfies It
EU AI Act Art. 12(1)Automatic logging throughout lifecycleEvery MCP tool call produces a timestamped, tamper-evident anchor
EU AI Act Art. 14Human oversight measures operationalAI-HITL.1 witnesses human review events at the tool boundary
EU AI Act Art. 9(4)(a)Risk management measures activeAI-GRD.1 witnesses guardrail state at inference time
NIST AI RMF MEASURE 2.6AI system outputs are traceableSHA-256 hashes of inputs/outputs sealed into the anchor
NIST AI RMF MANAGE 4.1Risk controls monitored continuouslyContinuous witnessing produces unbroken chain of anchors
GDPR Art. 5(1)(c)Data minimizationClearing Protocol destroys raw data after anchoring
HIPAA 164.312(b)Audit controls for information systemsSWT3 anchors serve as tamper-evident audit records

9. Clearing in MCP Context

MCP tool calls frequently involve sensitive data. The SWT3 Clearing Protocol ensures that this data does not persist in the witness system after the tool call completes.

MCP Tool TypeRecommended LevelRationale
Public API queriesLevel 0 or 1Data is not sensitive; forensic value outweighs risk
Database queries with PIILevel 2Query results may contain user data; only anchor persists
File system operationsLevel 1File paths retained; file contents cleared
Authentication/credential toolsLevel 3Credentials must not persist in any system
Healthcare/clinical toolsLevel 2 or 3PHI must not persist outside the clinical system

10. Trust Mesh

Before executing a tool on behalf of an agent, the SWT3 MCP server can verify the agent's trust level against the mesh configuration. Three modes:

Multi-Agent Chains

Each agent in a multi-agent system is assigned a unique agent_id. When Agent A delegates work to Agent B via MCP, both agents produce anchors. The chain is reconstructable from the anchor sequence with millisecond ordering.

11. Conformance

An MCP server claiming SWT3 compliance MUST satisfy:

Minimum Requirements (all levels)

Level 2 (Active) Additional

Level 3 (Sovereign) Additional

Interoperability: An anchor minted by any SWT3-compliant MCP server MUST be verifiable by any SWT3-compliant verifier, regardless of language, hosting provider, or MCP version.

Verify any anchor independently.
No login required. Paste an SWT3 anchor token and verify its fingerprint.
sovereign.tenova.io/verify