Skip to main content
Glama
gtrotter13

thewardn-mcp

by gtrotter13

thewardn-mcp

WARDN MCP 服务器治理包装器 — 每一个 Claude 工具调用,皆受治理。

当 Claude Desktop 连接到 MCP 服务器(如 Google Drive、GitHub、Slack、文件系统等)时,它可以自主调用任何工具而无需监管。thewardn-mcp 位于 Claude 和您真实的 MCP 服务器之间。每一个工具调用在到达实际服务之前,都会先通过 TheWARDN 的治理引擎。BLOCKED(已拦截)的调用永远不会执行。HELD(已暂扣)的调用将进入托管状态,等待人工审核。CLEARED(已清除)的调用将被透明地转发。


工作原理

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.)

每一个工具调用都会通过 TheWARDN 的 CHAM(上下文危害评估模块)策略引擎。裁决结果会被密封、不可篡改,并记录在 WARDN 审计链中。托管的暂扣请求会出现在 console.thewardn.ai 的 WARDN 控制台中,供管理员审核。


Related MCP server: mcp-boundary

安装

pip install thewardn-mcp

需要 Python 3.10+。


快速入门

第 1 步:初始化您的配置

wardn-mcp init

此步骤将引导您输入 WARDN API 密钥、代理 ID 以及您想要治理的下游 MCP 服务器。配置将保存至 ~/.wardn/mcp-config.json。

请从 console.thewardn.ai/settings 获取您的 API 密钥和代理 ID。

第 2 步:添加到 Claude Desktop

编辑 ~/.claude/claude_desktop_config.json:

{
  "mcpServers": {
    "wardn-governed": {
      "command": "wardn-mcp",
      "args": ["start"],
      "env": {
        "WARDN_MCP_CONFIG": "~/.wardn/mcp-config.json"
      }
    }
  }
}

第 3 步:重启 Claude Desktop

来自您受治理的 MCP 服务器的所有工具现在都会出现在 Claude 中,并带有服务器名称前缀(例如 google-drive__create_file,github__create_repository)。每一个调用都受到治理。


配置

配置文件位置:~/.wardn/mcp-config.json(可通过 WARDN_MCP_CONFIG 环境变量或 --config 标志覆盖)。

{
  "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"
  }
}

字段

字段

必填

描述

wardn_api_key

是

您的 WARDN API 密钥 (wdn_live_...)

wardn_base_url

否

默认为 https://api.thewardn.ai

agent_id

是

代表 Claude 的 WARDN 代理 ID

servers

是

需要治理的下游 MCP 服务器列表

tool_overrides

否

特定工具的绕过规则(见下文)

工具覆盖

无需往返 API 即可覆盖特定工具的治理规则:

  • "always_block" — 无论 WARDN 策略如何,永久拦截此工具

  • "always_clear" — 绕过此工具的治理(用于只读或低风险工具)

覆盖规则匹配基础工具名称(不带服务器前缀)或完整的受治理名称 (server__tool)。


治理裁决

裁决

行为

CLEARED

工具调用被转发至真实的 MCP 服务器

HELD

工具调用被拦截,等待 WARDN 控制台中的管理员批准

BLOCKED

工具调用被立即拒绝;Claude 收到拦截消息

当工具处于 HELD 状态时,Claude 会收到一个托管 ID 和一个指向 WARDN 控制台的链接。管理员可以在 console.thewardn.ai 批准或拒绝该操作。


CLI 参考

# 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]

工具命名

来自下游服务器的工具会被命名空间化以避免冲突:

{server_name}__{original_tool_name}

# Examples:
google-drive__list_files
google-drive__create_file
github__create_repository
github__search_code
slack__send_message

向 Claude 展示的工具描述包含 [WARDN GOVERNED] 前缀,以便明确治理功能已激活。


故障开放行为

如果 WARDN API 无法访问(网络错误、超时、非 200 响应),治理客户端会记录警告并采取“故障开放”策略——即工具调用被视为 CLEARED。这可以防止治理基础设施中断导致所有 Claude 活动被阻塞。

若要将其更改为“故障关闭”,请在 WARDNGovernClient 的子类中覆盖 govern_tool。


以编程方式使用

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())

治理流程图

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 server

文档

完整文档:docs.thewardn.ai

WARDN 控制台(管理策略、审核托管请求、查看审计日志):console.thewardn.ai


许可证

MIT

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Policy enforcement gateway for MCP tool calls, evaluating every tool invocation against declarative YAML policies (allow/deny/escalate-to-human), generating cryptographic hash-chained audit receipts, and including built-in content safety scanning.
    2
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Wraps your existing MCP servers and checks each tool call against policy and live state before it runs. Allow, block, or require a refresh, with a reason the agent can act on.
    5
    -
  • A
    license
    A
    quality
    B
    maintenance
    Provides advisory AI-governance checks for MCP hosts and coding agents, enabling policy verdicts, PII masking, and audit traces before executing tool calls.
    3
    57 npm
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides a governance proxy layer for MCP servers, enforcing per-tool allowlists, human approval for write operations, quotas, secret redaction, and a hash-chained audit log of all calls.
    MIT