
Dep Oracle
io.github.ertugrulakben由 GitHub 帳號 ertugrulakben 發布v1.3.0更新於 Nov 3, 2026
Predictive dependency security engine. Trust scores, zombie detection, blast radius analysis.
概覽
本機 MCP 伺服器,為專案的 npm 與 Python 相依套件計算信任分數與供應鏈風險,找出殭屍套件、仿冒套件名稱與影響範圍。
- 可以做什麼
- 掃描專案相依套件樹並產生完整信任報告
- 查詢單一套件的 0-100 信任分數,並可並排比較兩個套件
- 列出殭屍相依套件,並統計某套件在原始碼中的影響範圍
- 檢查套件名稱的仿冒(typosquatting)風險,並提供更安全的遷移替代方案
- 產生 JSON 報告,可選擇寫入檔案
- 適用情境
- 適合讓助理稽核 JavaScript/TypeScript 或 Python 專案的相依套件風險:找出無人維護的套件、判斷某套件是否可安全引入,或規劃從高風險函式庫遷移出去。
- 執行需求
- 透過 npx 或全域 npm 安裝後在本機執行,需要 Node.js;未宣告任何驗證。即時資料需要連線 npm 與 GitHub,可在 .dep-oraclerc.json 設定選用的 githubToken 以提高 GitHub API 速率上限。離線模式僅使用快取。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Dep Oracle,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
dep-oracle
Predictive Dependency Security Engine
[npm version] [License: MIT] [npm downloads] [GitHub stars] [MCP Registry]
Quick Start · Features · Algorithm · MCP · Comparison
English | Turkce
Your dependencies have dependencies. Who's watching them?
dep-oracle is a predictive dependency security engine that calculates Trust Scores (0-100) for every package in your dependency tree. It detects zombie dependencies, measures blast radius, catches typosquatting attempts, and predicts future risks — before they become vulnerabilities.
Claude Code Security scans YOUR code. dep-oracle scans everything your code depends on.
Why?
- Supply chain attacks increased 742% since 2019 (Sonatype 2024 Report)
- The average npm project pulls in hundreds of transitive dependencies — any one could be compromised
npm auditonly catches known CVEs — dep-oracle predicts future risks- You audit your code. But do you audit your trust?
Quick Start
Features
Usage
Output Example
Trust Score Algorithm
Each package is scored 0-100 based on six weighted metrics:
Score Ranges: 80-100 Safe | 50-79 Warning | 0-49 Critical
Security Scoring
The security metric uses a diminishing penalty model — the first vulnerability has the highest impact, and each additional one has progressively less effect:
Packages that patch vulnerabilities quickly (within 7 days) receive a +10 bonus. Slower patches (within 30 days) receive +5.
Graceful Degradation
If an API is unreachable (GitHub down, no internet, rate limited), dep-oracle doesn't crash. The missing metric weight is redistributed across available metrics. If 3+ metrics are unavailable, a reliability warning is shown.
Blast Radius Methodology
The blast radius metric counts how many of your source files directly import a given dependency:
- Recursively collects all
.js,.ts,.jsx,.tsx,.mjs,.mts,.cjs,.ctsfiles - Skips
node_modules,.git,dist,build,coverage, and other build directories - Searches each file for
import ... from 'pkg',require('pkg'), and dynamicimport('pkg')patterns - Reports the count, file paths, and percentage of codebase affected
Current limitations:
- Only scans JavaScript/TypeScript import patterns
- Python
importstatements are not yet analyzed (blast radius returns 0 for Python-only projects) - Does not trace re-exports or barrel files — counts direct imports only
Weight Rationale
Weights are based on the principle that security vulnerabilities and maintainer abandonment are the strongest predictors of supply chain risk, followed by development activity signals. Weights are fully configurable via .dep-oraclerc.json — enterprise teams can adjust to match their specific risk tolerance.
When data is unavailable for a metric, the score is pulled toward the midpoint (50) proportionally to the fraction of missing weight, preventing artificial inflation from missing data.
Typosquat Detection
dep-oracle uses a multi-layer approach to catch typosquatting:
- Static registry — 1,847+ known popular package names across 40+ categories (React, Vue, Angular, Express, testing, CLI tools, etc.)
- Dynamic npm lookup — Fetches the top 5,000 most-downloaded packages from npm and caches them for 7 days
- Pattern matching — Levenshtein distance, prefix/suffix manipulation, character swap, missing/extra letter detection
Migration Advisor
When a package scores low or is flagged as a zombie, dep-oracle suggests safer alternatives from a curated database of 131 package mappings with 192 alternatives:
Each suggestion includes difficulty rating (easy/moderate/hard) and migration context.
Claude Code Integration (MCP)
dep-oracle is listed on the official MCP Registry and works as an MCP server for Claude Code:
Then in Claude Code, just ask:
- "What's the riskiest dependency in this project?"
- "Is lodash safe to use?"
- "Show me zombie dependencies"
- "Suggest alternatives for moment.js"
Available MCP Tools:
GitHub Action
Configuration
Create .dep-oraclerc.json in your project root:
Or add to package.json:
Configuration Options
Supported Package Managers
Comparison
Note: dep-oracle is not a replacement for Snyk or Socket.dev in enterprise environments. They have dedicated security research teams and CVE databases. dep-oracle focuses on predictive signals (trust scores, maintenance health, funding, zombie detection) that complement existing tools.
Programmatic API
Test Suite
dep-oracle has comprehensive test coverage:
Changelog
v1.2.0 (2026-02-22)
- Security: Path traversal protection in MCP tools (validated dir/output paths)
- Security: Package name validation (npm naming rules enforced)
- Security: HTML reporter metric values escaped (XSS defense-in-depth)
- Security: GitHub username/repo validation in URL parser
- Security: GitHub Sponsors username validation in funding collector
- Feature: Programmatic API —
import { scan, checkPackage } from 'dep-oracle' - Feature: 3 new MCP tools:
dep_oracle_typosquat_check,dep_oracle_compare,dep_oracle_report(8 total) - Feature: GitHub Action now builds correctly (self-contained bundle)
- Fix: Collector timeout (30s) prevents hanging on slow APIs
- Fix: Trust score weight validation (must sum to 1.0)
- Fix: Patch bonus only applies when vulnerabilities exist
- Fix: Python parser preserves
#egg=fragments in git URLs - Fix: Typosquat homoglyph detection now catches 2-character substitutions
- Fix: Cache error handling distinguishes JSON corruption from I/O errors
- Fix:
server.jsonnow included in npm package for MCP registry
v1.1.4 (2026-02-22)
- Package.json Fix: Removed invalid
readmefield that caused npm to display literal string instead of README content
v1.1.3 (2026-02-22)
- npm README Fix: English README now correctly shown on npmjs.com (excluded Turkish README from npm package via prepack/postpack lifecycle)
v1.1.2 (2026-02-22)
- MCP Registry Links: Updated to official documentation URL
v1.1.1 (2026-02-22)
- MCP Registry: Listed on the official MCP Registry as
io.github.ertugrulakben/dep-oracle - Dynamic Versioning: MCP server and SARIF reporter now read version from package.json (no more hardcoded versions)
v1.1.0 (2026-02-22)
- Typosquat Detection: Expanded to 1,847+ known packages across 40+ categories, plus dynamic npm registry fetch (top 5,000 packages, 7-day cache)
- Migration Advisor: Expanded to 131 package mappings with 192 safer alternatives
- Trust Score Calibration: Diminishing vulnerability penalty (first CVE has highest impact), fast-patch bonus (+10 for <=7 days)
- Poetry.lock Support: Full poetry.lock parsing for Python projects
- Comprehensive Test Suite: 10 test files, 144 tests covering all analyzers, parsers, cache, and utilities
- Turkish README: Full Turkish documentation (README.tr.md)
- Dynamic CLI Version: Version automatically synced from package.json
v1.0.0 (2026-02-22)
- Initial release
- Trust Score engine with 6 weighted metrics
- npm + Python (pip, poetry, pyproject.toml) parsers
- Zombie detection, blast radius analysis
- Typosquat detection with Levenshtein distance
- Trend prediction (3-month risk projection)
- Migration advisor with curated alternatives
- Terminal, HTML, JSON, SARIF output formats
- MCP server for Claude Code integration
- GitHub Action support
- Offline mode with SQLite-compatible cache
- Badge generator (SVG)
Contributing
See CONTRIBUTING.md for development setup, coding standards, and how to add new collectors, parsers, or analyzers.
License
來源:README.md,提交 856003a
工具
0版本歷史
1- v1.3.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分