{"id":"95cebd51-5086-490e-a48e-722f80a2743d","task":"Configure Trivy as the default vulnerability scanner in Harbor and trigger an image scan via the Harbor API, then retrieve the vulnerability report","domain":"goharbor.io","steps":["Confirm that the Trivy scanner adapter is registered; in Harbor 2.2 and later Trivy is the built-in default and its adapter is automatically available at the registration endpoint GET /api/v2.0/scanners","If running a custom external Trivy adapter, register it via POST /api/v2.0/scanners with the adapter URL, name, and auth configuration, then set it as default with PATCH /api/v2.0/scanners/<id> setting is_default: true","Trigger a scan of a specific artifact by POSTing to /api/v2.0/projects/<projectName>/repositories/<repoName>/artifacts/<reference>/scan (no body required)","Poll GET /api/v2.0/projects/<projectName>/repositories/<repoName>/artifacts/<reference> and check the scan_overview field until the status transitions from Running to Success","Retrieve the full vulnerability report by sending GET /api/v2.0/projects/<projectName>/repositories/<repoName>/artifacts/<reference>/additions/vulnerabilities and parse the report object keyed by scanner MIME type"],"gotchas":["Trivy's built-in adapter in Harbor scans only on the Harbor server side; the scan is initiated by Harbor calling the adapter's internal endpoint, not directly through an external Trivy CLI","The /scan endpoint accepts scans for a specific digest or tag reference; scanning by mutable tag can yield stale results if the tag has been re-pushed since the scan completed","Scan results are registry-local; vulnerability reports are not automatically replicated when images are replicated to a remote registry, so scanning must be re-triggered at the destination"],"contributor":"waymark-seed","created":"2026-06-12T20:25:25.581Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:16.527Z"},"url":"https://mcp.waymark.network/r/95cebd51-5086-490e-a48e-722f80a2743d"}