QNSQY
Linux only, local: post-quantum CBOM scan, encrypt to public keys, verify. Takes no secrets
作者提供的说明(英文原文)
Secure grip for your agent's secrets - security-hardened MCP gateway with proxy token architecture
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
PINCER_PROXY_TOKEN, OPENWEBUI_URL, OPENAI_COMPATIBLE_URL, AUDIT_LOG_PATH标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"pincer": {
"command": "npx",
"args": [
"-y",
"pincer-mcp"
],
"env": {
"PINCER_PROXY_TOKEN": "your-value",
"OPENWEBUI_URL": "your-value",
"OPENAI_COMPATIBLE_URL": "your-value",
"AUDIT_LOG_PATH": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add pincer --env PINCER_PROXY_TOKEN=your-value --env OPENWEBUI_URL=your-value --env OPENAI_COMPATIBLE_URL=your-value --env AUDIT_LOG_PATH=your-value -- npx -y pincer-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"pincer": {
"command": "npx",
"args": [
"-y",
"pincer-mcp"
],
"env": {
"PINCER_PROXY_TOKEN": "your-value",
"OPENWEBUI_URL": "your-value",
"OPENAI_COMPATIBLE_URL": "your-value",
"AUDIT_LOG_PATH": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"pincer": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"pincer-mcp"
],
"env": {
"PINCER_PROXY_TOKEN": "your-value",
"OPENWEBUI_URL": "your-value",
"OPENAI_COMPATIBLE_URL": "your-value",
"AUDIT_LOG_PATH": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
OPENWEBUI_URL envOPENAI_COMPATIBLE_URL envAUDIT_LOG_PATH env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 VouchlyAI 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:PINCER_PROXY_TOKEN
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.1.5)于9个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:QNSQY, EchelonGraph CVE & Exposure, WatchGuard MCP
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Linux only, local: post-quantum CBOM scan, encrypt to public keys, verify. Takes no secrets
CVE, KEV, EPSS, SBOM and advisory lookups; per-CVE exposure from Shodan data (© Shodan). Keyless.
WatchGuard Cloud Firebox, Endpoint Security, ThreatSync, NDR and AuthPoint APIs for every customer
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Pincer-MCP is a security-hardened Model Context Protocol (MCP) gateway that eliminates the "Lethal Trifecta" vulnerability in agentic AI systems. By acting as a stateless intermediary, Pincer ensures agents never see your real API keys.
Current AI agents store long-lived API keys in plain-text .env files or local databases. If compromised via prompt injection or host intrusion, attackers gain direct access to your:
Pincer implements a "blindfold" security model:
pxr_abc123...)sequenceDiagram
participant Agent participant Pincer participant Vault (OS Keychain) participant External API
Agent->>Pincer: tools/call + proxy_token: pxr_abc123 Pincer->>Vault: Decrypt real API key Vault-->>Pincer: gemini_api_key: AIzaSy... Pincer->>External API: API call with real key External API-->>Pincer: Response Pincer->>Pincer: Scrub key from memory Pincer-->>Agent: Response (no credentials)
## 📦 Available Tools
gemini_generate: Secure Google Gemini API calls.openai_chat: Chat completions with OpenAI GPT models (gpt-4o, gpt-4-turbo, gpt-3.5-turbo, etc.).openai_list_models: List all available OpenAI models.openai_compatible_chat: Chat completions with any OpenAI-compatible API (Azure OpenAI, Ollama, vLLM, etc.).openai_compatible_list_models: List models from custom OpenAI-compatible endpoints.claude_chat: Chat completions with Anthropic Claude models (Claude 3.5 Sonnet, Opus, Haiku).openrouter_chat: Unified API access to 100+ models from multiple providers (OpenAI, Anthropic, Google, Meta, etc.).openrouter_list_models: List all available models across OpenRouter providers.openwebui_chat: OpenAI-compatible interface for self-hosted LLMs.openwebui_list_models: Discover available models on an OpenWebUI instance.gpg_sign_data: Sign data or files using a GPG/PGP private key stored in Pincer's vault. *(Keyless Execution — agent never sees the key)*gpg_decrypt: Decrypt PGP-encrypted data using a vault-stored private key.# Generate a new GPG keypair (private key stored in vault)
pincer key generate --name "Release Signing" --email dev@example.com
pincer key import ./my-key.asc --passphrase "my-passphrase"
pincer key list
pincer key export
pincer agent authorize mybot gpg_sign_data --key
*(More callers coming soon!)*
Option 1: Global Installation (Recommended)
npm install -g pincer-mcp
Option 2: Local Development
git clone https://github.com/VouchlyAI/Pincer-MCP.git
cd Pincer-MCP npm install npm run build npm link # Makes 'pincer' command available locally
# 1. Initialize vault (creates master key in OS keychain)
pincer init
pincer set gemini_api_key "AIzaSyDpxPq..." pincer set openai_api_key "sk-proj-..."
pincer agent add openclaw
pincer agent authorize openclaw gemini_generate
Store multiple keys for the same tool and assign them to different agents:
# Store two different Gemini API keys
pincer set gemini_api_key "AIzaSy_KEY_FOR_CLAWDBOT..." --label key1 pincer set gemini_api_key "AIzaSy_KEY_FOR_MYBOT..." --label key2
pincer list
pincer agent add clawdbot pincer agent authorize clawdbot gemini_generate --key key1
pincer agent add mybot pincer agent authorize mybot gemini_generate --key key2
pincer agent list
Result: clawdbot uses key1, mybot uses key2 - perfect for rate limiting or cost tracking!
npm run dev
Give your agent the proxy token (not the real API key):
export PINCER_PROXY_TOKEN="pxr_V1StGXR8_Z5jdHi6B-myT"
When storing secrets, you must use the correct secret name for each tool. See the [Tool Mappings Guide](docs/TOOL_MAPPINGS.md) for a complete reference.
When you run pincer agent authorize myagent gemini_generate, Pincer will inject the gemini_api_key secret when that tool is called.
Your agent sends requests with the proxy token in the body:
{
"jsonrpc": "2.0", "method": "tools/call", "params": { "name": "gemini_generate", "arguments": { "prompt": "Hello world", "model": "gemini-2.0-flash" }, "_meta": { "pincer_token": "pxr_V1StGXR8_Z5jdHi6B-myT" } } }
Pincer maps the proxy token to the real API key and executes the call securely.
Tier 1: Master Key (OS Keychain)
Tier 2: Encrypted Store (SQLite)
~/.pincer/vault.dbsecrets: Real API keys (AES-256-GCM encrypted)proxy_tokens: Proxy token → Agent ID mappingsagent_mappings: Agent ID → Tool authorizationRequest (_meta.pincer_token: pxr_xxx)
↓ Gatekeeper: Extract proxy token from body ↓ Vault: Resolve pxr_xxx → agent_id → tool_name → real_api_key ↓ Injector: JIT decrypt & inject real key ↓ Caller: Execute external API call ↓ Scrubber: Overwrite key in memory with zeros ↓ Audit: Log to tamper-evident chain
Pincer is built for enterprise-grade security:
pxr_ tokens; they never touch real credentials.Every tool call is logged to ~/.pincer/audit.jsonl with both UTC and Local timestamps, plus character counts and estimated token usage:
{
"agentId": "openclaw", "tool": "gemini_generate", "duration": 234, "status": "success", "input_chars": 156, "output_chars": 423, "estimated_input_tokens": 39, "estimated_output_tokens": 106, "timestamp_utc": "2026-02-05T08:32:00.000Z", "timestamp_local": "2/5/2026, 2:02:45 PM", "chainHash": "a1b2c3d4e5f6g7h8", "prevHash": "0000000000000000" }
Token Estimation: Pincer automatically estimates token usage using a 4:1 character-to-token ratio (~4 characters per token average). This provides consistent cost tracking across all AI providers without relying on provider-specific APIs.
Chain hashes provide tamper detection - any modification breaks the SHA-256 chain.
# Install dependencies
npm install
npm test
npm run dev
npm run build
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
BSL 1.1 (Business Source License) — See LICENSE for details. Converts to Apache 2.0 on 2028-04-01.
Built with ❤️ for a more secure AI future.