
Vulnicheck
io.github.andrasfe由 GitHub 帳號 andrasfe 發布v0.1.0更新於 Oct 25, 2026
HTTP MCP Server for comprehensive Python vulnerability scanning and security analysis.
概覽
一個以 Docker 執行的 HTTP MCP 伺服器,讓助理掃描 Python 專案與 GitHub 儲存庫中的漏洞相依套件、外洩密鑰及 Dockerfile 安全問題。
- 可以做什麼
- 檢查 Python 套件、相依性檔案與已安裝套件中的已知漏洞,並查詢多個漏洞資料庫中的 CVE 詳細資訊。掃描原始碼檔案中外洩的密鑰與憑證,分析 Dockerfile 與 compose 檔案中易受攻擊的相依套件。掃描公開或私有 GitHub 儲存庫,並驗證 MCP 伺服器安全設定。產生 AI 驅動的風險評估與修補建議,包含互動式綜合安全檢查。
- 適用情境
- 適合稽核 Python 專案、容器設定或 GitHub 儲存庫的安全問題,或讓助理說明某個 CVE 並提出修正建議。也適合在部署前檢查 MCP 伺服器設定。
- 執行需求
- 需要 Docker 執行容器映像並開放本機連接埠(預設 3000),以及支援 HTTP 傳輸的 MCP 用戶端。可選密鑰用於增強功能:OPENAI_API_KEY 或 ANTHROPIC_API_KEY 用於 AI 風險評估,GITHUB_TOKEN 與 NVD_API_KEY 用於提高速率限制。需要連線至漏洞資料庫與 GitHub 的網路存取。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Vulnicheck,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
VulniCheck - AI-Powered Security Scanner
VulniCheck provides comprehensive security analysis for Python projects and GitHub repositories using AI-powered vulnerability detection. It runs as a Docker-based HTTP MCP server with standard HTTP streaming (no SSE required), providing secure containerized deployment with comprehensive vulnerability scanning capabilities.
Quick Start
1. Pull and Run the Docker Container
2. Add to Claude Code
That's it! VulniCheck is now available in Claude Code.
Usage
Once installed, simply ask Claude:
VulniCheck will:
- ✅ Scan dependencies for known vulnerabilities (requirements.txt, pyproject.toml, setup.py)
- ✅ Detect exposed secrets and credentials
- ✅ Analyze Dockerfiles for security issues
- ✅ Validate MCP configurations
- ✅ Generate AI-powered risk assessments
- ✅ Provide actionable remediation recommendations
Key Features
- Docker Deployment: Secure containerized deployment with HTTP streaming (no SSE/Server-Sent Events required)
- Optional Authentication: Supports Google OAuth 2.0 for secure access control (disabled by default)
- Production Ready: Scalable HTTP server architecture
- Comprehensive Coverage: Queries 5+ vulnerability databases (OSV.dev, NVD, GitHub Advisory, CIRCL, Safety DB)
- GitHub Integration: Scan any public/private GitHub repository directly (up to 1GB)
- AI-Powered Analysis: Uses OpenAI/Anthropic APIs for intelligent security assessment
- Secrets Detection: Finds exposed API keys, passwords, and credentials
- Docker Security: Analyzes Dockerfiles for vulnerable dependencies
- Smart Caching: Avoids redundant scans with commit-level caching
- Space Management: Automatic cleanup prevents disk exhaustion (2GB total limit)
- Zero Config: Works out of the box, enhanced with optional API keys
Available Tools
Optional API Keys
Enhance VulniCheck with API keys for better rate limits and AI features:
Authentication (Optional)
VulniCheck supports optional Google OAuth 2.0 authentication for secure access control. By default, authentication is disabled.
Enabling Google OAuth
-
Get Google OAuth Credentials:
- Go to Google Cloud Console
- Create a project and enable Google+ API
- Create OAuth 2.0 credentials (Web application)
- Add authorized redirect URI:
http://localhost:3000/oauth/callback(or your domain)
-
Configure Environment Variables:
-
Run with Authentication:
-
Using docker-compose: See
docker-compose.auth-example.ymlfor a complete configuration example.
Note: OAuth tokens are persisted in /home/vulnicheck/.vulnicheck/tokens. Use a Docker volume to persist tokens across container restarts.
⚠️ Known OAuth Limitations
FastMCP OAuth + HTTP Transport Incompatibility
Due to a limitation in FastMCP 2.12.4, OAuth authentication does not work properly with HTTP transport (streamable-http). The authorization endpoints (/oauth/authorize, /oauth/callback) are not correctly mounted, resulting in 404 errors.
When OAuth Works:
- ✅ Local connections (when supported in future FastMCP versions)
- ✅ OAuth discovery endpoint works (
/.well-known/oauth-protected-resource)
When OAuth Does NOT Work:
- ❌ HTTP transport with external clients (ChatGPT, Claude Desktop, etc.)
- ❌ Authorization endpoints return 404
- ❌ Token exchange fails
Workaround for External Clients (ChatGPT, etc.):
Run VulniCheck without authentication when accessing through ngrok or other public URLs:
In your MCP client (ChatGPT, etc.):
- URL:
https://your-ngrok-url.ngrok-free.dev/mcp - Authentication: None
Security Considerations:
- ✅ Traffic is encrypted via HTTPS (ngrok)
- ⚠️ No authentication - anyone with URL can access
- 💡 ngrok free URLs change on restart (security through obscurity)
- 🔒 For production, use ngrok paid tier with password protection or IP whitelisting
Future Resolution: This limitation will be resolved when:
- FastMCP fixes OAuth + HTTP transport support, OR
- Alternative authentication mechanisms are implemented
Using with ngrok
Quick Start (No OAuth):
Optional OAuth Script (Experimental - OAuth Not Functional):
A convenience script restart-vulnicheck-ngrok.sh is provided for testing OAuth, but OAuth does not currently work due to FastMCP limitations:
Note: The script is provided for future use when FastMCP OAuth + HTTP transport is fixed. Currently, always run without OAuth for external clients.
Building from Source
Docker Hub
The official Docker image is available at:
- Docker Hub: andrasfe/vulnicheck
- Latest Tag:
andrasfe/vulnicheck:latest
Requirements
- Docker
- Claude Code or any MCP client with HTTP transport support (standard HTTP, no SSE required)
- Optional: API keys for enhanced features
Supported File Types
- Dependencies:
requirements.txt,pyproject.toml,setup.py, lock files - Containers:
Dockerfile,docker-compose.yml - Secrets: All text-based source files
- GitHub: Any public or private repository URL
Support
- Issues: Report problems at https://github.com/andrasfe/vulnicheck/issues
- Development: See CLAUDE.md for development details
- Security: Report security issues privately via GitHub Security Advisories
DISCLAIMER: Vulnerability data provided "AS IS" without warranty. Users are responsible for verification and remediation.
來源:README.md,提交 48bed31
工具
0版本歷史
1- v0.1.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分