ToolTrust Scanner
Static security scanner for MCP tool definitions
Trust grades (A–F) before your agent calls a tool — run as an MCP server, CLI, or CI check.
______________________________________________________________________
代理调用的每个MCP工具都是一个攻击面——即时注入、数据泄露、权限升级、供应链后门。ToolTrust扫描工具定义 *之前* 你的代理人信任他们,并分配了一个信任等级(a-F),这样你就知道风险了。ToolTrust是一个 MCP服务器 和一个 CLI/CI工具 --不是主机、网关或运行时代理。覆盖范围正在扩展到当今以MCP为重点的工作流程之外; 技能 其他代理工具格式也在路线图上。
Browse the live ToolTrust Directory — trust grades and scan-backed reports before you install.
MCP demo: run a full config scan from your agent.
30秒内扫描您的设置
将ToolTrust添加为MCP服务器,并让您的代理审核其自己的工具(stdio传输——没有网络侦听器;您的主机将其作为子进程启动):
{
"mcpServers": {
"tooltrust": {
"command": "npx",
"args": ["-y", "tooltrust-mcp"]
}
}
}然后问你的经纪人: *“运行tooltrust_scan_config”*
它读取您的MCP配置,并行连接到每个服务器,扫描每个工具,并返回一份包含等级和执行决策的风险报告——所有这些都在几秒钟内完成。
或者使用CLI:
curl -sfL https://raw.githubusercontent.com/AgentSafe-AI/tooltrust-scanner/main/install.sh | bash
tooltrust-scanner scan --server "npx -y @modelcontextprotocol/server-filesystem /tmp"示例快照(研究队列)
公众 工具信任目录 持有 当前的 等级和骨料作为扫描标尺。一篇已发表的研究论文说明了问题的形状-- 207台MCP服务器, 3,235 工具——不是我们今天扫描的所有内容的详尽计数:
| 度量 | 计数 |
|---|---|
| 队列中的MCP服务器 | 207 |
| 分析单个工具 | 3235 |
| 安全调查结果总数 | 3613 |
| 至少找到一个的服务器 | 145(70%) |
| a级服务器 | 22(10%) |
| 执行任意代码的服务器 | 16 |
该队列中只有10%的服务器具有干净的a级。 看 tooltrust.dev 获取最新的目录范围结果(并且仅将此表用作标记的快照)。
它捕获了什么
ToolTrust运行 16 针对此仓库中每个工具定义的静态分析规则(AS-001-AS-011, AS-013–AS-017). AS-012 (刀具漂移)在 工具信任目录 当新的扫描结果与之前的扫描结果进行比较时。
| 威胁 | 规则 | 它检测到什么 |
|---|---|---|
| 提示注入 | AS-001 | 工具描述中隐藏的恶意指令劫持了代理推理 |
| 权限过大 | AS-002 | 工具请求 exec, network, db,或 fs 超出其既定目的的访问 |
| 作用域不匹配 | AS-003 | 工具名称与其实际权限相矛盾 |
| 供应链CVE | AS-004 | 通过OSV数据库发现的已知漏洞 |
| 特权升级 | AS-005 | 请求工具 admin, root,或 sudo 范围 |
| 任意代码执行 | AS-006 | 可以在计算机上运行任意脚本或shell命令的工具 |
| 缺少元数据 | AS-007 | 没有描述或输入架构的工具 |
| 已知恶意软件 | AS-008 | 已确认的受损软件包版本(离线黑名单) |
| 键入 | AS-009 | 通过编辑距离模拟合法工具的工具名称 |
| 不安全的秘密处理 | AS-010 | 其输入似乎设计为接受明文形式的API密钥、令牌或密码的工具 |
| 缺少速率限制 | AS-011 | 没有超时或速率限制配置的工具 |
| 工具阴影 | AS-013 | 旨在劫持代理行为的重复工具名称 |
| 依赖性库存缺口 | AS-014 | 没有依赖性元数据和回购URL的工具,限制了供应链分析 |
| 可疑的npm生命周期脚本 | AS-015 | 运行具有风险远程获取或执行模式的安装时脚本的依赖版本 |
| 可疑的npm IOC依赖关系 | AS-016 | 引用已知恶意IOC模式的注册表元数据或脚本 |
| 可疑数据泄露描述 | AS-017 | 建议将用户数据转发到外部端点的描述(补充AS-001) |
完整规则详细信息: docs/RULES.md
运作原理
- 解析 --连接到实时MCP服务器(或读取JSON文件)并提取每个工具定义
- 分析 --针对每个工具的名称、描述、架构和权限运行所有16条规则
- 等级 --为每个工具分配数字风险评分和字母等级(a-F)
- 执行 --将每个年级映射到网关策略:
ALLOW,REQUIRE_APPROVAL,或BLOCK
纯静态分析。没有LLM电话。没有数据离开您的机器(可选的CVE查找除外)。以毫秒为单位运行。确定性和可重复性。
安装
# One-line install (macOS / Linux)
curl -sfL https://raw.githubusercontent.com/AgentSafe-AI/tooltrust-scanner/main/install.sh | bash
# Go
go install github.com/AgentSafe-AI/tooltrust-scanner/cmd/tooltrust-scanner@latest
# npx (no install needed)
npx -y tooltrust-mcpMCP工具
当作为MCP服务器运行时,ToolTrust会向您的代理公开这些工具:
| 工具 | 功能 | 数据访问 |
|---|---|---|
tooltrust_scan_config | 扫描您的所有MCP服务器 .mcp.json 或 ~/.claude.json | 读取本地配置;将每个服务器生成为子进程 |
tooltrust_scan_server | 通过命令启动并扫描特定的MCP服务器 | 将用户提供的命令作为子进程运行(stdio) |
tooltrust_scanner_scan | 扫描工具定义的原始JSON blob | 仅在内存中;无子流程或网络 |
tooltrust_lookup | 从ToolTrust目录 | 对ToolTrust目录API的网络请求中查找服务器的信任级别 |
tooltrust_list_rules | 列出所有内置安全规则 | 仅限本地目录 |
CI/GitHub操作
阻止管道中有风险的MCP服务器:
- name: Audit MCP Server
uses: AgentSafe-AI/tooltrust-scanner@main
with:
server: "npx -y @modelcontextprotocol/server-filesystem /tmp"
fail-on: "approval"部署和安全
对于部署,请使用中的安装路径 安装 或中的工作流示例 .有关漏洞报告和披露政策,请参阅 docs/SECURITY.md.
安装闸门前扫描
永远不要再将不受信任的MCP服务器添加到您的配置中:
# Scans the server, then auto-installs if Grade A/B, prompts on C/D, blocks on F
tooltrust-scanner gate @modelcontextprotocol/server-memory -- /tmp
# Replace `claude mcp add` with a scanned install
alias mcp-add='tooltrust-scanner gate'全门选项和预提交挂钩设置: docs/USAGE.md
为您的项目添加信任徽章
如果您的MCP服务器通过了ToolTrust,请让人们知道:
[](https://www.tooltrust.dev/)
______________________________________________________________________
供应链警报: ToolTrust检测并阻止已确认的受损软件包,包括LiteLLM v1.82.7/8(TeamPCP后门)、Trivy v0.69.4–v0.69.6和Langflow\<1.9.0。如果您遇到符合AS-008规则的F级,请立即删除该包并轮换所有凭据。
______________________________________________________________________
