Commit 74936f8
committed
feat(039): Security Scanner Plugin System
Implement pluggable security scanner system for analyzing quarantined
MCP servers before approval. Docker-based scanners run in isolated
containers, produce SARIF reports, and integrate with the existing
quarantine workflow.
## Changes
- Scanner plugin architecture: types, registry (4 bundled scanners),
Docker runner, SARIF 2.1.0 parser, parallel scan engine
- Storage: 4 new BBolt buckets (scanners, jobs, reports, baselines)
- Security service: install/configure scanners, scan/approve/reject
workflow, integrity verification, risk scoring
- REST API: 13 endpoints for scanner management, scan operations,
approval flow, and security overview
- CLI: mcpproxy security command group with 12 subcommands
- Web UI: Security dashboard with scanner marketplace, scan trigger,
findings viewer, approve/reject actions
- SSE events: scan lifecycle and integrity alert events
- Documentation: feature guide, spec, plan, autonomous summary
## Testing
- 500+ tests passing across scanner, storage, httpapi, config packages
- Race detector clean on all new code
- Frontend type-checks clean and builds successfully
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent d98458b commit 74936f8
56 files changed
Lines changed: 8270 additions & 47 deletions
File tree
- cmd/mcpproxy
- docs/features
- frontend/src
- components
- router
- services
- views
- internal
- config
- httpapi
- runtime
- security/scanner
- storage
- specs/039-security-scanner-plugins
- checklists
- web/frontend/dist
- assets
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
178 | 178 | | |
179 | 179 | | |
180 | 180 | | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
181 | 184 | | |
182 | 185 | | |
183 | 186 | | |
| |||
199 | 202 | | |
200 | 203 | | |
201 | 204 | | |
| 205 | + | |
202 | 206 | | |
203 | 207 | | |
204 | 208 | | |
| |||
0 commit comments