Skip to main content
Glama
Burp Suite for AI Agent

Burp Suite for AI Agent

by whoismemas

šŸ“ Structure

burpsuite-for-ai-agent/
ā”œā”€ā”€ src/
│   └── index.js          ← MCP server (HTTP bridge + 11 MCP tools)
ā”œā”€ā”€ plugin/
│   └── burpAI.py         ← Jython 2.7 Burp plugin (context menu, auto-forward, outbound polling)
ā”œā”€ā”€ package.json          ← Node.js manifest (dependencies: @modelcontextprotocol/sdk, zod)
ā”œā”€ā”€ .gitignore
└── README.md

Related MCP server: novelty

Architecture

Burp Suite (Linux / Windows)
  └─ plugin/burpAI.py (Jython plugin)
       │  POST /ingest (127.0.0.1:9999)
       │  GET /burp/outbound (poll every 2s)
       ā–¼
src/index.js  ← MCP server (HTTP bridge + 11 MCP tools)
       │
       ā–¼
AI Agent ←→ MCP tools

Linux: Burp + server + agent — all on one machine. Windows + WSL: Burp on Windows, server + agent in WSL over localhost.


Quick Install (one command)

bash install.sh

This runs npm install, prints Burp plugin instructions, and generates .mcp.json for AI agent auto-registration.


Quick Start

1. MCP server

node src/index.js

2. Load Burp plugin

  1. Burp Suite → Extensions → Installed → Add

  2. Extension type: Python (requires Jython 2.7 standalone JAR)

  3. File: plugin/burpAI.py

3. Verify

In Burp's burpAI tab, click Check Status. Connected:

{ "ok": true, "requests": 0, "endpoints": 0 }

MCP Tools (16 tools)

Tool

Description

burp_status

Bridge connection status + store statistics

burp_requests

List captured HTTP requests (filter by url/method)

burp_request_detail

Full request/response (headers, body)

burp_endpoints

Unique endpoints with parameter names, hit counts

burp_tasks

Scan/plan/scope tasks queued from Burp context menu

burp_issues

Security findings queued for Burp import

burp_import_issue

Submit a finding (title, url, severity, detail)

burp_snapshot

Latest session snapshot (cookies, storage)

burp_send_to_burp

Queue action: send_to_repeater, add_scan_issue, console_log

burp_replay

Modify captured request → send to Burp Repeater

burp_outbound_status

Pending outbound actions

burp_scan_url

Run nuclei scan against a single URL

burp_scan_bulk

Run nuclei scan against all captured endpoints

burp_scan_results

List/display nuclei scan results

burp_scan_import_all

Import nuclei findings as Burp issues

burp_clear

Clear all captured data


Workflow

Capture → Analyze

Right-click a request in Burp (Proxy/Repeater) → burpAI: send request(s)

Agent:

  • burp_requests — list captured requests

  • burp_endpoints — enumerate endpoints

  • burp_request_detail — full request/response

Queue scan → Execute

Right-click → burpAI: send + queue scan
Agent picks up via burp_tasks.

Finding → Burp Scanner

Agent calls burp_import_issue → Burp tab → Import Issues

Agent → Burp Repeater

Agent calls burp_send_to_burp with type send_to_repeater → Burp opens Repeater tab.


Agent-Driven Scanning

This is the core custom scanner flow: Burp captures → agent thinks → agent modifies → Burp executes.

Burp (Proxy → History)
  │ right-click → burpAI: send request(s)
  ā–¼
MCP server ←── captures request
  │
  ā–¼
Agent reads via burp_requests / burp_request_detail
  │
  │ Agent thinks: "endpoint /api/login takes username, try SQLi"
  │
  ā–¼
Agent calls burp_replay({
  request_id: "burp:burp-12345",
  set_body: '{"username":"admin\\' OR 1=1--","password":"x"}'
})
  │
  ā–¼
MCP server → Burp Repeater → Burp executes HTTP call
  │
  ā–¼ (auto-forward enabled)
Response captured back → Agent reads & analyzes
  │
  ā–¼
burp_import_issue → if vulnerable

Key tool: burp_replay takes a captured request ID, applies modifications (method, path, headers, body), and sends it to Burp Repeater. No need to manually craft raw bytes — the agent just specifies what to change.

Requirements:

  • Enable Auto-send Repeater responses in Burp plugin settings

  • This ensures the agent sees every Repeater response automatically


External Scanning (nuclei)

Optionally run nuclei scans directly from the bridge:

Tool

Use case

burp_scan_url

Scan one URL with nuclei templates

burp_scan_bulk

Scan all captured endpoints at once

burp_scan_results

Review scan history

burp_scan_import_all

Import nuclei findings as Burp issues

Nuclei must be installed on the same machine. Findings with High/Critical severity are auto-imported as Burp issues.


Auto-Forwarding

Feature

Description

Auto-send Proxy responses

All Proxy traffic sent to MCP server

Auto-send Repeater responses

Repeater traffic automatically forwarded

Forward Burp Scanner issues

Scanner findings pushed to agent

Auto import issues

Pull agent findings on context menu


Options

node src/index.js --port 9999                 # Custom port (default: 9999)
node src/index.js --db /path/to/data.json     # Persistence file (default: burpai-data.json)
node src/index.js --port 9001 --db custom.json

Data persists across restarts when --db is set (or by default). The server auto-saves on every mutation and loads data on startup.

Burp plugin URL configurable from the burpAI settings tab in Burp.


Requirements

  • Node.js 18+

  • Burp Suite (Community or Professional)

  • Jython 2.7 standalone JAR (configured in Burp Extensions → Environment)


Available Tools

11 tools
burp_clearA

Clear all captured requests, endpoints, tasks, and issues from the bridge store.

Inputs: no named parameters.

burp_endpointsA

List unique endpoints (METHOD + path) observed from Burp traffic, with query/body parameter names and hit counts. Helps identify attack surface.

Inputs: method, url_contains.

burp_import_issueB

Submit a confirmed finding as a Burp-importable issue. The issue will appear in the bridge and can be pulled into Burp via the burpAI Burp plugin.

Inputs: url (required), title (required), detail (required), method, +5 more.

burp_issuesA

List security findings/issues queued for Burp import. These are confirmed findings that can be imported as Burp Scanner issues.

Inputs: no named parameters.

burp_outbound_statusA

List pending outbound actions queued for the Burp plugin to execute. Actions remain here until the Burp plugin polls and drains them.

Inputs: no named parameters.

burp_request_detailA

Fetch full details for one captured request: headers, request body, and response body (when available). Pass the id from burp_requests.

Inputs: id (required), body_max_chars.

burp_requestsA

List recent HTTP requests captured from Burp (most-recent first). Returns id, method, url, and status for each captured request.

Inputs: limit, method, url_contains.

burp_send_to_burpA

Queue an action for execution in Burp Suite. The next time the Burp plugin polls, it will execute the action. Supports: send_to_repeater (open Repeater tab with a request), add_scan_issue (add scan issue to Burp), console_log (write to Burp output tab).

Inputs: type (required), url, host, port, +7 more.

burp_snapshotA

Return the most recent session snapshot (cookies, localStorage, sessionStorage). Useful for constructing authenticated requests.

Inputs: url_contains.

burp_statusA

Show Burp bridge connection status and store statistics (requests, tasks, issues captured). Call first to confirm bridge is running.

Inputs: no named parameters.

burp_tasksA

List scan / plan / scope tasks queued from the Burp extension. Use these to decide what to analyze next.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 11 tools

    Disambiguation5/5

    Each tool targets a distinct aspect of the Burp Suite integration: clearing, status, requests (list/detail), endpoints, tasks, issues (list/import), session snapshot, and outbound actions (send/status). Despite some related operations, the descriptions clearly differentiate them, leaving no ambiguity.

    Naming Consistency5/5

    All tools follow a consistent 'burp_' prefix with snake_case names. Verbs and nouns are used predictably (e.g., burp_clear, burp_requests, burp_import_issue). There is no mixing of conventions, ensuring easy pattern recognition.

    Tool Count5/5

    With 11 tools, the set is well-scoped for a Burp Suite bridge. It covers essential operations without being bloated or sparse. Each tool serves a clear purpose, and the count aligns with the expected complexity of security testing workflows.

    Completeness4/5

    The tool set covers the core workflow: connection status, request capture, endpoint discovery, task and issue management, import, session retrieval, and outbound actions. Minor gaps exist, such as the lack of detailed views for individual tasks or issues, but these do not critically hinder the primary use case.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      An MCP server that lets AI assistants analyze Burp Suite XML exports offline, without running Burp. Provides 19 tools for mapping endpoints, finding secrets, detecting vulnerabilities, analyzing headers, exporting curl commands, and generating pentest reports.
      -
    • A
      license
      A
      quality
      B
      maintenance
      An MCP security toolkit that integrates Burp-style HTTP proxying, AI-driven vulnerability hunting, source code auditing, and reporting into AI coding agents, enabling authorized security testing of web applications and source code.
      24
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables authorized bug bounty automation via a scope-enforced MCP bridge, supporting web, secrets, mobile, and LLM red-team scanning, with reporting and advisory.
      MIT
    • A
      license
      Not graded
      quality
      F
      maintenance
      Exposes Burp Suite operations through a local authenticated HTTP server and an MCP stdio bridge, enabling tools like burp_proxy_history via MCP.
      0
      4
      MIT