Skip to main content
Glama

start_scan

Initiate vulnerability scans on target URLs using specified scan types (passive, active, full) via Burpsuite MCP Server to identify security issues.

Instructions

Start a new vulnerability scan on a target URL

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
scan_typeNoType of scan to perform
targetYesTarget URL to scan (e.g., https://example.com)

Implementation Reference

  • The handler logic for the 'start_scan' tool. It extracts target URL and scan_type from arguments, validates target, generates a unique scan ID, initializes a mock Scan object, stores it in mockScans, sets a 5-second timeout to simulate scan completion by generating mock issues based on scan_type, and returns the scan_id and initial status.
    case "start_scan": { const target = String(request.params.arguments?.target); const scanType = String(request.params.arguments?.scan_type || "passive"); if (!target) { throw new McpError(ErrorCode.InvalidParams, "Target URL is required"); } // Create a new scan const scanId = `scan-${Date.now()}`; const scan: Scan = { id: scanId, target, status: "running", startTime: new Date().toISOString(), progress: 0, issues: [] }; mockScans[scanId] = scan; // Simulate scan completion after a delay (in a real implementation, this would be async) setTimeout(() => { const issueCount = scanType === "passive" ? 3 : scanType === "active" ? 8 : 15; mockScans[scanId].issues = generateMockIssues(new URL(target).hostname, issueCount); mockScans[scanId].status = "completed"; mockScans[scanId].endTime = new Date().toISOString(); mockScans[scanId].progress = 100; }, 5000); return { content: [{ type: "text", text: JSON.stringify({ scan_id: scanId, message: `Started ${scanType} scan on ${target}`, status: "running" }, null, 2) }] }; }
  • Input schema definition for the 'start_scan' tool, specifying a required 'target' string and optional 'scan_type' enum.
    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"] }
  • src/index.ts:382-400 (registration)
    The tool registration entry in the ListTools handler, including name, description, and input schema for 'start_scan'.
    { 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"] } },

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Cyreslab-AI/burpsuite-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server