mcpField
M
mcpwatch

mcpwatch

本地服务
github.com/lazymac2x安全022 周前更新

关于 mcpwatch

MCPWatch 是面向开发者和团队的开源 MCP 服务安全扫描器,可在安装前或 CI/CD 中评估服务。它执行 10 项 OWASP MCP Top 10 检查,提供逐项结果和 A–F 等级,并维护公开排行榜。

主要功能

  1. 01执行 10 项 OWASP MCP Top 10 检查
  2. 02提供 A–F 等级及逐项结果
  3. 03通过命令行在安装前扫描
  4. 04用 GitHub Action 设置 CI/CD 门槛
  5. 05公开排行榜与等级查询

适用场景

  1. 01添加 MCP 服务前进行扫描
  2. 02依据扫描等级阻止 CI/CD 构建
  3. 03在公开排行榜比较服务

MCP 相关

MCPWatch 可作为 MCP 服务运行,并提供扫描本地服务、查询公开等级、列出排行榜条目及解释 OWASP 检查的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"lazymac2x-mcpwatch": {
"command": "npx",
"args": [
"-y",
"mcpwatch-mcp"
]
}
}
}
启动命令npx -y mcpwatch-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmmcpwatch-mcp0.1.1

工具

4

收录的工具列表 · 更新于 2 周前

参数类型必填说明
namestring否目标的可选名称(默认为目录基本名称)
pathstring是要扫描的目录的绝对路径
sarifboolean否如果为 true,则以适用于 GitHub Code Scanning 的 SARIF v2.1.0 文档形式返回发现结果。

详细介绍

MCPWatch

npm License: MIT lazymac2x/mcpwatch MCP server

MCP 服务的 Have I Been Pwned。 开源安全扫描工具,可根据 OWASP MCP Top 10 审计 MCP 服务,并给出 A–F 字母等级。

概述

MCPWatch 是面向 MCP 生态的安全工具,可:

  • 对任意 MCP 服务运行基于 OWASP MCP Top 10 的 10 项自动化检查
  • 给出 A–F 字母等级,并列出各项检查的发现
  • 提供 MCP 服务接口,让 AI Agent 可按需审计 MCP
  • 提供 CLI,用于在 CI/CD 流水线中安装前扫描
  • 支持位于 mcpwatch.pages.dev 的公开排行榜,并提供实时 SVG 等级徽章

安装

在 Claude Code / Cursor / Windsurf 中使用(MCP 服务)

添加到 MCP 配置中:

{
  "mcpServers": {
    "mcpwatch": {
      "command": "npx",
      "args": ["-y", "mcpwatch-mcp"]
    }
  }
}
CLI(安装前扫描)
npx mcpwatch-scanner /path/to/mcp-server
GitHub Action(CI/CD 门禁)
- uses: lazymac2x/mcpwatch-action@v1
  with:
    path: .
    fail-below: B

MCP 工具

作为 MCP 服务运行时,MCPWatch 会向你的 AI Agent 提供以下工具:

工具描述
scan_mcp_server按路径扫描本地 MCP 服务 — 返回等级及各项检查的发现
get_public_score按所有者/仓库标识获取任意公开 MCP 服务的实时等级
list_leaderboard返回公开排行榜中排名最高/最低的 N 个服务
explain_check按 ID 获取任意 OWASP MCP Top 10 检查项的详细说明
示例:添加 MCP 前先扫描

向 Claude 提问:“使用 mcpwatch,在我将 filesystem-mcp 添加到配置前,扫描 ~/mcps/filesystem-mcp 中的服务。”

10 项检查(OWASP MCP Top 10)

ID检查项严重性
MCP-01工具处理器中的命令注入严重
MCP-02文件工具中的路径遍历严重
MCP-03未经身份验证的修改操作严重
MCP-04通过工具描述进行提示词注入高
MCP-05获取 URL 的工具中的 SSRF高
MCP-06硬编码密钥泄露高
MCP-07文件系统权限范围过宽中
MCP-08缺少速率限制中
MCP-09依赖项过时且存在已知 CVE中
MCP-10缺少输入模式验证低

评级

等级分数
A90–100 — 无严重/高危发现
B75–89 — 无严重发现
C60–74 — 存在严重发现,影响较小
D40–59 — 存在多项严重发现
F0–39 — 存在严重/可利用的漏洞

公开排行榜与徽章

Smithery、npm 和官方注册表中的每个公开 MCP 服务每天都会接受扫描。

实时徽章 — 将其放入任意 README:

[![MCPWatch score](https://api.lazy-mac.com/mcpwatch/badge/YOUR_OWNER/YOUR_REPO.svg)](https://mcpwatch.pages.dev/servers/YOUR_OWNER/YOUR_REPO)

JSON API:

GET https://api.lazy-mac.com/mcpwatch/scan/{owner}/{repo}

架构

mcpwatch/
├── packages/
│   ├── scanner/   # Core check engine (TypeScript, runs in Worker + CLI + Node)
│   └── cli/       # mcpwatch-scanner — npx runnable
├── workers/
│   └── crawler/   # CF Worker — scheduled crawl + scan (daily)
├── apps/
│   └── web/       # CF Pages — mcpwatch.pages.dev — public leaderboard
└── .github/
    └── workflows/ # mcpwatch-action CI gate

要求

  • Node.js 18+
  • 待测 MCP 服务必须可在本地访问(用于 scan_mcp_server / CLI)
  • 查询公开排行榜无需 API 密钥

许可证

MIT — 使用、派生或贡献检查项。

贡献

欢迎提交新增检查项、修复误报或改进排行榜的拉取请求。请参阅 CONTRIBUTING.md 了解指南。


Pro Report $49(开发中)

跨仓库趋势分析 + 等级下降时通过 Slack/Discord webhook 发出提醒 + 私有 MCP 扫描。邮件候补名单:

相关内容 — Lumen API + MCP 目录

如果你在发布 MCP 服务,可能会需要以下产品(一次性授权,终身更新,MIT 源码):

完整目录:https://api.lazy-mac.com 个人主页:https://github.com/lazymac2x dev.to:https://dev.to/lazymac2x

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。