Vulners MCP
Registry code: 8bd823d522f808ca
MCP server for the Vulners.com API
from a public catalogue that lists it, not from the operator
- endpoint
- https://mcp.vulners.com/mcp
- protocol
- http-sse ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is Vulners MCP live?
- Yes — it answered the hub's last check (checked 1h ago). It answered 100% of checks over the last 30 days.
- Is Vulners MCP free to use?
- No — it asks for a key or a login before it will serve.
- What tools does Vulners MCP have?
- 7 tools: get_supported_os, search_cpe, query_autocomplete, bulletin_by_id, search_lucene, audit_software, audit_linux_packages.
- Is Vulners MCP safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 100%· all time 100%
last good check
of 7 tools
- unknown → live
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
get_supported_os auth-required 1h ago
List supported OS identifiers/versions for Linux package audit. Get available operating systems for vulnerability analysis.
{ "type": "object", "properties": {} }arguments 4 linessearch_cpe auth-required 1h ago
Find CPE strings by vendor+product (latest schema). Search for Common Platform Enumeration identifiers in the Vulners database.
{ "type": "object", "required": [ "vendor", "product" ], "properties": { "size": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": null, "description": "Maximum number of CPE results to return. If None, uses server default." }, "vendor": { "type": "string", "description": "Vendor name to search for (e.g., 'microsoft', 'google', 'apache', 'oracle'). Case-insensitive." }, "product": { "type": "string", "description": "Product name to search for (e.g., 'windows_10', 'chrome', 'http_server', 'java'). Case-insensitive." } } }arguments 29 linesquery_autocomplete auth-required 1h ago
Autocomplete helper for search inputs (vendors, products, CVEs, etc.). Get search suggestions from the Vulners database.
{ "type": "object", "required": [ "body" ], "properties": { "body": { "type": "object", "required": [ "query" ], "properties": { "query": { "type": "string", "description": "Partial search term, e.g. 'openssl', 'CVE-2024-', 'microsoft windows'" } }, "description": "Request body containing autocomplete parameters. Should include 'query' field with partial search term (e.g., 'openssl', 'CVE-2024-', 'microsoft windows')." } } }arguments 21 linesbulletin_by_id auth-required never probed
🚨 PRIMARY TOOL FOR KNOWN IDs 🚨 Fetch a bulletin by CVE or Vulners ID. Returns a COMPACT triage-card summary by default -- id, title, CVSS3, EPSS, CVE list, and a compact exploitation/AI signal -- NOT the full record. Pass fields=[...] to widen (e.g. add 'description', 'cvss', 'cvss2', 'affectedSoftware') or references=True for the linked-bulletin graph; requesting everything can be very large. Supports single ID or list of IDs. When list is provided, references are automatically set to False. NEVER use search_lucene for known IDs.
{ "type": "object", "required": [ "id" ], "properties": { "id": { "anyOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ], "description": "Single CVE ID, Vulners ID, or bulletin ID to fetch, or a list of IDs. Supports CVE identifiers (CVE-2024-21762), vendor-specific IDs (RHSA-2024:1234), or Vulners internal IDs. When a list is provided, references are always False regardless of the `references` argument." }, "fields": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ], "default": null, "description": "Override the default COMPACT field projection to widen the response. Pass ['*'] to request every field Vulners has for the bulletin (can be very large for popular CVEs). Useful individual fields to add: 'description' (full prose description, dropped from the default), 'cvss'/'cvss2' (legacy score variants; the default already includes 'cvss3'), 'affectedSoftware'/'cnaAffected' (affected systems), 'enchantments' (the FULL AI/exploitation blob, including the large cross-reference and social-mention indexes the default omits). If omitted, the lean default is used: id, title, type, href, published, modified, bulletinFamily, cvss3, epss, cvelist, enchantments.exploitation, enchantments.score, enchantments.vulnersScore, enchantments.tags, enchantments.short_description." }, "references": { "type": "boolean", "default": false, "description": "Include the full reference graph (linked advisories, patches, related bulletins) for a SINGLE-ID lookup. Defaults to False: the compact default projection already covers the essentials (CVSS3, EPSS, exploitation signal, CVE list). Set True only when you need the reference graph and can accept a much larger response -- for heavily-referenced CVEs this can inflate the payload from a few KiB to 100+ MiB. Ignored (always False) when `id` is a list." } } }arguments 42 linessearch_lucene auth-required never probed
🔍 DISCOVERY TOOL FOR UNKNOWN VULNERABILITIES 🔍 Full-text search in Vulners Knowledge Base using Lucene syntax. Use ONLY when you don't have specific IDs or version information. NEVER use for known CVE/bulletin IDs - use bulletin_by_id instead. NEVER use for specific software versions (e.g., 'Chrome 138.0.7204.184') - use audit_software instead. 🚨 CRITICAL: For vendor/product searches, ALWAYS use cnaAffected.vendor and cnaAffected.product fields - the affectedSoftware field does NOT exist.
{ "type": "object", "required": [ "query" ], "properties": { "size": { "type": "integer", "default": 20, "description": "Maximum number of results to return. Default is 20, hard-capped at 100 regardless of caller." }, "skip": { "type": "integer", "default": 0, "description": "Number of results to skip for pagination. Default is 0." }, "query": { "type": "string", "description": "Lucene query string for searching vulnerabilities. Supports Boolean operators (AND, OR, NOT), field-specific queries, range searches, and wildcard matching. NEVER use for specific software versions - use audit_software instead. For vendor/product searches use cnaAffected.vendor and cnaAffected.product (NOT affectedSoftware which does not exist)." }, "fields": { "anyOf": [ { "type": "array", "items": { "type": "string" } }, { "type": "null" } ], "default": null, "description": "Override the default curated per-hit field projection. Pass ['*'] for every field per hit (large responses). If omitted, a curated default is used: id, title, type, cvss, cvss3, epss, published, href, cvelist." } } }arguments 37 linesaudit_software auth-required never probed
🔍 VERSION-SPECIFIC SOFTWARE AUDIT 🔍 Audit specific software versions for known vulnerabilities. Use this when you have exact software version information (e.g., Chrome 138.0.7204.184). NEVER use search_lucene for version-specific software audits.
{ "type": "object", "required": [ "body" ], "properties": { "body": { "type": "object", "required": [ "software" ], "properties": { "match": { "anyOf": [ { "enum": [ "partial", "full" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "\"partial\" (API default) or \"full\"; use \"full\" with target_sw for OS-specific audits" }, "software": { "type": "array", "items": { "anyOf": [ { "type": "object", "required": [ "vendor", "product", "version" ], "properties": { "part": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "\"a\" application, \"o\" operating system, \"h\" hardware" }, "other": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Other; use \"*\" for any" }, "update": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Update; use \"*\" for any" }, "vendor": { "type": "string", "description": "Vendor, e.g. openssl, google, microsoft" }, "edition": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Edition; use \"*\" for any" }, "product": { "type": "string", "description": "Product, e.g. openssl, chrome, edge" }, "version": { "type": "string", "description": "Exact version, e.g. 1.1.1u or 138.0.7204.184" }, "language": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Language; use \"*\" for any" }, "target_hw": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Target hardware; use \"*\" for any" }, "target_sw": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Target software, e.g. \"windows\" or \"macos\"; use \"*\" for any" }, "sw_edition": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Software edition; use \"*\" for any" } }, "description": "CPE 2.3 well-formed name, one field per WFN attribute." }, { "type": "string" } ] }, "description": "Software to audit: structured CPE objects (preferred) or CPE 2.3 strings" } }, "description": "Request body containing software list and audit parameters. Should include 'software' array with structured CPE objects (NOT CPE strings) and optional 'match' parameter ('partial' or 'full'). Each CPE object has the CPE 2.3 fields: part, vendor, product, version, update, edition, language, sw_edition, target_sw, target_hw, other; vendor, product and version are required. USE THIS for specific software versions like 'Chrome 138.0.7204.184'." } } }arguments 163 linesaudit_linux_packages auth-required never probed
Linux package audit (RPM/DEB) for a given distro + version. Analyze Linux package vulnerabilities against the Vulners database.
{ "type": "object", "required": [ "os", "version", "package" ], "properties": { "os": { "type": "string", "description": "Linux distribution identifier (e.g., ubuntu, debian, centos, rhel, fedora). Use get_supported_os() to see available options." }, "package": { "type": "array", "items": { "type": "string" }, "description": "Installed packages, each formatted EXACTLY as the target OS's own package manager lists them -- i.e. one line of the output produced by the command get_supported_os() returns for this OS. DEB-based distros (ubuntu, debian, astra, linuxmint, ...): space-separated 'name version arch', e.g. 'openssl 3.0.2-0ubuntu1.6 amd64'. RPM-based distros (rhel, centos, oracle, almalinux, rocky, fedora, amazon, suse, ...): 'name-version-release.arch', e.g. 'openssl-1.0.2k-25.el7_9.x86_64'. The bare hyphenated 'name-version' short form is NOT accepted -- the API rejects it as 'Invalid package'." }, "version": { "type": "string", "description": "Distribution version/release (e.g., 22.04, 12, 8, 40). Must match a supported version for the specified OS." }, "include_candidates": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": null, "description": "Whether to include potential matches in results. If None, uses default behavior (typically false)." } } }arguments 37 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's id8bd823d522f808ca.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/8bd823d522f808ca/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/8bd823d522f808ca?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.