CVE and supply chain checks for MCP clients. Covers infrastructure, PyPI, and npm packages.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Attestd checks whether a dependency version has exploitable CVEs or a confirmed supply-chain compromise. One API call returns a structured risk response.
Official Model Context Protocol (MCP) server for Attestd. Exposes CVE risk and supply-chain checks as tools for Claude Code, Claude Desktop, and any MCP-compatible client.
Get a free API key Β· Full docs
npx -y @attestd/mcp with no global install.check_package_vulnerability: wraps GET /v1/check using @attestd/sdk.check_batch_vulnerabilities: checks up to 100 packages in one call. Use for lockfile and manifest audits.list_covered_products: returns Attestd-covered products. With an API key, returns live data from GET /v1/products. Without a key, returns the static bundled infrastructure list.get_cve_details: returns CVSS, EPSS, KEV status, and affected products for a single CVE id.check_package_vulnerability, check_batch_vulnerabilities, get_cve_details, and live list_covered_products.Add to ~/.claude/mcp.json or project .mcp.json:
Optional: override the API base URL (e.g. dev):
check_package_vulnerability| Argument | Type | Description |
|---|---|---|
product | string | Product slug (nginx, postgresql, litellm, β¦) |
version | string | Exact version (1.20.0) |
Returns JSON with:
| Field | Meaning |
|---|---|
outsideCoverage | true if the product is not covered. Unknown risk, not safe. |
riskState | critical | high | elevated | low | none | null when outside coverage |
activelyExploited | CISA KEV signal |
remoteExploitable | true if any matching CVE is remotely exploitable |
authenticationRequired | true only when all matching CVEs require authentication |
patchAvailable / fixedVersion | Patch guidance |
confidence | Synthesis confidence 0.0β1.0 |
cveIds | CVE IDs contributing to the risk assessment |
typosquat | Package name integrity: typosquat or AI-hallucinated name (kind, resembles, likely_intended) |
message | Explanation when outsideCoverage is true |
supplyChainCompromised / supplyChainDescription | PyPI/npm supply-chain signal |
On invalid/missing API key or rate limit, returns isError: true with a JSON error string.
check_batch_vulnerabilities| Argument | Type | Description |
|---|---|---|
items | array | Array of { product, version } objects. Maximum 100 per call. Each item costs one API call. |
Quota is checked upfront. If the batch would exceed your monthly quota, a 429 is returned before any calls are billed.
Returns JSON with count and results. Supported items include the same fields as check_package_vulnerability minus typosquat. Outside-coverage items return only product, version, outsideCoverage: true, and riskState: null.
list_covered_productsNo arguments. With an API key, returns live JSON from GET /v1/products:
| Field | Meaning |
|---|---|
source | "live" when fetched from the API |
total | Combined count of CVE products and supply chain packages |
cveProducts | CVE infrastructure slugs with display names |
supplyChainPackages | Monitored PyPI/npm packages |
Without an API key, returns the static bundled list:
| Field | Meaning |
|---|---|
source | "static" |
count | Number of bundled infrastructure products |
products | Array of { slug, display } entries |
get_cve_details| Argument | Type | Description |
|---|---|---|
cve_id | string | CVE identifier, e.g. CVE-2021-44228 |
Returns JSON with:
| Field | Meaning |
|---|---|
found | true when the CVE is in Attestd's database; false on 404 (not an error) |
cveId | CVE identifier |
description | NVD description text |
cvssScore / cvssVector | CVSS base score and vector |
activelyExploited | CISA KEV signal |
remoteExploitable | Remotely exploitable |
authenticationRequired | Authentication required for exploitation |
affectedProducts | Attestd product slugs affected by this CVE |
epssScore / epssPercentile | EPSS probability and percentile |
sourcePublishedAt / lastCheckedAt | ISO timestamps |
When the CVE is not found, returns { "found": false, "cveId": "..." } without isError. On invalid/missing API key or rate limit, returns isError: true with a JSON error string.
MIT. See LICENSE.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/attestd-mcp)<a href="https://allmcps.com/mcp/attestd-mcp"><img src="https://allmcps.com/api/badge/attestd-mcp?style=directory" alt="Attestd Mcp on AllMCPs" /></a>