ZBS Index What actually exists in applied AI, with the source next to it

mcp server

DepScope

Package intelligence MCP for AI agents — 22 tools, 19 ecosystems, AGPL SDK, free.

Description as published by the maintainer. Source

  • version 0.9.24
  • slowing

slowing — Most recent push to the repository was 2026-05-05.

What this server can do

22 functions, named and described by the server itself. Parameter names are shown because they say more about what a function does than its name usually does.

check_bulk(items)
Fast pre-flight filter for a batch of (ecosystem, package) pairs. DB-only, <100ms for 100 items. USE WHEN: about to emit `npm install a b c …` or `pip install a b c …` — catches hallucinated names, stdlib, typos, and known-bad in ONE call. NOT a dep-tree audit (use scan_project for that). RETURNS: per-item {status: exists|stdlib|malicious|typosquat_suspect|historical_incident|unknown}. Required: items.
check_compatibility(packages)
Is this specific multi-package version combo verified to work together? USE WHEN: pinning a stack (next@15 + react@19 + node@22); before recommending a version matrix. RETURNS: {compatible, conflicts[], notes}. Required: packages.
check_malicious(package, ecosystem)
Supply-chain malware check against OpenSSF/OSV. USE WHEN: about to suggest install of an unvetted/unfamiliar package; name came from a blog/tutorial. Call BEFORE check_package for untrusted pkgs. RETURNS: {is_malicious, threat_tier, source}. Required: ecosystem, package.
check_package(package, version, ecosystem)
Full machine-readable JSON report (~2k tokens). USE WHEN: you need to programmatically parse specific fields (CI gating, UI, sub-field extraction). Otherwise prefer get_package_prompt. RETURNS: {package, health:{score}, vulnerabilities[], latest, deprecated, maintainers, recommendation}. Required: ecosystem, package.
check_typosquat(package, ecosystem)
Typosquat detector. USE WHEN: name differs from a well-known package by 1-2 chars (`lodsh`, `reqeusts`); copy-paste from unreliable source; downloads near zero but name looks familiar. RETURNS: {is_typosquat, likely_target, confidence}. Required: ecosystem, package.
compare_packages(packages, ecosystem)
Side-by-side comparison (health, vulns, downloads, maintainers, last release) of 2-10 packages in the same ecosystem. USE WHEN: 'X vs Y' / 'should I pick X or Y'. RETURNS: table-shaped JSON, one row per package. Required: ecosystem, packages.
contact_depscope(body, kind, name, email, company, package, subject, version, expected, observed, ecosystem, tool_called, evidence_url)
Inbound ticket: bug/listing/security/anomaly/partnership. USE WHEN: reporting wrong data (`bug`), requesting a new pkg/ecosystem index (`listing`), disclosing a DepScope security issue (`security`), flagging a concrete mismatch in another tool's output vs. authoritative source (`anomaly` — provide tool_called+observed+expected), or partnership/press (`partnership`). RETURNS: {ticket_id} or {anomaly_id}.
find_alternatives(package, ecosystem)
Curated replacements for deprecated/unhealthy packages, including stdlib built-ins (e.g. `fs.rm` for rimraf). USE WHEN: pkg flagged AVOID/URGENT; 'what to use instead of X'; before guessing a replacement name. RETURNS: {alternatives[]: {name, reason, is_stdlib}}. Required: ecosystem, package.
get_breaking_changes(package, ecosystem, to_version, from_version)
Breaking changes between two majors of the SAME package (`next@14`→`15`). USE WHEN: user is bumping a major; before recommending a major upgrade. Different from get_migration_path (same pkg vs. different pkg). RETURNS: {breaking_changes[]: {area, description, hint}}. Required: ecosystem, package.
get_health_score(package, ecosystem)
Single 0-100 health score — cheapest go/no-go gate (>=70 safe). USE WHEN: CI gating or pkg already screened for malware/typos. NOT a first screen — run check_malicious + check_typosquat first. For a verbal verdict use get_package_prompt. RETURNS: {score, verdict}. Required: ecosystem, package.
get_known_bugs(package, version, ecosystem)
Non-CVE known bugs for a specific package version. USE WHEN: unexpected behavior that is NOT a security issue; a pinned version misbehaves. RETURNS: {bugs[]: {title, fixed_in, workaround}}. Required: ecosystem, package.
get_latest_version(package, ecosystem)
Latest published version + deprecation flag — the cheapest call. USE WHEN: only a version string matters (pinning a dep, answering 'what version of X'). If you also need health/vulns use check_package. RETURNS: {latest, deprecated, published_at}. Required: ecosystem, package.
get_migration_path(ecosystem, to_package, from_package)
Prescriptive migration plan between DIFFERENT packages — rationale + literal code diff + breaking changes + effort minutes. USE WHEN: replacing `request`→`axios`, `moment`→`dayjs`, `flask`→`fastapi`, etc.; both endpoints known. RETURNS: {rationale, diff, breaking_changes[], estimated_minutes}. Required: ecosystem, from_package, to_package.
get_package_prompt(package, ecosystem)
LLM-optimised package brief — plain text ~300 tokens (~75% cheaper than JSON). Verdict (SAFE/AVOID/URGENT/MALICIOUS) + health + vulns + alternatives + maintainer alerts. USE WHEN: you want to reason over a package and drop the output directly in context; 'is X safe'. PREFER THIS over check_package in 95% of LLM cases. RETURNS: plain-text brief. Required: ecosystem, package.
get_trending(limit, scope, ecosystem)
Live trending packages with rank-delta and weekly growth %. USE WHEN: 'what is rising in npm/PyPI/Cargo right now'; recommendation not biased by training-data cutoff. RETURNS: {items[]: {name, rank, rank_delta, weekly_growth_pct}}.
get_trust_signals(package, ecosystem)
One-call aggregate of ALL non-CVE supply-chain trust signals: maintainer trust (bus factor, ownership changes), OpenSSF Scorecard, quality (criticality, release velocity, publish security), and SLSA/Sigstore provenance. USE WHEN: deep-vetting a package beyond CVEs (hardened/regulated env, SBOM/compliance, small-pkg ownership review, choosing between healthy candidates). Runs 4 backend endpoints in parallel. RETURNS: {maintainer, scorecard, quality, provenance} — each may be null if its backend call failed. Required: ecosystem, package.
get_vulnerabilities(package, ecosystem)
CVE/OSV advisories affecting the latest (or specified) version. USE WHEN: security-sensitive project; user asks 'any CVEs in X'; you already know the pkg exists. RETURNS: {vulnerability_count, vulnerabilities[]: {id, severity, cvss, fixed_in}}. Required: ecosystem, package.
install_command(package, version, ecosystem)
Canonical install command(s) across every package manager of the ecosystem (npm/pnpm/yarn/bun, pip/uv/poetry, cargo, go, composer, maven+gradle, nuget, …). USE WHEN: emitting an install line and you want correct flags. RETURNS: {primary, variants[]}. Required: ecosystem, package.
package_exists(package, ecosystem)
Boolean registry existence check. USE WHEN: about to emit a package name in an install command but unsure it exists; verifying a name generated from training data. RETURNS: {exists}. Required: ecosystem, package.
pin_safe(package, ecosystem, constraint, min_severity, include_prerelease)
Highest version below the chosen CVE severity tier, respecting a semver constraint. USE WHEN: writing a package.json/requirements.txt line; resolving dependabot by lowest-risk patched version. RETURNS: {recommended_version, walk_log[]}. Required: ecosystem, package.
resolve_error(error, limit, query, context)
Map error OR free-text query to a verified fix. USE WHEN: user pastes a concrete error/stack (ENOENT, ImportError, build failure) — pass `error`. OR user describes a symptom ('webpack slow', 'pip stuck') — pass `query`. Always prefer this over guessing a fix. RETURNS: exact-match {status, solution, confidence, source_url} or search results [{title, summary, source_url}].
scan_project(packages, ecosystem)
Audit a project's dependencies in one shot. Returns a single-sentence `verdict` (e.g. "DO NOT INSTALL — 1 hallucinated: fastapi-turbo") that an agent can paste into its reply, plus per-package health/vulns/recommendation. Detects hallucinated packages, deprecated, typosquats, critical vulnerabilities. Accepts EITHER {ecosystem, packages:[name@ver, …]} (up to 100, returns JSON) OR {packages:[{ecosystem, package}, …]} (up to 50, mixed ecosystems, returns text brief). USE WHEN: user pastes package.json/requirements.txt/Cargo.toml; agent generated install command; 'is my stack OK'. RETURNS: JSON with `verdict`, `project_risk`, `summary.hallucinated_packages`, `summary.deprecated_packages`, per-package health. Required: packages.

Last successful function declaration observed on . Source: https://mcp.depscope.dev/mcp. We list what the server declared; we do not call any of these functions.

Endpoint status observed on . Source: https://mcp.depscope.dev/mcp.

Signals

These are separate measurements of different things. They are deliberately not combined into one score, because a popularity number that mixes website traffic with saves and stars cannot be checked or acted on.

Signal Value What it measures Window Observed Source
GitHub stars 0 Number of GitHub accounts that bookmarked this repository since it was created. It is a bookmark count, not installs, not active users and not quality. cumulative, all time GitHub
Last commit 2026-05-05 Date of the most recent push to any branch. This is the strongest cheap indicator of whether the project is still maintained. point in time GitHub
Open issues 1 Open issues plus open pull requests, as GitHub counts them together. A high number can mean an active project or an abandoned one. as of fetch GitHub
Package downloads 71 downloads Package downloads from the npm registry in this window. Includes continuous integration runs, mirrors and automated installs, so it overstates the number of human users. 2026-07-30 to 2026-08-05 npm
Latest published version 0.9.24 Latest version string the maintainer published to the registry. as of fetch Model Context Protocol
Registry record last updated 2026-05-05 When the registry record was last updated by its maintainer. point in time Model Context Protocol
First listed in the MCP Registry 2026-05-05 Date this server was first published to the official MCP Registry. Not a usage or quality measure. point in time Model Context Protocol
repository status active The repository exists on GitHub and is not archived. This says nothing about how recently it was worked on. as of fetch GitHub
mcp tools declared 22 tools Number of functions the server itself declared when asked to list them. This is what the server offers an agent, not a measure of how well any of them work. as of probe mcp.depscope.dev
mcp endpoint status ok The server listed 22 functions when asked. as of probe mcp.depscope.dev

Where to get it

Related, by what their authors tagged them

  • io.github.alisaitteke/npm-mcp — last commit 2026-01-29, shares npm, package-manager
    MCP server for npm package management, security analysis, and compatibility checking
  • io.github.getmcpm/cli — last commit 2026-08-08, shares package-manager, security
    MCP package manager with trust scoring. Search, install, and audit MCP servers.
  • Draugr — last commit 2026-08-06, shares security, supply-chain-security, vulnerability-scanner
    Security scanning for AI agents: SAST, SCA, secrets, IaC, DAST, ranked by real risk.
  • io.github.eltociear/skill-audit-mcp — last commit 2026-08-02, shares security, supply-chain-security, vulnerability-scanner
    Scan agent skills and MCP servers for malicious patterns before you load them
  • io.github.DigiCatalyst-Systems/dep-diff-mcp — last commit 2026-04-25, shares npm, pypi, security
    Translates a lockfile diff into a human-readable upgrade plan for npm and PyPI.
  • com.datakoot/package-intel-mcp — last commit 2026-08-02, shares npm, pypi
    npm, PyPI & crates.io intel for AI agents: versions, popularity, deps, health. No API keys.
  • Open Source Intelligence MCP — last commit 2026-07-16, shares npm, pypi
    GitHub project health, package dependency risk, trending repos, license & package comparison.
  • pkgxray — last commit 2026-08-06, shares npm, supply-chain-security
    Pre-install security scans for npm packages, MCP servers, and AI agents with cited verdict evidence.
  • io.github.amitsingh-24/pixlint — last commit 2026-07-27, shares pypi
    Lint, curate & prepare computer-vision datasets from your AI assistant — MCP server, 67 tools
  • io.github.davidmosiah/agent-seo-engine — last commit 2026-07-03, shares pypi
    Agent-first local SEO quality, intent and opportunity engine with CLI and optional MCP server.

These share tags the maintainers applied themselves, such as npm, package-manager, security, supply-chain-security. Common tags like "mcp" or "ai" are ignored for this: agreeing with six hundred other projects is not a similarity.

This is not a recommendation and not a test result. It is a map of what the authors said their work is about.

How the author describes it

Topics the maintainer set on GitHub: ai-agents, cargo, chatgpt, claude, cursor, llm, mcp, mcp-server, model-context-protocol, npm, package-manager, pypi, security, slopsquatting, supply-chain-security, vulnerability-scanner, windsurf.

This record as data

Every field on this page, with its source and observation date, is in the catalog JSON. Fetch the whole kind at once instead of parsing this HTML.

GET /api/v1/entries/mcp_server.json

Sources

  1. cuttalo/depscope-mcp on GitHub — GitHub, observed , trust tier 3.
  2. depscope-mcp download counts — npm, observed , trust tier 3.
  3. Tools declared by the MCP server at https://mcp.depscope.dev/mcp — mcp.depscope.dev, observed , trust tier 1.
  4. Official MCP Registry — Model Context Protocol, observed , trust tier 1.