{"openapi":"3.1.0","info":{"title":"VulnFeed by Novadyne","version":"1.0.0","description":"Dependency vulnerability scanner with EPSS scoring. MCP server + x402 micropayments.","x-guidance":"Scan packages for known vulnerabilities. POST /vulnscan/query with a list of packages. GET /vulnscan/cve/{id} for single CVE lookup. POST /vulnscan/monitor to register continuous monitoring. GET /vulnscan/alerts?project={id} to check for new vulns."},"servers":[{"url":"https://vulnfeed-api.novadyne.ai"}],"security":[{"x402":[]}],"components":{"securitySchemes":{"x402":{"type":"apiKey","in":"header","name":"PAYMENT-SIGNATURE","description":"x402 payment — Base64-encoded JSON with signed USDC transfer"}},"schemas":{"PackageInput":{"type":"object","properties":{"name":{"type":"string","description":"Package name (e.g. lodash)"},"version":{"type":"string","description":"Package version (e.g. 4.17.20)"},"ecosystem":{"type":"string","enum":["npm","PyPI","Go","crates.io","RubyGems","Packagist"],"description":"Package ecosystem"}},"required":["name","version","ecosystem"]},"ScanRequest":{"type":"object","properties":{"packages":{"type":"array","items":{"$ref":"#/components/schemas/PackageInput"},"description":"Packages to scan"}},"required":["packages"]},"MonitorRequest":{"type":"object","properties":{"project_name":{"type":"string","description":"Project name"},"packages":{"type":"array","items":{"$ref":"#/components/schemas/PackageInput"},"description":"Packages to monitor"}},"required":["project_name","packages"]}}},"paths":{"/vulnscan/query":{"post":{"summary":"Scan packages for vulnerabilities","x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.01"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScanRequest"}}}},"responses":{"200":{"description":"Scan results","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"scanned":{"type":"integer"},"affected_packages":{"type":"integer"},"total_vulnerabilities":{"type":"integer"},"results":{"type":"array","description":"Per-package vulnerability results with EPSS scores"}}}}}},"402":{"description":"Payment Required"}}}},"/vulnscan/cve/{cve_id}":{"get":{"summary":"Look up a specific CVE","x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.002"}},"parameters":[{"name":"cve_id","in":"path","required":true,"schema":{"type":"string"},"description":"CVE or vulnerability ID (e.g. CVE-2024-1234)"}],"responses":{"200":{"description":"CVE details","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"id":{"type":"string"},"cve":{"type":"string"},"summary":{"type":"string"},"severity":{"type":"array"},"epss":{"type":"object"}}}}}},"402":{"description":"Payment Required"}}}},"/vulnscan/monitor":{"post":{"summary":"Register a project for vulnerability monitoring","x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.05"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MonitorRequest"}}}},"responses":{"200":{"description":"Monitoring registered","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"project_id":{"type":"string"},"name":{"type":"string"}}}}}},"402":{"description":"Payment Required"}}}},"/vulnscan/alerts":{"get":{"summary":"Check alerts for monitored projects","x-payment-info":{"protocols":[{"x402":{}}],"price":{"mode":"fixed","currency":"USD","amount":"0.005"}},"parameters":[{"name":"project","in":"query","required":true,"schema":{"type":"string"},"description":"Project ID to check alerts for"}],"responses":{"200":{"description":"Alert results","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"},"new_vulns":{"type":"array"},"resolved_vulns":{"type":"array"}}}}}},"402":{"description":"Payment Required"}}}}},"x-agentcash-provenance":{"ownershipProofs":["0x25d764e4dee1d2bc96ee3df6c940a0310a5b994b8e9f5d8d2fdc871c169face1757923a6cff8b913f25650ab69fe184cd5f2480a00e59494c06b7860a89e9cbb1c"]}}