get_scan_status
Monitor the progress of active scans by retrieving real-time status updates using the scan ID, ensuring efficient scan management for Burpsuite projects.
Instructions
Check the status of a running scan
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| scan_id | Yes | ID of the scan to check |
Implementation Reference
- src/index.ts:532-555 (handler)The handler function that executes the get_scan_status tool logic, retrieving the scan status from the mockScans object and returning a JSON-formatted response with status details.case "get_scan_status": { const scanId = String(request.params.arguments?.scan_id); if (!scanId || !mockScans[scanId]) { throw new McpError(ErrorCode.InvalidRequest, `Scan ${scanId} not found`); } const scan = mockScans[scanId]; return { content: [{ type: "text", text: JSON.stringify({ scan_id: scanId, target: scan.target, status: scan.status, progress: scan.progress, start_time: scan.startTime, end_time: scan.endTime, issue_count: scan.issues.length }, null, 2) }] }; }
- src/index.ts:402-414 (schema)The input schema and description for the get_scan_status tool, defining the required scan_id parameter.name: "get_scan_status", description: "Check the status of a running scan", inputSchema: { type: "object", properties: { scan_id: { type: "string", description: "ID of the scan to check" } }, required: ["scan_id"] } },
- src/index.ts:379-482 (registration)The registration of available tools including get_scan_status in the ListToolsRequestSchema handler.server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: [ { name: "start_scan", description: "Start a new vulnerability scan on a target URL", inputSchema: { type: "object", properties: { target: { type: "string", description: "Target URL to scan (e.g., https://example.com)" }, scan_type: { type: "string", enum: ["passive", "active", "full"], description: "Type of scan to perform" } }, required: ["target"] } }, { name: "get_scan_status", description: "Check the status of a running scan", inputSchema: { type: "object", properties: { scan_id: { type: "string", description: "ID of the scan to check" } }, required: ["scan_id"] } }, { name: "get_scan_issues", description: "Get vulnerability issues found in a scan", inputSchema: { type: "object", properties: { scan_id: { type: "string", description: "ID of the scan" }, severity: { type: "string", enum: ["high", "medium", "low", "info", "all"], description: "Filter issues by severity" } }, required: ["scan_id"] } }, { name: "get_proxy_history", description: "Get HTTP/HTTPS traffic captured by Burp Proxy", inputSchema: { type: "object", properties: { host: { type: "string", description: "Filter by host (optional)" }, method: { type: "string", description: "Filter by HTTP method (optional)" }, status_code: { type: "number", description: "Filter by HTTP status code (optional)" }, limit: { type: "number", description: "Maximum number of items to return (default: 10)" } } } }, { name: "get_site_map", description: "Get the site structure discovered during scanning and browsing", inputSchema: { type: "object", properties: { host: { type: "string", description: "Filter by host (optional)" }, with_parameters: { type: "boolean", description: "Only show URLs with parameters (optional)" }, limit: { type: "number", description: "Maximum number of items to return (default: 20)" } } } } ] }; });