Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Verify an npm or PyPI package before install: advisories, install scripts, typosquats, repository.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
PKGPROOF_ALGORAND_PRIVATE_KEY, PKGPROOF_BASE_PRIVATE_KEY标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"pkgproof": {
"command": "npx",
"args": [
"-y",
"@pkgproof/mcp"
],
"env": {
"PKGPROOF_ALGORAND_PRIVATE_KEY": "your-value",
"PKGPROOF_BASE_PRIVATE_KEY": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add pkgproof --env PKGPROOF_ALGORAND_PRIVATE_KEY=your-value --env PKGPROOF_BASE_PRIVATE_KEY=your-value -- npx -y @pkgproof/mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"pkgproof": {
"command": "npx",
"args": [
"-y",
"@pkgproof/mcp"
],
"env": {
"PKGPROOF_ALGORAND_PRIVATE_KEY": "your-value",
"PKGPROOF_BASE_PRIVATE_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"pkgproof": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@pkgproof/mcp"
],
"env": {
"PKGPROOF_ALGORAND_PRIVATE_KEY": "your-value",
"PKGPROOF_BASE_PRIVATE_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过域名 pkgproof.net 验证(注册中心会核实域名所有权)
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:PKGPROOF_ALGORAND_PRIVATE_KEY, PKGPROOF_BASE_PRIVATE_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.1)于22天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Dechonet MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
30 security tools for AI agents: phishing links, exposure maps, DNS, SSL, PQC, history, pivots.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
An MCP server that verifies an npm or PyPI package before you install it.
One tool, verify_package. It runs nine checks against pkgproof.net covering advisories, install scripts, typosquat and combosquat names, scope and declared-repository checks, and how the release differs from its predecessors, and answers safe, caution, block or does_not_exist with every reason labelled as fact or heuristic against its source.
The first verification each day is free and needs no configuration at all. No account, no key, no signup. Later calls the same day cost $0.05 in USDC, paid per call over x402, and only if you configure a wallet.
Nothing to install or host: your MCP client runs the server itself. Needs Node 22 or newer.
Every release from 0.1.1 on is built and signed by CI and carries an npm provenance attestation tying the tarball to the commit and workflow run that produced it. A tool that vets other packages should be checkable the same way:
npm audit signatures
The server is also listed in the MCP Registry as net.pkgproof/pkgproof.
Add this to your MCP client configuration and you are done:
{
"mcpServers": { "pkgproof": { "command": "npx", "args": ["-y", "@pkgproof/mcp"] } } }
The repository is its own plugin marketplace, so there is no JSON to edit:
/plugin marketplace add jahija-okan/pkgproof-mcp
/plugin install pkgproof@pkgproof
The plugin runs the published package pinned to the version it was released beside, not whatever npx resolves to that day.
Releases carry a prebuilt .mcpb bundle on the releases page. Download it and open it: Desktop installs the server and holds the wallet keys in the OS secret store rather than in a plain-text configuration file.
verify_package, and nothing else. One call is one verification, so the daily allowance means the same thing here as it does over HTTP.
| Argument | Required | Meaning |
|---|---|---|
name | yes | Package name: left-pad, @scope/thing (npm), requests (PyPI). |
version | no | Exact version. Omit to verify the package rather than one release. |
ecosystem | no | npm (the default) or pypi. |
It answers twice over: a summary the agent reads, and the service's own JSON alongside it in structuredContent, under a declared output schema, carrying the verdict, every reason with its source, and the time the verdict was computed.
Calls run one at a time. The service allows one verification in flight per payer and refuses the second, so an agent walking a dependency list is queued here rather than failed.
pkgproof settles on two chains, each on its own endpoint. They are not interchangeable: they take different key formats, and only one of them has a free tier.
| Algorand Mainnet | Base | |
|---|---|---|
| Endpoint | x402-algo.pkgproof.net | x402.pkgproof.net |
| Network | algorand:wGHE2Pwdvd7S12BL5FaOP20EGYesN73ktiC1qzkkit8= | eip155:8453 |
| Asset | USDC, ASA 31566704 | USDC, 0x8335…2913 |
| Price | $0.05 per verification | $0.05 per verification |
| Free tier | no, every call is paid | yes, one verdict per caller per day |
| Key variable | PKGPROOF_ALGORAND_PRIVATE_KEY | PKGPROOF_BASE_PRIVATE_KEY |
| Key format | base64 account key | 0x-prefixed EVM key |
| Network fee per payment | none, sponsored | none, sponsored |
| One-time setup | ~0.3 ALGO, and an opt-in to the asset | none, just send USDC |
How the server picks. The free attempt always goes to Base, because it is the only rail that answers an unpaid call. Payments prefer Algorand, and fall back to Base only when no Algorand key is configured. So a wallet on either chain works, and configuring neither still gets you a verdict a day.
[!WARNING]
Fund a throwaway wallet, never a main one. The key is stored in plain text
in your MCP client's configuration file, which is not an encrypted store, and
anything able to read that file can spend the wallet. Put in what you are
willing to spend on package verification and nothing more. There is
deliberately no spend cap in this server, so the wallet's own balance is the
only limit.
Verifications cost the account no ALGO. The 402 names a fee payer, so the facilitator covers the network fee on every payment and your ALGO balance does not move.
{
"mcpServers": { "pkgproof": { "command": "npx", "args": ["-y", "@pkgproof/mcp"], "env": { "PKGPROOF_ALGORAND_PRIVATE_KEY": "..." } } } }
Send USDC on Base to the throwaway wallet's address. You do not need ETH: payment is an off-chain signature and the facilitator pays the gas.
{
"mcpServers": { "pkgproof": { "command": "npx", "args": ["-y", "@pkgproof/mcp"], "env": { "PKGPROOF_BASE_PRIVATE_KEY": "0x..." } } } }
The server always tries the free call first, so a configured wallet is only charged once the day's free verification is used up.
| Variable | Required | Meaning |
|---|---|---|
PKGPROOF_ALGORAND_PRIVATE_KEY | no | Throwaway Algorand account holding USDC on Mainnet, base64. Preferred for payment when set. |
PKGPROOF_BASE_PRIVATE_KEY | no | Throwaway EVM wallet holding USDC on Base, 0x-prefixed. Used when no Algorand key is set. |
With neither set, the server is free-tier only and says so once the day's verification is spent.
Needs Node 22 or newer. Use a throwaway account, as warned above.
git clone https://github.com/jahija-okan/pkgproof-x402-algorand
cd pkgproof-x402-algorand npm install npx tsx algo-account.ts new
It prints ADDRESS, KEY_B64 and MNEMONIC once and saves nothing. Keep them somewhere safe, such as a password manager. Use KEY_B64 everywhere below, never the 25-word MNEMONIC.
ALGOD_URL=https://mainnet-api.algonode.cloud ASSET_ID=31566704 \
ALGO_PRIVATE_KEY= npx tsx algo-account.ts optin
NOT OPTED IN means step 3 did not go through: ALGOD_URL=https://mainnet-api.algonode.cloud ASSET_ID=31566704 \
npx tsx algo-account.ts balance
--scope user installs it for every project, without it, Claude Code registers the server for the current directory only: claude mcp add --scope user pkgproof -e PKGPROOF_ALGORAND_PRIVATE_KEY=<KEY_B64> -- npx -y @pkgproof/mcp
claude and ask: check package crossenv with pkgproof. Claude calls the verify_package tool and reports a verdict with its reasons.The first verification each day is free and goes through Base. Later ones are paid from the Algorand account.
One HTTPS request per verification, carrying the package name, version and ecosystem you asked about and nothing else: no account, no telemetry, no file contents. Wallet keys are used to sign locally and are never transmitted. Full text in PRIVACY.md.
npm install
npm test # unit tests, and a real client handshake over an in-memory transport npm run lint # typecheck, formatting, eslint npm run inspector # build, then the MCP inspector against the local server
No test spends anything, and the suite enforces it rather than trusting it: a test that reaches for the network fails, and the run refuses to start at all if a wallet key is set in the environment. The payment path is exercised against a fabricated 402 and a published test account, so an EIP-3009 authorisation is signed locally and the payload and header are checked without a wallet.
Apache-2.0. If you distribute a modified version, section 4(b) requires you to mark the files you changed: a fork of a security tool that still carries this name should not be mistakable for this one.