Mcpwatch

io.github.lazymac2xPublished by GitHub account lazymac2xv0.1.1Updated Oct 24, 2026

Audit MCP servers from inside Claude Code. 10 OWASP checks, A-F grade, live leaderboard.

VerifiedSTDIODesktop onlyDeveloper ToolsSecurity & Monitoring

Overview

AI-generated overview

An MCP server that lets an assistant audit other MCP servers against the OWASP MCP Top 10, returning an A–F grade with per-check findings.

What you can do
Scan a local MCP server by path and get a grade plus per-check findings from 10 OWASP-derived checks (command injection, path traversal, secret leakage, prompt injection in tool descriptions, and more). Look up the published grade for a public MCP server by owner/repo slug, and list the top or bottom servers from the public leaderboard. Get a detailed explanation of any OWASP MCP Top 10 check by ID.
When to use it
Useful before adding an unfamiliar MCP server to your configuration, or when you want to compare a server's published security grade against others. Also handy for explaining what a given OWASP check means.
Requirements
Runs locally via npx as the mcpwatch-mcp package; Node.js 18 or later. The server being scanned must be locally accessible on disk. Public leaderboard lookups need no API key but do need network access.
Before you install
The scan reads the target server's files on your machine, so point it only at code you are comfortable exposing to the tool. Leaderboard and score lookups contact an external service. The README advertises paid Pro reports and other paid products; none are required for the listed tools.

Installation

In SourceWeft

  1. Open Mcpwatch in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

MCPWatch

[npm] [License: MIT] [lazymac2x/mcpwatch MCP server]

Have I Been Pwned for MCP servers. Open-source security scanner that audits MCP servers against the OWASP MCP Top 10 and produces an A–F letter grade.

Overview

MCPWatch is a security tool for the MCP ecosystem that:

  • Runs 10 automated checks derived from the OWASP MCP Top 10 on any MCP server
  • Produces an A–F letter grade with per-check findings
  • Exposes an MCP server interface so AI agents can audit MCPs on demand
  • Provides a CLI for pre-install scanning in CI/CD pipelines
  • Powers a public leaderboard at mcpwatch.pages.dev with live SVG grade badges

Installation

Use with Claude Code / Cursor / Windsurf (MCP server)

Add to your MCP configuration:

json
{  "mcpServers": {    "mcpwatch": {      "command": "npx",      "args": ["-y", "mcpwatch-mcp"]    }  }}

CLI (scan before install)

bash
npx mcpwatch-scanner /path/to/mcp-server

GitHub Action (CI/CD gate)

yaml
- uses: lazymac2x/mcpwatch-action@v1  with:    path: .    fail-below: B

MCP Tools

When running as an MCP server, MCPWatch exposes the following tools to your AI agent:

ToolDescription
scan_mcp_serverScan a local MCP server by path — returns grade + per-check findings
get_public_scoreFetch the live grade for any public MCP server by owner/repo slug
list_leaderboardReturn the top/bottom N servers from the public leaderboard
explain_checkGet a detailed explanation of any OWASP MCP Top 10 check by ID

Example: scan before adding an MCP

Ask Claude: "Use mcpwatch to scan the filesystem-mcp server at ~/mcps/filesystem-mcp before I add it to my config."

The 10 Checks (OWASP MCP Top 10)

IDCheckSeverity
MCP-01Command injection in tool handlersCritical
MCP-02Path traversal in file toolsCritical
MCP-03Unauthenticated mutationsCritical
MCP-04Prompt injection via tool descriptionsHigh
MCP-05SSRF in URL-fetching toolsHigh
MCP-06Hardcoded secret leakageHigh
MCP-07Over-permissive filesystem scopeMedium
MCP-08Missing rate limitsMedium
MCP-09Outdated dependencies with known CVEsMedium
MCP-10Missing input schema validationLow

Grading

GradeScore
A90–100 — no Critical/High findings
B75–89 — no Critical findings
C60–74 — has Critical findings, minor impact
D40–59 — multiple Critical findings
F0–39 — severe/exploitable vulnerabilities

Public Leaderboard & Badges

Every public MCP server on Smithery, npm, and the official registry is scanned daily.

Live badge — drop into any README:

markdown
[![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}

Architecture

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

Requirements

  • Node.js 18+
  • The MCP server under test must be locally accessible (for scan_mcp_server / CLI)
  • No API key required for public leaderboard lookups

License

MIT — use it, fork it, contribute checks.

Contributing

Pull requests for new checks, false-positive fixes, or leaderboard improvements are welcome. See CONTRIBUTING.md for guidelines.


Pro Report $49 (in development)

Cross-repo trend analysis + Slack/Discord webhook alerts on grade drops + private MCP scanning. Email waitlist:

Related — Lumen API + MCP Catalog

If you ship MCP servers, you might want these (one-time license, lifetime updates, MIT source):

Full catalog: https://api.lazy-mac.com Profile: https://github.com/lazymac2x dev.to: https://dev.to/lazymac2x

Source: README.md at commit 8e6e0a4

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.1LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts