thewardn-mcp
thewardn-mcp
WARDN Governance-Wrapper für MCP-Server — jeder Claude-Tool-Aufruf, kontrolliert.
Wenn Claude Desktop eine Verbindung zu einem MCP-Server (Google Drive, GitHub, Slack, Dateisystem usw.) herstellt, kann es jedes Tool autonom und ohne Aufsicht aufrufen. thewardn-mcp schaltet sich zwischen Claude und Ihre echten MCP-Server. Jeder Tool-Aufruf durchläuft die Governance-Engine von TheWARDN, bevor er den eigentlichen Dienst erreicht. BLOCKED-Aufrufe werden niemals ausgeführt. HELD-Aufrufe gelangen zur menschlichen Überprüfung in die Treuhandverwaltung (Escrow). CLEARED-Aufrufe werden transparent weitergeleitet.
Funktionsweise
Claude Desktop
|
| (MCP protocol over stdio)
v
wardn-mcp governance server <-- this package
|
| POST /tool/govern → api.thewardn.ai
| verdict: CLEARED / HELD / BLOCKED
|
| (if CLEARED)
v
Real MCP server (Google Drive, GitHub, etc.)Jeder Tool-Aufruf durchläuft die CHAM-Richtlinien-Engine (Contextual Harm Assessment Module) von TheWARDN. Die Urteile werden versiegelt, unveränderlich gespeichert und in der WARDN-Audit-Chain protokolliert. Treuhand-Fälle (Escrow) erscheinen zur Überprüfung durch Administratoren in der WARDN-Konsole unter console.thewardn.ai.
Installation
pip install thewardn-mcpErfordert Python 3.10+.
Schnellstart
Schritt 1: Konfiguration initialisieren
wardn-mcp initDies führt Sie durch die Eingabe Ihres WARDN-API-Schlüssels, der Agenten-ID und der nachgelagerten MCP-Server, die Sie steuern möchten. Die Konfiguration wird unter ~/.wardn/mcp-config.json gespeichert.
Erhalten Sie Ihren API-Schlüssel und Ihre Agenten-ID unter console.thewardn.ai/settings.
Schritt 2: Zu Claude Desktop hinzufügen
Bearbeiten Sie ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"wardn-governed": {
"command": "wardn-mcp",
"args": ["start"],
"env": {
"WARDN_MCP_CONFIG": "~/.wardn/mcp-config.json"
}
}
}
}Schritt 3: Claude Desktop neu starten
Alle Tools Ihrer gesteuerten MCP-Server erscheinen nun in Claude mit dem Präfix ihres Servernamens (z. B. google-drive__create_file, github__create_repository). Jeder Aufruf wird kontrolliert.
Konfiguration
Speicherort der Konfigurationsdatei: ~/.wardn/mcp-config.json (kann mit der Umgebungsvariablen WARDN_MCP_CONFIG oder dem Flag --config überschrieben werden).
{
"wardn_api_key": "wdn_live_...",
"wardn_base_url": "https://api.thewardn.ai",
"agent_id": "agt_...",
"servers": [
{
"name": "google-drive",
"command": ["npx", "-y", "@modelcontextprotocol/server-gdrive"],
"args": [],
"env": {
"GDRIVE_CREDENTIALS_FILE": "~/.wardn/gdrive-credentials.json"
}
},
{
"name": "github",
"command": ["npx", "-y", "@modelcontextprotocol/server-github"],
"args": [],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."
}
}
],
"tool_overrides": {
"delete_repository": "always_block",
"list_files": "always_clear"
}
}Felder
Feld | Erforderlich | Beschreibung |
| Ja | Ihr WARDN-API-Schlüssel ( |
| Nein | Standardmäßig |
| Ja | Die WARDN-Agenten-ID, die Claude repräsentiert |
| Ja | Liste der nachgelagerten MCP-Server, die gesteuert werden sollen |
| Nein | Bypass-Regeln pro Tool (siehe unten) |
Tool-Overrides
Governance für bestimmte Tools umgehen, ohne einen Round-Trip zur API durchzuführen:
"always_block"— dieses Tool dauerhaft blockieren, unabhängig von der WARDN-Richtlinie"always_clear"— Governance für dieses Tool umgehen (für schreibgeschützte oder risikoarme Tools verwenden)
Overrides gleichen den Basis-Toolnamen (ohne Server-Präfix) oder den vollständigen Namen (server__tool) ab.
Governance-Urteile
Urteil | Verhalten |
| Tool-Aufruf wird an den echten MCP-Server weitergeleitet |
| Tool-Aufruf blockiert, wartet auf Genehmigung durch Administrator in der WARDN-Konsole |
| Tool-Aufruf sofort abgelehnt; Claude erhält eine Blockierungsnachricht |
Wenn ein Tool den Status HELD hat, erhält Claude eine Escrow-ID und einen Link zur WARDN-Konsole. Ein Administrator kann die Aktion unter console.thewardn.ai genehmigen oder ablehnen.
CLI-Referenz
# Start the governance server
wardn-mcp start [--config PATH]
# Initialize config interactively
wardn-mcp init [--config PATH]
# Show current config and downstream server status
wardn-mcp status [--config PATH]Tool-Benennung
Tools von nachgelagerten Servern erhalten einen Namespace, um Kollisionen zu vermeiden:
{server_name}__{original_tool_name}
# Examples:
google-drive__list_files
google-drive__create_file
github__create_repository
github__search_code
slack__send_messageTool-Beschreibungen, die Claude angezeigt werden, enthalten ein Präfix [WARDN GOVERNED], damit klar ist, dass die Governance aktiv ist.
Fail-Open-Verhalten
Wenn die WARDN-API nicht erreichbar ist (Netzwerkfehler, Timeout, Nicht-200-Antwort), protokolliert der Governance-Client eine Warnung und schaltet auf Fail-Open — der Tool-Aufruf wird als CLEARED behandelt. Dies verhindert, dass Ausfälle der Governance-Infrastruktur alle Claude-Aktivitäten blockieren.
Um dies auf Fail-Closed umzustellen, überschreiben Sie govern_tool in einer Unterklasse von WARDNGovernClient.
Programmatische Verwendung
import asyncio
from wardn_mcp import WARDNGovernanceMCPServer, WARDNMCPConfig, MCPServerConfig
config = WARDNMCPConfig(
wardn_api_key="wdn_live_...",
agent_id="agt_...",
servers=[
MCPServerConfig(
name="github",
command=["npx", "-y", "@modelcontextprotocol/server-github"],
env={"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..."},
)
],
)
server = WARDNGovernanceMCPServer(config)
asyncio.run(server.run())Governance-Ablaufdiagramm
Claude calls tool: google-drive__delete_file(path="/budget.xlsx")
|
v
wardn_mcp intercepts call
|
v
Check tool_overrides: no override for delete_file
|
v
POST api.thewardn.ai/tool/govern
{
agent_id: "agt_...",
tool_name: "delete_file",
tool_input: {path: "/budget.xlsx"},
integration: "google-drive"
}
|
v
WARDN CHAM evaluates:
- Policy rules for this agent
- Risk tier of delete_file
- Context: what files have been accessed this session
- Integration-level rules for google-drive
|
-------
| |
CLEARED BLOCKED / HELD
| |
v v
Forward to Return verdict message to Claude
Google Drive (+ escrow ID if HELD)
MCP serverDokumentation
Vollständige Dokumentation: docs.thewardn.ai
WARDN-Konsole (Richtlinien verwalten, Treuhand-Fälle prüfen, Audit-Logs einsehen): console.thewardn.ai
Lizenz
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gtrotter13/thewardn-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server