Data model schemas¶
JSON Schema (Pydantic serialization mode) for the main PocMap models. Regenerate with python scripts/generate_mcp_docs.py, or write all schemas to disk via pocmap schemas --output ./schemas.
MCP tools return plain objects under an open {"type": "object"} output schema so error envelopes are never stamped with success defaults.
CVEInfo¶
{
"$defs": {
"AffectedProduct": {
"description": "One ``(vendor, product)`` pair a CVE is recorded against.\n\nA single CVE routinely names several: the vulnerable component plus every\ndistribution that shipped it (e.g. ``f5:nginx`` alongside\n``fedoraproject:fedora``). Matching must consider all of them \u2014 collapsing\nto a single pair silently drops the component the CVE is actually about.\n\nAttributes:\n vendor: Vendor name as it appears in the CPE (already lowercased by NVD).\n product: Product name as it appears in the CPE.",
"properties": {
"vendor": {
"description": "Vendor name from the CPE",
"title": "Vendor",
"type": "string"
},
"product": {
"description": "Product name from the CPE",
"title": "Product",
"type": "string"
}
},
"required": [
"vendor",
"product"
],
"title": "AffectedProduct",
"type": "object"
},
"CPEMatch": {
"description": "A CPE applicability statement, including its version bounds.\n\nModern NVD entries express affected version *ranges* out-of-band: the CPE\n``criteria`` carries ``*`` in the version field and the real range lives in\nthe ``versionStart*`` / ``versionEnd*`` attributes. Reading only the literal\nversion field therefore matches everything.\n\nAttributes:\n criteria: The CPE 2.3 string.\n version_start_including: Inclusive lower bound, if any.\n version_start_excluding: Exclusive lower bound, if any.\n version_end_including: Inclusive upper bound, if any.\n version_end_excluding: Exclusive upper bound, if any.\n vulnerable: Whether NVD marks this CPE as vulnerable (vs. merely a platform).",
"properties": {
"criteria": {
"description": "CPE 2.3 string",
"title": "Criteria",
"type": "string"
},
"version_start_including": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Inclusive lower version bound",
"title": "Version Start Including"
},
"version_start_excluding": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exclusive lower version bound",
"title": "Version Start Excluding"
},
"version_end_including": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Inclusive upper version bound",
"title": "Version End Including"
},
"version_end_excluding": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exclusive upper version bound",
"title": "Version End Excluding"
},
"vulnerable": {
"default": true,
"description": "Whether NVD marks this CPE vulnerable",
"title": "Vulnerable",
"type": "boolean"
}
},
"required": [
"criteria"
],
"title": "CPEMatch",
"type": "object"
},
"CVEState": {
"description": "Publication states for a CVE identifier.",
"enum": [
"PUBLISHED",
"RESERVED",
"REJECTED",
"UNKNOWN"
],
"title": "CVEState",
"type": "string"
},
"CVSSScore": {
"description": "CVSS scoring information for a vulnerability.\n\nAttributes:\n version: CVSS specification version (e.g., \"3.1\").\n base_score: Numeric base score (0.0 -- 10.0).\n severity: Human-readable severity level.\n vector_string: Compressed CVSS vector string.",
"properties": {
"version": {
"$ref": "#/$defs/CVSSVersion",
"default": "unknown",
"description": "CVSS version"
},
"base_score": {
"anyOf": [
{
"maximum": 10.0,
"minimum": 0.0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "CVSS base score",
"title": "Base Score"
},
"severity": {
"$ref": "#/$defs/Severity",
"default": "UNKNOWN",
"description": "Severity level"
},
"vector_string": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "CVSS vector string",
"title": "Vector String"
}
},
"title": "CVSSScore",
"type": "object"
},
"CVSSVersion": {
"description": "Supported CVSS version identifiers.",
"enum": [
"2.0",
"3.0",
"3.1",
"4.0",
"unknown"
],
"title": "CVSSVersion",
"type": "string"
},
"Severity": {
"description": "CVSS severity levels.",
"enum": [
"LOW",
"MEDIUM",
"HIGH",
"CRITICAL",
"UNKNOWN"
],
"title": "Severity",
"type": "string"
}
},
"description": "Comprehensive CVE (Common Vulnerabilities and Exposures) record.\n\nAttributes:\n id: The CVE identifier (e.g., ``CVE-2021-44228``).\n description: Human-readable vulnerability description.\n cvss: CVSS scoring information.\n epss: Exploit Prediction Scoring System score (0.0 -- 100.0).\n kev_status: Whether the CVE is in CISA's Known Exploited Vulnerabilities catalog.\n cwes: List of associated CWE (Common Weakness Enumeration) identifiers.\n references: Dictionary of reference names to URLs.\n vendor: Affected vendor name.\n product: Affected product name.\n publication_date: Date the CVE was published.\n state: Current publication state.\n ransomware_usage: Whether the CVE is known to be used in ransomware campaigns.",
"properties": {
"id": {
"description": "CVE identifier",
"pattern": "^CVE-\\d{4}-\\d+$",
"title": "Id",
"type": "string"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Vulnerability description",
"title": "Description"
},
"cvss": {
"anyOf": [
{
"$ref": "#/$defs/CVSSScore"
},
{
"type": "null"
}
],
"default": null,
"description": "CVSS score information"
},
"epss": {
"anyOf": [
{
"maximum": 100.0,
"minimum": 0.0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "EPSS score (0-100)",
"title": "Epss"
},
"kev_status": {
"default": false,
"description": "CISA KEV status",
"title": "Kev Status",
"type": "boolean"
},
"cwes": {
"description": "Associated CWEs",
"items": {
"type": "string"
},
"title": "Cwes",
"type": "array"
},
"references": {
"additionalProperties": {
"type": "string"
},
"description": "Reference URLs",
"title": "References",
"type": "object"
},
"vendor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Vendor name",
"title": "Vendor"
},
"product": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Product name",
"title": "Product"
},
"publication_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Publication date",
"title": "Publication Date"
},
"state": {
"$ref": "#/$defs/CVEState",
"default": "UNKNOWN",
"description": "CVE state"
},
"ransomware_usage": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Ransomware campaign usage status",
"title": "Ransomware Usage"
},
"rejected_reason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Reason for rejection (if state is REJECTED)",
"title": "Rejected Reason"
},
"affected_cpes": {
"description": "Affected CPE 2.3 strings extracted from NVD data",
"items": {
"type": "string"
},
"title": "Affected Cpes",
"type": "array"
},
"affected_products": {
"description": "Every (vendor, product) pair the CVE is recorded against. ``vendor``/``product`` above are the first of these, kept for compatibility.",
"items": {
"$ref": "#/$defs/AffectedProduct"
},
"title": "Affected Products",
"type": "array"
},
"cpe_matches": {
"description": "Full CPE applicability statements, including version bounds",
"items": {
"$ref": "#/$defs/CPEMatch"
},
"title": "Cpe Matches",
"type": "array"
}
},
"required": [
"id"
],
"title": "CVEInfo",
"type": "object"
}
Exploit¶
{
"$defs": {
"ExploitSource": {
"description": "Known sources for exploit code.",
"enum": [
"github",
"exploitdb",
"metasploit",
"nuclei",
"trickest",
"nomi-sec",
"other"
],
"title": "ExploitSource",
"type": "string"
},
"MSFRank": {
"description": "Metasploit exploit reliability ranking.",
"enum": [
"excellent",
"great",
"good",
"normal",
"average",
"low",
"manual",
"unknown"
],
"title": "MSFRank",
"type": "string"
}
},
"description": "A single exploit / PoC entry.\n\nAttributes:\n source: Where the exploit was found.\n url: Direct URL to the exploit code or repository.\n title: Human-readable title or description.\n language: Primary programming language (if known).\n stars: GitHub star count (if applicable).\n forks: GitHub fork count (if applicable).\n rank: Metasploit exploit rank (if applicable).",
"properties": {
"source": {
"$ref": "#/$defs/ExploitSource",
"description": "Exploit source"
},
"url": {
"description": "URL to exploit",
"title": "Url",
"type": "string"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exploit title",
"title": "Title"
},
"language": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Programming language",
"title": "Language"
},
"stars": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "GitHub stars",
"title": "Stars"
},
"forks": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "GitHub forks",
"title": "Forks"
},
"rank": {
"anyOf": [
{
"$ref": "#/$defs/MSFRank"
},
{
"type": "null"
}
],
"default": null,
"description": "Metasploit rank"
},
"command": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "CLI command to run the exploit (e.g., msfconsole command)",
"title": "Command"
}
},
"required": [
"source",
"url"
],
"title": "Exploit",
"type": "object"
}
LabEnvironment¶
{
"$defs": {
"LabPlatform": {
"description": "Platforms hosting CTF/lab environments.",
"enum": [
"hackthebox",
"tryhackme",
"vulhub",
"other"
],
"title": "LabPlatform",
"type": "string"
}
},
"description": "A CTF lab or pre-built vulnerable Docker environment.\n\nAttributes:\n platform: Hosting platform (HackTheBox, TryHackMe, Vulhub).\n name: Room/machine/environment name.\n url: Direct URL to access the lab.\n setup_instructions: Step-by-step setup guide (for Vulhub).",
"properties": {
"platform": {
"$ref": "#/$defs/LabPlatform",
"description": "Lab platform"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Lab name",
"title": "Name"
},
"url": {
"description": "Lab URL",
"title": "Url",
"type": "string"
},
"setup_instructions": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Setup instructions for local environments",
"title": "Setup Instructions"
}
},
"required": [
"platform",
"url"
],
"title": "LabEnvironment",
"type": "object"
}
BugBountyReport¶
{
"$defs": {
"BugBountySource": {
"description": "Sources for bug bounty write-ups.",
"enum": [
"hackerone",
"pentesterland",
"bugbounty_hunting",
"other"
],
"title": "BugBountySource",
"type": "string"
}
},
"description": "A bug bounty write-up or disclosure report.\n\nAttributes:\n source: Platform where the report was published.\n url: Direct URL to the report.\n has_poc: Whether the report includes a PoC demonstration.\n title: Report title.",
"properties": {
"source": {
"$ref": "#/$defs/BugBountySource",
"description": "Report source"
},
"url": {
"description": "Report URL",
"title": "Url",
"type": "string"
},
"has_poc": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Whether a PoC is included",
"title": "Has Poc"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Report title",
"title": "Title"
}
},
"required": [
"source",
"url"
],
"title": "BugBountyReport",
"type": "object"
}
CPEInfo¶
{
"description": "Common Platform Enumeration (CPE) identifier.\n\nAttributes:\n cpe_string: Full CPE 2.3 URI (e.g., ``cpe:2.3:o:microsoft:windows_10:1607``).\n vendor: Software/hardware vendor name.\n product: Product name.\n version: Product version string.",
"properties": {
"cpe_string": {
"description": "Full CPE 2.3 string",
"title": "Cpe String",
"type": "string"
},
"vendor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Vendor name",
"title": "Vendor"
},
"product": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Product name",
"title": "Product"
},
"version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Product version",
"title": "Version"
}
},
"required": [
"cpe_string"
],
"title": "CPEInfo",
"type": "object"
}
ReportEntry¶
{
"$defs": {
"AffectedProduct": {
"description": "One ``(vendor, product)`` pair a CVE is recorded against.\n\nA single CVE routinely names several: the vulnerable component plus every\ndistribution that shipped it (e.g. ``f5:nginx`` alongside\n``fedoraproject:fedora``). Matching must consider all of them \u2014 collapsing\nto a single pair silently drops the component the CVE is actually about.\n\nAttributes:\n vendor: Vendor name as it appears in the CPE (already lowercased by NVD).\n product: Product name as it appears in the CPE.",
"properties": {
"vendor": {
"description": "Vendor name from the CPE",
"title": "Vendor",
"type": "string"
},
"product": {
"description": "Product name from the CPE",
"title": "Product",
"type": "string"
}
},
"required": [
"vendor",
"product"
],
"title": "AffectedProduct",
"type": "object"
},
"BugBountyReport": {
"description": "A bug bounty write-up or disclosure report.\n\nAttributes:\n source: Platform where the report was published.\n url: Direct URL to the report.\n has_poc: Whether the report includes a PoC demonstration.\n title: Report title.",
"properties": {
"source": {
"$ref": "#/$defs/BugBountySource",
"description": "Report source"
},
"url": {
"description": "Report URL",
"title": "Url",
"type": "string"
},
"has_poc": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Whether a PoC is included",
"title": "Has Poc"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Report title",
"title": "Title"
}
},
"required": [
"source",
"url"
],
"title": "BugBountyReport",
"type": "object"
},
"BugBountySource": {
"description": "Sources for bug bounty write-ups.",
"enum": [
"hackerone",
"pentesterland",
"bugbounty_hunting",
"other"
],
"title": "BugBountySource",
"type": "string"
},
"CPEMatch": {
"description": "A CPE applicability statement, including its version bounds.\n\nModern NVD entries express affected version *ranges* out-of-band: the CPE\n``criteria`` carries ``*`` in the version field and the real range lives in\nthe ``versionStart*`` / ``versionEnd*`` attributes. Reading only the literal\nversion field therefore matches everything.\n\nAttributes:\n criteria: The CPE 2.3 string.\n version_start_including: Inclusive lower bound, if any.\n version_start_excluding: Exclusive lower bound, if any.\n version_end_including: Inclusive upper bound, if any.\n version_end_excluding: Exclusive upper bound, if any.\n vulnerable: Whether NVD marks this CPE as vulnerable (vs. merely a platform).",
"properties": {
"criteria": {
"description": "CPE 2.3 string",
"title": "Criteria",
"type": "string"
},
"version_start_including": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Inclusive lower version bound",
"title": "Version Start Including"
},
"version_start_excluding": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exclusive lower version bound",
"title": "Version Start Excluding"
},
"version_end_including": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Inclusive upper version bound",
"title": "Version End Including"
},
"version_end_excluding": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exclusive upper version bound",
"title": "Version End Excluding"
},
"vulnerable": {
"default": true,
"description": "Whether NVD marks this CPE vulnerable",
"title": "Vulnerable",
"type": "boolean"
}
},
"required": [
"criteria"
],
"title": "CPEMatch",
"type": "object"
},
"CVEInfo": {
"description": "Comprehensive CVE (Common Vulnerabilities and Exposures) record.\n\nAttributes:\n id: The CVE identifier (e.g., ``CVE-2021-44228``).\n description: Human-readable vulnerability description.\n cvss: CVSS scoring information.\n epss: Exploit Prediction Scoring System score (0.0 -- 100.0).\n kev_status: Whether the CVE is in CISA's Known Exploited Vulnerabilities catalog.\n cwes: List of associated CWE (Common Weakness Enumeration) identifiers.\n references: Dictionary of reference names to URLs.\n vendor: Affected vendor name.\n product: Affected product name.\n publication_date: Date the CVE was published.\n state: Current publication state.\n ransomware_usage: Whether the CVE is known to be used in ransomware campaigns.",
"properties": {
"id": {
"description": "CVE identifier",
"pattern": "^CVE-\\d{4}-\\d+$",
"title": "Id",
"type": "string"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Vulnerability description",
"title": "Description"
},
"cvss": {
"anyOf": [
{
"$ref": "#/$defs/CVSSScore"
},
{
"type": "null"
}
],
"default": null,
"description": "CVSS score information"
},
"epss": {
"anyOf": [
{
"maximum": 100.0,
"minimum": 0.0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "EPSS score (0-100)",
"title": "Epss"
},
"kev_status": {
"default": false,
"description": "CISA KEV status",
"title": "Kev Status",
"type": "boolean"
},
"cwes": {
"description": "Associated CWEs",
"items": {
"type": "string"
},
"title": "Cwes",
"type": "array"
},
"references": {
"additionalProperties": {
"type": "string"
},
"description": "Reference URLs",
"title": "References",
"type": "object"
},
"vendor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Vendor name",
"title": "Vendor"
},
"product": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Product name",
"title": "Product"
},
"publication_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Publication date",
"title": "Publication Date"
},
"state": {
"$ref": "#/$defs/CVEState",
"default": "UNKNOWN",
"description": "CVE state"
},
"ransomware_usage": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Ransomware campaign usage status",
"title": "Ransomware Usage"
},
"rejected_reason": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Reason for rejection (if state is REJECTED)",
"title": "Rejected Reason"
},
"affected_cpes": {
"description": "Affected CPE 2.3 strings extracted from NVD data",
"items": {
"type": "string"
},
"title": "Affected Cpes",
"type": "array"
},
"affected_products": {
"description": "Every (vendor, product) pair the CVE is recorded against. ``vendor``/``product`` above are the first of these, kept for compatibility.",
"items": {
"$ref": "#/$defs/AffectedProduct"
},
"title": "Affected Products",
"type": "array"
},
"cpe_matches": {
"description": "Full CPE applicability statements, including version bounds",
"items": {
"$ref": "#/$defs/CPEMatch"
},
"title": "Cpe Matches",
"type": "array"
}
},
"required": [
"id"
],
"title": "CVEInfo",
"type": "object"
},
"CVEState": {
"description": "Publication states for a CVE identifier.",
"enum": [
"PUBLISHED",
"RESERVED",
"REJECTED",
"UNKNOWN"
],
"title": "CVEState",
"type": "string"
},
"CVSSScore": {
"description": "CVSS scoring information for a vulnerability.\n\nAttributes:\n version: CVSS specification version (e.g., \"3.1\").\n base_score: Numeric base score (0.0 -- 10.0).\n severity: Human-readable severity level.\n vector_string: Compressed CVSS vector string.",
"properties": {
"version": {
"$ref": "#/$defs/CVSSVersion",
"default": "unknown",
"description": "CVSS version"
},
"base_score": {
"anyOf": [
{
"maximum": 10.0,
"minimum": 0.0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "CVSS base score",
"title": "Base Score"
},
"severity": {
"$ref": "#/$defs/Severity",
"default": "UNKNOWN",
"description": "Severity level"
},
"vector_string": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "CVSS vector string",
"title": "Vector String"
}
},
"title": "CVSSScore",
"type": "object"
},
"CVSSVersion": {
"description": "Supported CVSS version identifiers.",
"enum": [
"2.0",
"3.0",
"3.1",
"4.0",
"unknown"
],
"title": "CVSSVersion",
"type": "string"
},
"Exploit": {
"description": "A single exploit / PoC entry.\n\nAttributes:\n source: Where the exploit was found.\n url: Direct URL to the exploit code or repository.\n title: Human-readable title or description.\n language: Primary programming language (if known).\n stars: GitHub star count (if applicable).\n forks: GitHub fork count (if applicable).\n rank: Metasploit exploit rank (if applicable).",
"properties": {
"source": {
"$ref": "#/$defs/ExploitSource",
"description": "Exploit source"
},
"url": {
"description": "URL to exploit",
"title": "Url",
"type": "string"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exploit title",
"title": "Title"
},
"language": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Programming language",
"title": "Language"
},
"stars": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "GitHub stars",
"title": "Stars"
},
"forks": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "GitHub forks",
"title": "Forks"
},
"rank": {
"anyOf": [
{
"$ref": "#/$defs/MSFRank"
},
{
"type": "null"
}
],
"default": null,
"description": "Metasploit rank"
},
"command": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "CLI command to run the exploit (e.g., msfconsole command)",
"title": "Command"
}
},
"required": [
"source",
"url"
],
"title": "Exploit",
"type": "object"
},
"ExploitSource": {
"description": "Known sources for exploit code.",
"enum": [
"github",
"exploitdb",
"metasploit",
"nuclei",
"trickest",
"nomi-sec",
"other"
],
"title": "ExploitSource",
"type": "string"
},
"LabEnvironment": {
"description": "A CTF lab or pre-built vulnerable Docker environment.\n\nAttributes:\n platform: Hosting platform (HackTheBox, TryHackMe, Vulhub).\n name: Room/machine/environment name.\n url: Direct URL to access the lab.\n setup_instructions: Step-by-step setup guide (for Vulhub).",
"properties": {
"platform": {
"$ref": "#/$defs/LabPlatform",
"description": "Lab platform"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Lab name",
"title": "Name"
},
"url": {
"description": "Lab URL",
"title": "Url",
"type": "string"
},
"setup_instructions": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Setup instructions for local environments",
"title": "Setup Instructions"
}
},
"required": [
"platform",
"url"
],
"title": "LabEnvironment",
"type": "object"
},
"LabPlatform": {
"description": "Platforms hosting CTF/lab environments.",
"enum": [
"hackthebox",
"tryhackme",
"vulhub",
"other"
],
"title": "LabPlatform",
"type": "string"
},
"MSFRank": {
"description": "Metasploit exploit reliability ranking.",
"enum": [
"excellent",
"great",
"good",
"normal",
"average",
"low",
"manual",
"unknown"
],
"title": "MSFRank",
"type": "string"
},
"Severity": {
"description": "CVSS severity levels.",
"enum": [
"LOW",
"MEDIUM",
"HIGH",
"CRITICAL",
"UNKNOWN"
],
"title": "Severity",
"type": "string"
}
},
"description": "A complete report entry for a single CVE.\n\nThis aggregates all discovered information about a CVE including\nexploit code, lab environments, and bug bounty reports.\n\nAttributes:\n cve_info: Core CVE metadata and scoring.\n exploits: List of discovered exploit code sources.\n labs: List of available lab/CTF environments.\n bb_reports: List of bug bounty write-ups.\n generated_at: Timestamp when the report was generated.",
"properties": {
"cve_info": {
"$ref": "#/$defs/CVEInfo",
"description": "CVE information"
},
"exploits": {
"description": "Discovered exploits",
"items": {
"$ref": "#/$defs/Exploit"
},
"title": "Exploits",
"type": "array"
},
"labs": {
"description": "Lab environments",
"items": {
"$ref": "#/$defs/LabEnvironment"
},
"title": "Labs",
"type": "array"
},
"bb_reports": {
"description": "Bug bounty reports",
"items": {
"$ref": "#/$defs/BugBountyReport"
},
"title": "Bb Reports",
"type": "array"
},
"generated_at": {
"description": "Report generation timestamp",
"format": "date-time",
"title": "Generated At",
"type": "string"
}
},
"required": [
"cve_info"
],
"title": "ReportEntry",
"type": "object"
}
PackageVulnerability¶
{
"$defs": {
"Severity": {
"description": "CVSS severity levels.",
"enum": [
"LOW",
"MEDIUM",
"HIGH",
"CRITICAL",
"UNKNOWN"
],
"title": "Severity",
"type": "string"
}
},
"description": "A vulnerability affecting one *package* coordinate, as OSV files it.\n\nDistinct from :class:`CVEInfo`, which is keyed on a CPE product. The unit\nhere is a dependency \u2014 ``PyPI/django``, ``Maven/org.apache\u2026:log4j-core`` \u2014\nso this model carries the one thing a CPE record cannot: the releases that\nfix the issue.\n\n``fixed_versions`` is scoped to the queried package. One advisory covers\nevery package that ships the vulnerable code and their fix streams differ,\nso a version listed here is a real upgrade target for *this* package only.\nSeveral entries are normal rather than contradictory \u2014 a project backports\na fix to each maintained branch.\n\nAn empty ``fixed_versions`` means no fix is published for this package, not\nthat it is unaffected.\n\nAttributes:\n id: OSV identifier (``GHSA-\u2026``, ``PYSEC-\u2026``, ``RUSTSEC-\u2026``, ``CVE-\u2026``).\n aliases: Other identifiers the advisory is cross-referenced under.\n cve_ids: CVE identifiers among ``id``/``aliases``; empty is common, as\n many ecosystem advisories never receive one.\n summary: One-line advisory title.\n details: Full advisory prose, when the caller asked for it.\n severity: Qualitative rating, derived from the CVSS vector when one is\n scoreable and otherwise from the publisher's own label.\n cvss_score: CVSS 3.x base score computed from ``cvss_vector``. ``None``\n for a 4.0-only advisory, which pocmap does not score locally.\n cvss_vector: The CVSS vector string as published.\n fixed_versions: Releases fixing this issue *for this package*.\n introduced_versions: Releases that introduced it.\n epss: EPSS exploitation probability (0-100), when a CVE alias exists.\n kev_status: Whether a CVE alias is in the CISA KEV catalog.\n withdrawn: RFC3339 timestamp if the advisory was retracted.\n published: Publication timestamp.\n modified: Last-modified timestamp.\n url: Canonical OSV page for the advisory.",
"properties": {
"id": {
"description": "OSV advisory identifier",
"title": "Id",
"type": "string"
},
"aliases": {
"description": "Cross-referenced identifiers",
"items": {
"type": "string"
},
"title": "Aliases",
"type": "array"
},
"cve_ids": {
"description": "CVE identifiers, if any",
"items": {
"type": "string"
},
"title": "Cve Ids",
"type": "array"
},
"summary": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "One-line advisory title",
"title": "Summary"
},
"details": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Full advisory text",
"title": "Details"
},
"severity": {
"$ref": "#/$defs/Severity",
"default": "UNKNOWN",
"description": "Qualitative severity"
},
"cvss_score": {
"anyOf": [
{
"maximum": 10.0,
"minimum": 0.0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "CVSS 3.x base score, computed from the vector",
"title": "Cvss Score"
},
"cvss_vector": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Published CVSS vector string",
"title": "Cvss Vector"
},
"fixed_versions": {
"description": "Releases that fix this issue for the queried package",
"items": {
"type": "string"
},
"title": "Fixed Versions",
"type": "array"
},
"introduced_versions": {
"description": "Releases that introduced this issue",
"items": {
"type": "string"
},
"title": "Introduced Versions",
"type": "array"
},
"epss": {
"anyOf": [
{
"maximum": 100.0,
"minimum": 0.0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "EPSS exploitation probability (0-100)",
"title": "Epss"
},
"kev_status": {
"default": false,
"description": "Listed in the CISA KEV catalog",
"title": "Kev Status",
"type": "boolean"
},
"withdrawn": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Retraction timestamp, if withdrawn",
"title": "Withdrawn"
},
"published": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Publication timestamp",
"title": "Published"
},
"modified": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Last-modified timestamp",
"title": "Modified"
},
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Canonical OSV advisory URL",
"title": "Url"
},
"has_fix": {
"description": "Whether at least one fixed release is published for this package.\n\nA ``computed_field`` rather than a plain property so it survives\n``model_dump()``. As a bare property it was absent from the CLI's\n``--format json`` and from the exported JSON Schema, while the MCP\nnormalizer re-added it by hand \u2014 so the two surfaces disagreed and a\nscript written against the documented shape raised ``KeyError``.",
"readOnly": true,
"title": "Has Fix",
"type": "boolean"
}
},
"required": [
"id",
"has_fix"
],
"title": "PackageVulnerability",
"type": "object"
}