原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Leakferret

作者:leakferrethq版本 0.1.13i★ –i在你的电脑上运行
注册名称io.github.leakferrethq/leakferret

安装

概览

作者提供的说明(英文原文)

Context-aware secret scanner: lets an AI agent scan, verify, and rewrite secrets before committing.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 网络安全

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 注册中心没有列出需要填写的密钥。

你需要

  • npm已安装 Node.js(用于 npx 命令)

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json

{
  "mcpServers": {
    "leakferret": {
      "command": "npx",
      "args": [
        "-y",
        "@leakferret/mcp"
      ]
    }
  }
}

在终端中运行这条命令

claude mcp add leakferret -- npx -y @leakferret/mcp

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "leakferret": {
      "command": "npx",
      "args": [
        "-y",
        "@leakferret/mcp"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "leakferret": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@leakferret/mcp"
      ]
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月9日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 leakferrethq 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“网络安全”中的其他服务器比较i

  • 星标数多于此分类中其他 1003 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 1003 个服务器的 19% 更新
  • 基础检查结果等于或优于此分类中其他 1003 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Leakferret 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(0.1.13)于5个月前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。

有什么可以替代它?

同一分类中有:KillerSkills, Shipshape MCP, Penthera

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

KillerSkills

Security verdicts for agent skills and MCP servers, from sandbox runs, before you install them.

作者:cyligence-karim正在增长↓ 3070/周今天更新

在你的电脑上运行

Shipshape MCP

Dockerfile and Kubernetes lint for AI agents: Pod Security Standards, A–F grade, a fix per finding.

作者:bytestay非常新↓ 322/周今天更新

在你的电脑上运行

Penthera

Offline, rule-based security checks for your repo, dependencies, AI agent config and local app.

作者:danoszz起步阶段↓ 1935/周今天更新

在你的电脑上运行

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

MCP-native secret scanner — verified findings, agent-applied rewrites.

leakferret is one fast Rust binary that is engine, CLI, and MCP server. It finds hardcoded secrets in your code, calls the provider to confirm which ones are actually live, and rewrites the leak in place to read from an environment variable. It runs in your terminal, in CI, and as a tool your coding agent calls before it commits — and the raw secret never leaves your machine.


What it looks like

Say you accidentally commit a real key, plus the usual noise:

# .env  — every key below is fabricated for this example

STRIPE_SECRET_KEY=sk_live_FAKE_example_not_a_real_key # fabricated GITHUB_TOKEN=ghp_FAKE_example_not_a_real_token # fabricated SENDGRID_API_KEY=${SENDGRID_API_KEY} # a reference — not a leak ADMIN_PASSWORD=changeme # a placeholder — not a leak AWS_ACCESS_KEY_ID=[PopNx MCP ตัดค่าที่หน้าตาเหมือนกุญแจออก] # AWS's public docs example

leakferret verify calls each provider and tells you what is real and live — and stays quiet on the rest:

$ leakferret verify .

.env L2 UNKNOWN CRITICAL stripe_secret sk_l..._key L3 VERIFIED CRITICAL github_token ghp_...oken ← live, rotate it now

2 findings · 1 verified · 1 unknown

The keys above are fabricated, so the VERIFIED line illustrates what a genuinely live key reports — on these examples both would be UNKNOWN.

The ${SENDGRID_API_KEY} reference, the changeme placeholder, and the well-known [PopNx MCP ตัดค่าที่หน้าตาเหมือนกุญแจออก] example are recognized and left out — that precision is the point. Then leakferret rewrite --apply rewrites the hardcoded key in your code (it leaves .env files alone — there's nothing sensible to rewrite a secret *to* there):

  # app/billing.rb  (fabricated example)
  • Stripe.api_key = "sk_live_FAKE_example_not_a_real_key" # fabricated
  • Stripe.api_key = ENV.fetch("STRIPE_API_KEY")

…and appends STRIPE_API_KEY= to .env.example with a seed command for your secret manager. Find → confirm live → fix, with almost no false alarms.

The full secret value never leaves your machine. Only a redacted

AKIA...4XYZ preview is ever written to a report, log, or network message.


Quick start

Install however you like — every package ships the same prebuilt binary.

# Ruby gem

gem install leakferret

npm (CLI)

npm i -g @leakferret/cli

Go

go install github.com/leakferrethq/leakferret-go/cmd/leakferret@latest

Native binary — download from GitHub Releases, unpack, and put it on $PATH:

https://github.com/leakferrethq/leakferret/releases

Rust, from source

cargo install leakferret-cli

Then scan the current directory:

leakferret scan .

scan respects .gitignore and also reads dotfiles such as .env. Add --git to walk commit history instead of the working tree.

Every wrapper honors a LEAKFERRET_BIN environment variable pointing at a

local binary, for offline or development use.


How it works

leakferret runs findings through a five-station pipeline. Each station only sees what it needs, and the raw secret never advances past disk.

  1. Scan — a fast regex pre-filter over your files, across 60+ secret types. Respects .gitignore, reads dotfiles like .env, and (with --git) walks history.
  2. Catalog — every candidate is checked against a signed database of *known-public* example credentials: Stripe test keys, [PopNx MCP ตัดค่าที่หน้าตาเหมือนกุญแจออก], jwt.io samples, RFC examples. Matches are marked FIXTURE so documented examples never raise a false alarm. The catalog is bundled with the binary and can be refreshed and signature-verified.
  3. Classify — each remaining candidate gets a verdict: REAL, FIXTURE, or UNKNOWN. This runs offline by default (path rules plus dummy-marker heuristics), or asks the host editor or agent's own language model — no extra API key, no added cost.
  4. Verify — makes a single harmless API call to the provider to confirm a key is LIVE. Around 25 providers are covered natively (AWS SigV4, GitHub, GitLab, Stripe, OpenAI, Anthropic, Slack, Twilio, SendGrid, Mailgun, Datadog, Heroku, npm, PyPI, DigitalOcean, Hugging Face, Groq, Replicate, Notion, Postman, Figma, Linear, Square, Shopify, Databricks), with a trufflehog binary fallback for the rest. The call goes straight from your machine to the provider — leakferret has no servers.
  5. Rewrite — swaps a hardcoded literal for an environment-variable lookup (ENV.fetch / os.environ / process.env), appends a line to .env.example, and prints seed commands for your secret manager (env, Vault, Doppler, AWS Secrets Manager, or Infisical).

A baseline stores one-way HMAC fingerprints of known findings — never the raw secret — so CI can fail only on *new* leaks.


Use it with AI agents (MCP)

MCP (Model Context Protocol) is the open standard for giving coding agents tools. Agents hardcode secrets too, and nobody reviews their diffs line by line — leakferret lets the agent self-check before it commits.

Start the server over JSON-RPC on stdio:

npx @leakferret/mcp

Add it to your mcpServers config (Claude Desktop, Cursor, Continue, Claude Code):

{

"mcpServers": { "leakferret": { "command": "npx", "args": ["@leakferret/mcp"] } } }

For Claude Code, save that block as .mcp.json in your project root, or add it with one command:

claude mcp add leakferret -- npx -y @leakferret/mcp

If you installed the native binary, you can point at it directly instead:

{

"mcpServers": { "leakferret": { "command": "leakferret", "args": ["mcp"] } } }

leakferret is also listed in the MCP Registry as io.github.leakferrethq/leakferret, so registry-aware clients can discover it.

Tools exposed: scan_repository, classify_candidates, verify_finding, propose_rewrite, and baseline_diff. A classify prompt is also provided so an agent can classify candidates inline using the model it already has. Two read-only resources expose the engine's catalog as context: leakferret://secret-types (every detectable pattern) and leakferret://verifiers (the live-verification providers).


How it compares

gitleakstrufflehogdetect-secretsGitGuardianleakferret
Live provider verification—✓—✓✓
In-place env-var rewrite————✓
MCP server for AI agents————✓
Baseline (fail only on new)——✓✓✓
SARIF / Code Scanning✓✓—✓✓
Free, local, no account✓✓✓—✓

gitleaks is the fastest pre-commit regex blocker. trufflehog set the bar for live verification. detect-secrets owns the baseline-a-legacy-repo workflow. GitGuardian is the paid platform with the broadest detectors and a dashboard. leakferret does the regex pre-filter, verifies which keys are live, rewrites the leak to an env var, and runs as an MCP server so coding agents check their own diffs. Full writeup: leakferret.com/compare.


CLI reference

leakferret scan      Regex pre-filter only (no classifier, no verifier)

leakferret verify Scan + classify + provider verification leakferret rewrite Scan + classify + propose/apply ENV-fetch rewrites leakferret org Scan every public repo owned by a GitHub user/org leakferret baseline Manage the per-repo fingerprint baseline leakferret catalog Load and inspect the fixture catalog leakferret mcp Start the MCP server on stdio

Scan a whole GitHub account or org in one go (handy for finding leaks across all your public repos before someone else does):

leakferret org leakferrethq            # all public repos for that owner

leakferret org myco --token "$GITHUB_TOKEN" --format sarif > leaks.sarif

Common flags:

# scan

leakferret scan . # working tree leakferret scan . --git # scan HEAD's commit history leakferret scan . --git --all # scan every branch / tag leakferret scan . --git --since HEAD~50 # bounded history window

verify

leakferret verify . # best-effort verification leakferret verify . --verify-mode none --fail-on any # offline gate: exit 1 on any finding leakferret verify . --only-verified # emit only confirmed-live keys leakferret verify . --verify-mode ever-verified # fail on historical leaks leakferret verify . --verifier-timeout-secs 10

rewrite

leakferret rewrite . --apply # write ENV.fetch in place leakferret rewrite . --dry-run-diff # show the diff, touch nothing leakferret rewrite . --check # CI mode: exit 1 if rewrites pending leakferret rewrite . --apply --include-unknown # also fix UNKNOWN (unconfirmed) candidates leakferret rewrite . --backend doppler # seed cmds for your manager

baseline (scan/verify are read-only — they never write to your repo)

leakferret baseline init # create .leakferret-baseline.json (gitignores the salt) leakferret verify . --update-baseline # record current findings into the baseline leakferret baseline show leakferret baseline ignore --fingerprint # acknowledge a finding

catalog

leakferret catalog info leakferret catalog test "sk_test_4eC39..." # deterministic FIXTURE verdict leakferret catalog refresh # fetch + signature-verify update

Shared flags on scan / verify / rewrite: --format, --show-fixtures, --exclude , --only , --only-verified, --fail-on . --backend accepts env, vault, doppler, aws-secrets-manager, infisical.


Block commits locally (pre-commit hook)

Catch a secret before it is ever committed. From your repo root:

cat > .git/hooks/pre-commit <<'HOOK'

#!/bin/sh

Offline secret scan (no network). Blocks the commit on any finding.

leakferret verify . --verify-mode none --fail-on any || { echo "leakferret blocked this commit. Bypass: git commit --no-verify" exit 1 } HOOK chmod +x .git/hooks/pre-commit

--verify-mode none keeps it fully offline; --fail-on any exits non-zero on any non-fixture finding (documented examples like [PopNx MCP ตัดค่าที่หน้าตาเหมือนกุญแจออก] are still ignored). Pair it with `leakferret baseline

只显示了开头部分;其余内容请在仓库中阅读

问 PopNx