
KernelScan MCP server
Which MCP servers are KernelScan's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-10-20
- Registry nameio.kernelscan/kernelscanverified in the MCP registry
The registry name sits under kernelscan.io. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-10-20
- Tools11
- Server calls itselfKernelScan
- Server version1.26.0
- Protocol version2025-06-18
On 2026-10-20 the server answered initialize and tools/list without a sign-in. First answer in 169 ms.
- Whether its tools do the product's job has not been judged yet.
Once connected
- create_product, update_product change data without a sign-in: anyone with the address can call them.
- Parameters are untyped or undescribed in 9 of 11 tools: check arguments before calling.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP score72 of 100answers 100 · definitions 70 · context 92 · connects 100 · lowered by the warning signs below
- Answered100% of days16 of 16 daily checks
- Median first answer512 ms
- Space in an agent's context≈ 4,062 tokensthe definitions of all its tools (11), which an agent carries on every turn
- Tool definitionsC · 70 of 100
- Typed results1 of 11 toolsdeclared outputSchema: results come typed, read once
- Parameters without a description: in 9 of 11
- Not saying whether it only reads or can destroy: 11 of 11
What an agent can do with it
- not sure · Upload a kernel config to generate a VEX report
- not sure · Triage which kernel CVEs can reach a device
- cannot · Receive a daily digest of new CVEs affecting a product
Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?
Worth a look
- Tools that change data, on a server that answers without a sign-in: create_product, update_product
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
search_cvesSearch Linux kernel CVEs. No API key required: keyless callers get the free public tier — recent high-severity Linux kernel CVEs (capped at 25 results). Free *keyed* callers see only CVEs published in the last 60 days; basic+ keyed…
get_cveFetch a single Linux kernel CVE by ID (e.g. ``CVE-2024-12345``). No API key required: keyless callers get the public representation of a CVE, but only for CVEs in the public set (recent high-severity); any other id returns ``not found``…
list_productsList the calling user's products with denormalized analysis stats. Paid plans only (basic / pro / enterprise). Free callers get a clear upgrade message.
get_productFetch one product owned by the caller, including the CVE breakdown. Returns 404 (not 403) if the product belongs to another user, so product existence isn't leaked across accounts.
get_product_vexReturn the VEX MANIFEST for one of the caller's products — metadata, not the document. Multi-megabyte CycloneDX documents (up to 8,000+ vulnerability entries) are not safe model-context payloads, so this tool returns a bounded manifest…
list_product_vex_entriesPage through the VEX vulnerability entries of one of the caller's products. Returns COMPLETE CycloneDX vulnerability objects for one bounded page — never the root document, never all entries — plus ``returned``, ``total_matching``, and a…
create_productCreate a new product, run analysis, and return its initial stats. ``config_upload_id`` references a previously-staged .config that the caller POSTed to ``/api/configs/uploads`` over plain HTTP — the LLM does NOT emit the config text…
update_productUpdate a product owned by the caller. Re-runs analysis if the kernel_version, arch, or referenced .config changed. To change the .config, first POST the new file to ``/api/configs/uploads`` (see ``create_product`` for the curl recipe) and…
whoamiReturn the caller's identity, plan, and quota state. Works without an API key: keyless callers get a lightweight public-tier payload (no account) describing how to request access.
request_accessExplain how to get a KernelScan account (no API key needed). Self-registration is open — there is no invitation to wait for and no admin in the loop. The user signs up on kernelscan.io themselves (email + password, accepting the terms)…
submit_support_reportSend a support / dispute report to KernelScan staff. Use this when an automated CVE or factor assessment looks wrong, or when you need to hand human-needed context back to the team. The caller's API-key user is attached automatically (id…
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"kernelscan": {
"type": "http",
"url": "https://kernelscan.io/mcp/"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http kernelscan https://kernelscan.io/mcp/claude.ai, ChatGPT and other clients: add https://kernelscan.io/mcp/ as a custom connector in the settings.
OpenAPI spec
74 paths, read 2026-10-20. Open the spec ↗
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.
Before we count this visit
Analytics and ad measurement tell us which pages and which of our ads do their job: Google Analytics and Google Ads, the Meta pixel, Yandex Metrica, and one first-party id of our own. Nothing is stored until you answer, and declining changes nothing about the site.