{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_wbuv24j27v67","handle":"kernelscan","url":"https://wellknown.network/agents/kernelscan","links":{"self":"https://wellknown.network/agents/kernelscan/record.json","html":"https://wellknown.network/agents/kernelscan","markdown":"https://wellknown.network/agents/kernelscan/record.md","api":"https://wellknown.network/api/v1/agents/kernelscan","status":"https://wellknown.network/api/v1/agents/kernelscan/status","claim":"https://wellknown.network/agents/kernelscan/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/kernelscan/claim.json","badge":"https://wellknown.network/agents/kernelscan/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:kernelscan.io:server:kernelscan","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"KernelScan","summary":"Linux kernel CVE analyzer: upload a .config, get a CycloneDX VEX report of affecting CVEs.","description":"Linux kernel CVE analyzer: upload a .config, get a CycloneDX VEX report of affecting CVEs.","publisher":{"name":"io.kernelscan","url":null},"homepage":"https://kernelscan.io","repository":null,"version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://kernelscan.io/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-06-20T07:43:00.058874Z","publishedAt":"2026-06-20T07:43:00.058874Z","registryName":"io.kernelscan/kernelscan"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"analytics.reporting","name":"Reporting & Dashboards","confidence":0.885,"provenance":"derived"},{"slug":"code.security-review","name":"Security Review","confidence":0.807,"provenance":"derived"},{"slug":"dev.docs-lookup","name":"Documentation Lookup","confidence":0.54,"provenance":"derived"},{"slug":"commerce.ecommerce","name":"E-commerce Operations","confidence":0.525,"provenance":"derived"},{"slug":"security.identity","name":"Identity & Access","confidence":0.525,"provenance":"derived"}],"categories":["analytics","code","commerce","dev","security"]},"observed":{"status":"live","statusReason":"Responded 5h ago.","lastOkAt":"2026-09-07T21:23:12.533Z","lastProbedAt":"2026-09-07T21:23:12.533Z","statusComputedAt":"2026-09-07T21:40:45.113Z","reliability30d":{"probes":3,"successRate":1,"p50Ms":40},"latestObservations":[{"at":"2026-09-07T21:23:12.533Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":45,"error":null,"detail":{"tools":[{"name":"search_cves","description":"Search Linux kernel CVEs.\n\n        No API key required: keyless callers get the free public tier — recent\n        high-severity Linux kernel CVEs (capped at 25 "},{"name":"get_cve","description":"Fetch a single Linux kernel CVE by ID (e.g. ``CVE-2024-12345``).\n\n        No API key required: keyless callers get the public representation of a\n        CVE, b"},{"name":"list_products","description":"List the calling user's products with denormalized analysis stats.\n\n        Paid plans only (basic / pro / enterprise). Free callers get a clear\n        upgrade"},{"name":"get_product","description":"Fetch one product owned by the caller, including the CVE breakdown.\n\n        Returns 404 (not 403) if the product belongs to another user, so\n        product ex"},{"name":"get_product_vex","description":"Return the CycloneDX 1.6 VEX document for one of the caller's products.\n\n        Reads from the 24h ProductVexCache; if the cache is empty/expired the\n        n"},{"name":"create_product","description":"Create a new product, run analysis, and return its initial stats.\n\n        ``config_upload_id`` references a previously-staged .config that the\n        caller P"},{"name":"update_product","description":"Update a product owned by the caller. Re-runs analysis if the\n        kernel_version, arch, or referenced .config changed.\n\n        To change the .config, first"},{"name":"whoami","description":"Return the caller's identity, plan, and quota state.\n\n        Works without an API key: keyless callers get a lightweight public-tier\n        payload (no accoun"},{"name":"request_access","description":"Request an invitation to KernelScan from inside MCP (no API key needed).\n\n        Use this when a keyless caller wants the full service. It records an\n        i"},{"name":"submit_support_report","description":"Send a support / dispute report to KernelScan staff.\n\n        Use this when an automated CVE or factor assessment looks wrong, or\n        when you need to hand "}],"toolCount":10,"serverName":"KernelScan","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"1.26.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T14:23:55.295Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":40,"error":null,"detail":{"tools":[{"name":"search_cves","description":"Search Linux kernel CVEs.\n\n        No API key required: keyless callers get the free public tier — recent\n        high-severity Linux kernel CVEs (capped at 25 "},{"name":"get_cve","description":"Fetch a single Linux kernel CVE by ID (e.g. ``CVE-2024-12345``).\n\n        No API key required: keyless callers get the public representation of a\n        CVE, b"},{"name":"list_products","description":"List the calling user's products with denormalized analysis stats.\n\n        Paid plans only (basic / pro / enterprise). Free callers get a clear\n        upgrade"},{"name":"get_product","description":"Fetch one product owned by the caller, including the CVE breakdown.\n\n        Returns 404 (not 403) if the product belongs to another user, so\n        product ex"},{"name":"get_product_vex","description":"Return the CycloneDX 1.6 VEX document for one of the caller's products.\n\n        Reads from the 24h ProductVexCache; if the cache is empty/expired the\n        n"},{"name":"create_product","description":"Create a new product, run analysis, and return its initial stats.\n\n        ``config_upload_id`` references a previously-staged .config that the\n        caller P"},{"name":"update_product","description":"Update a product owned by the caller. Re-runs analysis if the\n        kernel_version, arch, or referenced .config changed.\n\n        To change the .config, first"},{"name":"whoami","description":"Return the caller's identity, plan, and quota state.\n\n        Works without an API key: keyless callers get a lightweight public-tier\n        payload (no accoun"},{"name":"request_access","description":"Request an invitation to KernelScan from inside MCP (no API key needed).\n\n        Use this when a keyless caller wants the full service. It records an\n        i"},{"name":"submit_support_report","description":"Send a support / dispute report to KernelScan staff.\n\n        Use this when an automated CVE or factor assessment looks wrong, or\n        when you need to hand "}],"toolCount":10,"serverName":"KernelScan","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"1.26.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T07:31:59.907Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":38,"error":null,"detail":{"tools":[{"name":"search_cves","description":"Search Linux kernel CVEs.\n\n        No API key required: keyless callers get the free public tier — recent\n        high-severity Linux kernel CVEs (capped at 25 "},{"name":"get_cve","description":"Fetch a single Linux kernel CVE by ID (e.g. ``CVE-2024-12345``).\n\n        No API key required: keyless callers get the public representation of a\n        CVE, b"},{"name":"list_products","description":"List the calling user's products with denormalized analysis stats.\n\n        Paid plans only (basic / pro / enterprise). Free callers get a clear\n        upgrade"},{"name":"get_product","description":"Fetch one product owned by the caller, including the CVE breakdown.\n\n        Returns 404 (not 403) if the product belongs to another user, so\n        product ex"},{"name":"get_product_vex","description":"Return the CycloneDX 1.6 VEX document for one of the caller's products.\n\n        Reads from the 24h ProductVexCache; if the cache is empty/expired the\n        n"},{"name":"create_product","description":"Create a new product, run analysis, and return its initial stats.\n\n        ``config_upload_id`` references a previously-staged .config that the\n        caller P"},{"name":"update_product","description":"Update a product owned by the caller. Re-runs analysis if the\n        kernel_version, arch, or referenced .config changed.\n\n        To change the .config, first"},{"name":"whoami","description":"Return the caller's identity, plan, and quota state.\n\n        Works without an API key: keyless callers get a lightweight public-tier\n        payload (no accoun"},{"name":"request_access","description":"Request an invitation to KernelScan from inside MCP (no API key needed).\n\n        Use this when a keyless caller wants the full service. It records an\n        i"},{"name":"submit_support_report","description":"Send a support / dispute report to KernelScan staff.\n\n        Use this when an automated CVE or factor assessment looks wrong, or\n        when you need to hand "}],"toolCount":10,"serverName":"KernelScan","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"1.26.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"search_cves","description":"Search Linux kernel CVEs.\n\n        No API key required: keyless callers get the free public tier — recent\n        high-severity Linux kernel CVEs (capped at 25 "},{"name":"get_cve","description":"Fetch a single Linux kernel CVE by ID (e.g. ``CVE-2024-12345``).\n\n        No API key required: keyless callers get the public representation of a\n        CVE, b"},{"name":"list_products","description":"List the calling user's products with denormalized analysis stats.\n\n        Paid plans only (basic / pro / enterprise). Free callers get a clear\n        upgrade"},{"name":"get_product","description":"Fetch one product owned by the caller, including the CVE breakdown.\n\n        Returns 404 (not 403) if the product belongs to another user, so\n        product ex"},{"name":"get_product_vex","description":"Return the CycloneDX 1.6 VEX document for one of the caller's products.\n\n        Reads from the 24h ProductVexCache; if the cache is empty/expired the\n        n"},{"name":"create_product","description":"Create a new product, run analysis, and return its initial stats.\n\n        ``config_upload_id`` references a previously-staged .config that the\n        caller P"},{"name":"update_product","description":"Update a product owned by the caller. Re-runs analysis if the\n        kernel_version, arch, or referenced .config changed.\n\n        To change the .config, first"},{"name":"whoami","description":"Return the caller's identity, plan, and quota state.\n\n        Works without an API key: keyless callers get a lightweight public-tier\n        payload (no accoun"},{"name":"request_access","description":"Request an invitation to KernelScan from inside MCP (no API key needed).\n\n        Use this when a keyless caller wants the full service. It records an\n        i"},{"name":"submit_support_report","description":"Send a support / dispute report to KernelScan staff.\n\n        Use this when an automated CVE or factor assessment looks wrong, or\n        when you need to hand "}],"package":null},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.kernelscan/kernelscan","url":"https://registry.modelcontextprotocol.io/v0/servers/io.kernelscan%2Fkernelscan","firstSeenAt":"2026-09-07T07:22:28.821Z","fetchedAt":"2026-09-07T07:22:28.821Z","normalizedAt":"2026-09-07T07:22:28.821Z"}]},"firstSeenAt":"2026-09-07T07:22:28.821Z","updatedAt":"2026-09-07T21:41:05.180Z"}