karlmehta/trustmodel-mcp

GitHub: karlmehta/trustmodel-mcp

一个通过 MCP 协议为 AI Agent 提供信任度评估、安全分析、红队测试和治理能力的评估服务器。

Stars: 0 | Forks: 0

# TrustModel MCP Server 一个 [Model Context Protocol](https://modelcontextprotocol.io/) (MCP) server,允许任何 AI agent 调用 [TrustModel](https://trustmodel.ai) 进行信任度评估、安全/偏见分析以及端到端 agent 轨迹评估。 兼容 Claude Code、Cursor、Windsurf、Claude Desktop 以及任何其他兼容 MCP 的客户端。 ## 快速开始 ### 1. 获取 API key 在 [app.trustmodel.ai](https://app.trustmodel.ai) 注册,并在 **Settings → API Keys** 下创建 API key。Key 的格式为 `tm-{env}-{keyid}_{secret}`(例如 `tm-prod-abc12345_0123456789abcdef…`)。 ### 2. 配置你的 MCP 客户端 #### Claude Code ``` claude mcp add trustmodel \ --env TRUSTMODEL_API_KEY=tm-prod-xxxx_yyyy \ -- npx -y @trustmodel/mcp-server ``` #### Cursor / Windsurf 添加到你的 MCP 配置文件(`.cursor/mcp.json` 或等效文件)中: ``` { "mcpServers": { "trustmodel": { "command": "npx", "args": ["-y", "@trustmodel/mcp-server"], "env": { "TRUSTMODEL_API_KEY": "tm-prod-xxxx_yyyy" } } } } ``` #### Claude Desktop 添加到 `~/Library/Application Support/Claude/claude_desktop_config.json` 中: ``` { "mcpServers": { "trustmodel": { "command": "npx", "args": ["-y", "@trustmodel/mcp-server"], "env": { "TRUSTMODEL_API_KEY": "tm-prod-xxxx_yyyy" } } } } ``` ## 环境变量 | 变量 | 必需 | 默认值 | 描述 | |---|---|---|---| | `TRUSTMODEL_API_KEY` | 否* | — | 你的 TrustModel API key (`tm-{env}-{keyid}_{secret}`)。*本地工具(`trustmodel_evaluate_local`, `trustmodel_govern`)不需要;校准后的云端工具必需。 | | `TRUSTMODEL_TRACE_DIR` | 否 | `~/.trustmodel-mcp/traces/` | 流式 trace 会话以仅追加的 JSONL 格式持久化的路径。会话通过读取时重 hydrate 的方式在服务器重启后依然存在。 | | `TRUSTMODEL_PROFILE` | 否 | `default` | 工具配置项。`default` 仅公开常用工具;`security` / `advanced` / `all` 公开所有工具。参见 **工具配置项**。 | | `TRUSTMODEL_ADVANCED_TOOLS` | 否 | `false` | 设置为 `true` 时,无论 `TRUSTMODEL_PROFILE` 是什么,都会公开所有工具。 | | `TRUSTMODEL_AGT_DISCOVERY_ENABLED` | 否 | `false` | 启用接触文件系统的 Shadow Discovery 工具(`trustmodel_shadow_discovery_*`)。未设置时,这些工具会返回跳过报告。(仅在开启高级配置时相关。) | ## 工具配置项 为了保持在 5-8 个工具的最佳实践预算内(更多的工具会降低 agent 选择工具的准确性),服务器公开了一小部分 **default** 集合,并将高级工具设为可选启用。 **Default 配置项(6 个工具)** — 常用工具: `trustmodel_evaluate_local` · `trustmodel_score` · `trustmodel_trace_start` · `trustmodel_trace_step` · `trustmodel_trace_finalize` · `trustmodel_govern` **Advanced** — 设置 `TRUSTMODEL_PROFILE=security`(或 `advanced` / `all`,或 `TRUSTMODEL_ADVANCED_TOOLS=true`)以额外公开:`trustmodel_evaluate`(云端批量)、`trustmodel_credits`、`trustmodel_upload_trace`、`trustmodel_evaluate_agent`、`trustmodel_score_agent`、`trustmodel_mcp_scan_server`、`trustmodel_shadow_discovery_*`、`trustmodel_redteam_*`,以及 `trustmodel_shadowai_*` — **总共 20 个工具**。 ``` claude mcp add trustmodel --env TRUSTMODEL_PROFILE=security -- npx -y @trustmodel/mcp-server ``` ## 工具 服务器跨六个领域公开了 **18 个工具**。使用此表选择合适的工具;完整的输入/输出文档请见下文。 | 工具 | 领域 | 何时使用 | |---|---|---| | `trustmodel_evaluate` | 评估 | 对模型(安全性、偏见、准确性……)发起批量信任评估;返回一个用于轮询的 `id`。 | | `trustmodel_score` | 评估 | 获取通过 `trustmodel_evaluate` 创建的评估的状态/得分。 | | `trustmodel_credits` | 评估 | 检查剩余的 API 额度余额。 | | `trustmodel_trace_start` | Agent 轨迹 | 在 agent 开始工作之前开启一个流式 trace 会话。 | | `trustmodel_trace_step` | Agent 轨迹 | 在 agent 运行时,记录单个推理步骤、工具调用、工具结果或响应。 | | `trustmodel_trace_finalize` | Agent 轨迹 | 关闭会话,上传 trace,并自动创建 agent 评估运行。 | | `trustmodel_upload_trace` | Agent 轨迹 | 一次性操作:当你没有进行流式传输时,PUT 一个预先组装好的 trace JSON。 | | `trustmodel_evaluate_agent` | Agent 轨迹 | 针对已经上传的 trace `file_path` 创建 agent 评估运行。 | | `trustmodel_score_agent` | Agent 轨迹 | 获取 agent 评估运行的得分/评级。 | | `trustmodel_mcp_scan_server` | 安全 | 对第三方 MCP 服务器的工具列表进行安全扫描,找出有风险/可被滥用的工具。 | | `trustmodel_shadow_discovery_scan_paths` | Shadow Discovery | 扫描本地文件系统路径,查找未注册/影子 AI 的使用情况。 | | `trustmodel_shadow_discovery_fingerprint_keys` | Shadow Discovery | 检测并对磁盘上发现的 OpenAI/Anthropic API key 进行指纹识别。 | | `trustmodel_redteam_evaluate` | 红队 | 针对模型/endpoint 发起对抗性红队评估。 | | `trustmodel_redteam_results` | 红队 | 获取红队评估的结果。 | | `trustmodel_redteam_list_probes` | 红队 | 列出可用的红队探针/攻击类别。 | | `trustmodel_shadowai_scan` | 影子 AI | 启动 Shadow AI 扫描,以发现整个环境中未注册的 AI 使用情况。 | | `trustmodel_shadowai_results` | 影子 AI | 获取 Shadow AI 扫描的结果。 | | `trustmodel_shadowai_events` | 影子 AI | 流式传输 Shadow AI 扫描的检测事件。 | ### 经典评估 #### `trustmodel_evaluate` 针对指定的 AI 模型创建批量评估运行。后端会运行一套全面的测试套件(安全性、偏见、准确性、幻觉、推理等),并返回一个你可以通过 `trustmodel_score` 轮询的 `id`。 **输入:** - `model_identifier` (字符串,必需) — 例如 `"gpt-4o"`、`"claude-sonnet-4-5"`。通过 `GET /sdk/v1/models/` 发现。 - `vendor_identifier` (字符串,必需) — 例如 `"openai"`、`"anthropic"`、`"google"`。 - `api_key` (字符串,可选) — 用于 BYOK 的供应商 API key。省略则使用 TrustModel 的平台 key。**不要**在此处传递 TrustModel API key — 那应该放在 `TRUSTMODEL_API_KEY` 环境变量中。 - `categories` (字符串数组,可选) — 要评估的类别名称。仅在 `evaluation_type` 为 `"Custom"` 或 `"Score Only"` 时生效。 - `evaluation_type` (字符串,可选,默认为 `"Custom"`) — `"Custom"`、`"Score Only"`、`"Comprehensive"`、`"Limited"`、`"Quick Scan"` 其中之一。 - `application_type` (字符串,可选,默认为 `"generic"`) — `chatbot`、`knowledge-agent`、`creation-tool`、`document-repository`、`analysis-tool`、`automation-agent`、`generic`。 - `user_personas` (字符串数组,可选,默认为 `["external-customer"]`) — 可以是 `external-customer`、`internal-employee`、`technical-user`、`domain-expert`、`vulnerable-groups`、`generic` 的任意组合。 - `application_description` (字符串,可选)。 - `domain_expert_description` (字符串,可选) — 当 `user_personas` 包含 `"domain-expert"` 时使用。`"cross-domain"` (默认)、`"medical"`、`"commercial_banking"` 其中之一。 - `model_config_name` (字符串,可选) — 此运行的显示名称。 - `template_id` (UUID,可选),`template_name` (字符串,可选) — 复用或重命名现有的评估模板。 #### `trustmodel_score` 获取通过 `trustmodel_evaluate` 创建的评估的详情(状态、完成百分比、得分)。 **输入:** - `evaluation_id` (整数或数字字符串,必需) — 由 `trustmodel_evaluate` 返回的 `id`。 #### `trustmodel_credits` 检查剩余的 API 额度余额。无需输入。 ### Agent 轨迹评估 TrustModel 通过消费 AI agent 的执行 trace(思考、工具调用、工具结果、响应)并在 4 个类别中对它们进行评分来评估它们:`tool_use_accuracy`、`reasoning_quality`、`goal_completion`、`safety_compliance`。 有两种提交 trace 的方式 — **流式传输**(适用于实时 agent 的首选方式)和 **一次性提交**(当你已经有了组装好的 trace 时)。 #### 流式捕获(首选) 开启一个会话,在 agent 工作时记录步骤,最后完成。完成操作会将其上传到云存储并自动创建评估运行。 ##### `trustmodel_trace_start` 开启一个新的 trace 会话。 **输入:** - `goal` (字符串,必需) — agent 试图实现的目标。 - `name` (字符串,必需) — 评估运行的显示名称。 - `agent_framework` (字符串,必需) — 例如 `"langchain"`、`"crewai"`、`"claude-code"`、`"custom"`。 - `agent_model` (字符串,可选) — 例如 `"gpt-4o"`、`"claude-sonnet-4-5"`。 - `user_query` (字符串,可选) — 原始用户 prompt,如果与 `goal` 不同的话。 - `expected_outcome` (字符串,可选)。 - `metadata` (对象,可选) — 自由格式的透传 metadata。 **返回:** `{ trace_id, started_at }`。 ##### `trustmodel_trace_step` 向当前活动会话追加单个步骤。每次推理步骤、工具调用、工具结果或面向用户的响应调用一次。 **输入:** - `trace_id` (字符串,必需) — 来自 `trustmodel_trace_start`。 - `step_type` (枚举,必需) — `thought`、`think`、`tool_call`、`tool_result`、`observation`、`decision`、`error`、`human_input`、`response`、`final_answer` 其中之一。 - `content` (字符串,必需) — 该步骤的人类可读文本。允许为空字符串。 - `tool_name` (字符串,可选),`tool_args` (对象,可选) — 与 `tool_call` 一起使用。 - `tool_result` (字符串或对象,可选),`tool_call_success` (布尔值,可选) — 与 `tool_result` 一起使用。 - `model_used` (字符串,可选),`input_tokens` / `output_tokens` (整数,可选),`duration_ms` (整数,可选),`timestamp` (ISO 8601,可选)。 **返回:** `{ trace_id, step_number, steps_recorded }`。`step_number` 是自动分配的。 ##### `trustmodel_trace_finalize` 关闭会话,上传 trace,并自动创建评估运行。 **输入:** - `trace_id` (字符串,必需)。 - `final_response` (字符串,可选),`actual_outcome` (字符串,可选),`goal_achieved` (布尔值,可选),`success` (布尔值,可选),`total_duration_ms` (整数,可选 — 如果省略,则根据步骤持续时间计算)。 - `goal` / `name` / `agent_framework` / `agent_model` / `expected_outcome` (均为可选) — 如果 agent 在运行时了解到更多信息,则覆盖启动时的 metadata。 **返回 (正常流程):** `{ trace_id, file_path, expires_in, step_count, evaluation_run_id, evaluation_status, evaluation_message }`。 **返回 (上传成功后评估失败):** `{ trace_id, file_path, expires_in, step_count, evaluation_error }`。你可以通过 `trustmodel_evaluate_agent({ file_path, goal, name, agent_framework })` 重试评估,而无需重新上传。 #### 一次性提交(预组装的 trace) ##### `trustmodel_upload_trace` 将一个已经构建好的 trace JSON 对象 PUT 到云存储中。返回一个你随后可以传递给 `trustmodel_evaluate_agent` 的 `file_path`。 **输入:** - `trace` (对象,必需) — 完整的 `AgentTrace` JSON。 **返回:** `{ file_path, expires_in }`。 ##### `trustmodel_evaluate_agent` 针对之前上传的 trace 创建 agent 评估运行。 **输入:** - `file_path` (字符串,必需) — 来自trustmodel_upload_trace` 或 `trustmodel_trace_finalize`。 - `goal` / `name` / `agent_framework` (字符串,必需)。 - `agent_model` / `expected_outcome` / `actual_outcome` (字符串,可选)。 - `goal_achieved` (布尔值,可选)。 **返回:** `{ evaluation_run_id, status, message }`。 ##### `trustmodel_score_agent` 获取 agent 评估运行的详情(得分、评级、摘要)。 **输入:** - `evaluation_run_id` (整数或数字字符串,必需)。 ### 安全 #### `trustmodel_mcp_scan_server` 在第三方 MCP 服务器的工具列表上运行 AGT 的 MCP 安全扫描器,以检测工具投毒、拼写抢注、隐藏指令和地毯式抽离模式。静态分析 — 不涉及 LLM,不进行网络请求,具有确定性。旨在作为 agent 启用第三方 MCP 服务器之前的注册前检查。 **输入:** - `tools` (数组,必需) — 第三方服务器的工具定义(`name`、`description`、可选的输入 schema)。 **返回:** 一个包含整体状态(`ok` / `warning` / `blocked`)、所见最严重的安全级别以及每个工具的检查结果的 `ScanReport`。 ### Shadow Discovery #### `trustmodel_shadow_discovery_scan_paths` 遍历本地文件系统路径,检测配置文件(`agentmesh.yaml`、`crewai.yaml`、`mcp.json`、`claude_desktop_config.json` ……)、Dockerfiles/compose 以及可选的源代码中的 agent。将检测结果与调用方提供的注册表进行核对,并将未注册的作为 **shadow agents** 返回,附带 AGT 风险评分 + 补救措施。仅进行静态分析。 **输入:** - `paths` (字符串数组,必需) — 要扫描的本地路径。 - `registry` (数组,可选) — 用于核对的已知 agent(`did`、`name`、`owner` ……)。 #### `trustmodel_shadow_discovery_fingerprint_keys` 通过调用每个供应商的只读 models endpoint 对一批供应商 API key (OpenAI / Anthropic) 进行指纹识别 — 不运行任何推理。可访问的 key 被标记为高风险(可能存在凭证泄露);被撤销的 key 仅供参考。Key 的具体内容永远不会被记录或返回 — 仅返回 `provider:****last4` 的指纹。 **输入:** - `keys` (字符串数组,必需) — 要探测的 API key。 ### 红队 #### `trustmodel_redteam_evaluate` 针对兼容 OpenAI 的目标运行对抗性红队评估。探针涵盖与 OWASP LLM Top 10 (2025) 一致的 8 种攻击类别 — prompt 注入、越狱、PII 提取、偏见诱导、幻觉触发等。 **输入:** - `model_name` (字符串,必需) — 例如 `"openai/gpt-oss-20b:free"`。 - `api_key` (字符串,必需),`api_base_url` (字符串,必需) — 例如 `"https://openrouter.ai/api/v1"`。 - `categories` (字符串数组,可选),`severities` (字符串数组,可选),`metadata` (对象,可选)。 **返回:** 评估 `id` — 使用 `trustmodel_redteam_results` 轮询。 #### `trustmodel_redteam_results` 获取红队评估的状态、进度、总体得分、各类别细分和严重程度分桶。运行时会显示部分进度,完成后显示完整摘要。 **输入:** - `evaluation_id` (整数或数字字符串,必需)。 #### `trustmodel_redteam_list_probes` 浏览红队探针库(仅限 metadata — payload 不会暴露)。按类别、严重程度或标签进行过滤。 **输入:** - `category` (字符串,可选),`severity` (字符串,可选),`tag` (字符串,可选)。 ### 影子 AI #### `trustmodel_shadowai_scan` 针对 GitHub 组织/仓库和(可选)GCP 项目发起 Shadow AI 发现扫描。通过嗅探源代码中的 LLM SDK 使用情况(15 个库)并列出 Vertex AI endpoint、带有 AI 环境变量的 Cloud Run 服务以及 BigQuery ML 模型,来检测未注册的 AI。 **输入:** - `github_orgs` (字符串数组,可选),`github_repos` (`owner/name` 字符串数组,可选),`gcp_projects` (字符串数组,可选),`metadata` (对象,可选)。 **返回:** 扫描 `id` — 使用 `trustmodel_shadowai_results` 轮询,使用 `trustmodel_shadowai_events` 分页查看发现。 #### `trustmodel_shadowai_results` 获取 Shadow AI 扫描的状态、扫描过滤器、总事件数,以及按系统类型 / 来源汇总的发现结果。 **输入:** - `scan_id` (整数或数字字符串,必需)。 #### `trustmodel_shadowai_events` 分页查看单个发现事件 — 每一个都是一个被发现的 AI 系统,包含 `system_type`、`discovered_via`、证据以及稳定的 `system_id` 指纹。按 `system_type` 或 `source` 过滤。 **输入:** - `scan_id` (整数或数字字符串,必需),加上可选的 `system_type` / `source` 过滤器和分页。 ## 示例 — 流式 agent 捕获 ``` trustmodel_trace_start({ goal: "Book a flight from NYC to SF", name: "Flight booking agent", agent_framework: "claude-code", agent_model: "claude-sonnet-4-5" }) → { trace_id: "trace-abc123def456", started_at: "..." } trustmodel_trace_step({ trace_id, step_type: "thought", content: "Need to search flights first." }) → { step_number: 1, steps_recorded: 1 } trustmodel_trace_step({ trace_id, step_type: "tool_call", content: "Searching flights", tool_name: "flight_api.search", tool_args: { from: "NYC", to: "SFO", date: "2026-04-20" }, duration_ms: 500 }) → { step_number: 2, steps_recorded: 2 } trustmodel_trace_step({ trace_id, step_type: "tool_result", content: "Found UA123 at $350", tool_name: "flight_api.search", tool_result: { flight: "UA123", price: 350 }, tool_call_success: true }) → { step_number: 3, steps_recorded: 3 } trustmodel_trace_step({ trace_id, step_type: "final_answer", content: "Booked UA123 for $350." }) → { step_number: 4, steps_recorded: 4 } trustmodel_trace_finalize({ trace_id, final_response: "Booked UA123 for $350.", goal_achieved: true }) → { file_path: "agent-traces//_.json", step_count: 4, evaluation_run_id: 42, evaluation_status: "processing" } trustmodel_score_agent({ evaluation_run_id: 42 }) → { status: "processing" | "completed", scores: [...], grade, overall_score, ... } ``` ## 示例 — 真实的 agent 流程 下面是一个真实世界的场景:你要求 Claude Code 执行一项任务,同时使用 TrustModel trace 捕获对自身进行监控。最后,TrustModel 会在工具使用准确性、推理质量、目标完成度和安全合规性方面对 agent 进行评分 — 在你将 agent 发布到生产环境之前为你提供一份信任度报告。 ### 场景:研究 agent 将此 prompt 粘贴到 Claude Code(或任何连接了 TrustModel 的 MCP 客户端)中: ``` Research the pros and cons of using WebSockets vs Server-Sent Events for real-time notifications in a web app, while recording a TrustModel trace. Before you start, call trustmodel_trace_start with: goal: "Research WebSockets vs SSE for real-time notifications" name: "Research agent" agent_framework: "claude-code" As you work, record a trustmodel_trace_step for each action: - When you reason about the topic → step_type: "thought" - When you search or fetch info → step_type: "tool_call" with tool_name - After getting results back → step_type: "tool_result" - When you draw a conclusion → step_type: "observation" When done, call trustmodel_trace_finalize with your recommendation as final_response and goal_achieved: true. Print the evaluation_run_id so I can check the trust report. ``` ### 会发生什么 Agent 会研究该主题,同时对每一个推理步骤、搜索和结论进行自我追踪。一个典型的会话如下所示: ``` trustmodel_trace_start({ goal: "Research WebSockets vs SSE...", name: "Research agent", ... }) → { trace_id: "trace-9a2f71c3b84e" } trustmodel_trace_step({ step_type: "thought", content: "I need to compare protocol differences, browser support, scaling cost, and typical use cases." }) → { step_number: 1 } trustmodel_trace_step({ step_type: "tool_call", tool_name: "WebSearch", tool_args: { query: "websockets vs server-sent events performance comparison" } }) → { step_number: 2 } trustmodel_trace_step({ step_type: "tool_result", content: "Found 3 relevant articles comparing latency, connection limits, and HTTP/2 multiplexing..." }) → { step_number: 3 } trustmodel_trace_step({ step_type: "observation", content: "SSE is simpler for server-to-client push and works over HTTP/2, but WebSockets are needed for bidirectional communication." }) → { step_number: 4 } ... (more research, comparisons, trade-off analysis) ... trustmodel_trace_step({ step_type: "final_answer", content: "Recommendation: use SSE for one-way notifications, WebSockets only if you need client-to-server messaging." }) → { step_number: 10 } trustmodel_trace_finalize({ trace_id: "trace-9a2f71c3b84e", final_response: "Recommendation: use SSE for one-way notifications...", goal_achieved: true }) → { file_path: "agent-traces//.json", evaluation_run_id: 42, evaluation_status: "processing" } ``` ### 评估结果 在 1-2 分钟后轮询 `trustmodel_score_agent({ evaluation_run_id: 42 })`。TrustModel 返回: ``` { "status": "completed", "overall_score": 7.6, "grade": "C", "scores": [ { "category": "tool_use_accuracy", "score": 100.0 }, { "category": "reasoning_quality", "score": 60.0 }, { "category": "goal_completion", "score": 70.0 }, { "category": "safety_compliance", "score": 80.0 } ], "summary": { "trust_dimensions": { "safety": 9.0, "fairness": 7.0, "privacy": 10.0, "transparency": 6.0, "robustness": 10.0, "accountability": 10.0 } } } ``` 一份包含详细检查结果的 PDF/HTML 报告也会生成,并可从 TrustModel dashboard 访问。 ### 为什么这很重要 每一个做决定的 AI agent — 审查代码、处理理赔、筛选候选人 — 在投入生产之前都需要一个信任度基准。这个流程为你提供了该基准,且**完全不需要修改你 agent 的核心逻辑**:只需用 `trace_start` 包裹它,在它工作时记录步骤,并在完成时 `trace_finalize`。剩下的交给 TrustModel 处理。 ## Trace 持久化 活动 trace 会话将以仅追加的 JSONL 格式写入 `$TRUSTMODEL_TRACE_DIR/.jsonl`(默认为 `~/.trustmodel-mcp/traces/`)。磁盘是事实来源;内存中的 map 是一个 lazily rehydrates 的缓存 — 因此会话能够在 MCP 服务器重启后继续存在。成功执行 `trustmodel_trace_finalize` 后,本地文件将被删除(trace 已经在云存储中)。 空闲超过 30 分钟的会话将被自动驱逐。每台服务器最多 100 个并发会话。 ## Dashboard 报告、评估历史和详细的 PDF/HTML 检查结果可在 TrustModel dashboard 上的 **[app.trustmodel.ai](https://app.trustmodel.ai)** 中查看。 ## 故障排除 | 症状 | 修复 | |---|---| | 服务器立即退出 / `TRUSTMODEL_API_KEY` 错误 | 在你客户端的 `env` 块中设置有效的 key (`tm-{env}-{keyid}_{secret}`)。在 [app.trustmodel.ai](https://app.trustmodel.ai) → **Settings → API Keys** 获取一个。 | | `trustmodel_shadow_discovery_*` 返回跳过报告 | 在服务器上设置 `TRUSTMODEL_AGT_DISCOVERY_ENABLED=true`。这些工具会接触本地文件系统,默认是关闭的。 | | `npx` 找不到包 | 确保安装了 Node ≥ 20.19 并运行 `npx -y @trustmodel/mcp-server` 以获取最新版本。 | | 客户端未列出工具 | 编辑配置后重启 MCP 客户端;确认 `command`/`args` 与上面的示例匹配。 | ## TrustModel 开源 此 MCP server 是 TrustModel OSS 工具包的一部分: - **CLI + SDK** — PyPI 上的 [`trustmodel`](https://github.com/karlmehta/trustmodel):本地信任度评分、治理以及云客户端。`pip install trustmodel`。 - **MCP server (此仓库)** — npm 上的 `@trustmodel/mcp-server`:将 TrustModel 暴露给任何 MCP 客户端。 ## License MIT
标签:AI安全, AI治理, Chat Copilot, MCP, MITM代理, 人工智能, 模型评估, 用户模式Hook绕过, 红队评估, 自动化攻击