Burp Suite for AI Agent
Two-way Burp Suite MCP bridge enabling AI agents to capture traffic, analyze endpoints, queue scans, and send findings back to Burp.
README
<p align="center"> <img src="https://readme-typing-svg.herokuapp.com?font=Fira+Code&weight=600&size=28&duration=3000&pause=500&color=FF6633¢er=true&vCenter=true&width=500&lines=Burp+Suite+for+AI+Agent;MCP+Bridge+%2B+Jython+Plugin" alt="Typing SVG" /> </p>
<p align="center"> <b>Two-way Burp Suite MCP bridge ā AI agents capture traffic, analyze endpoints, queue scans, and send findings back to Burp.</b> </p>
<p align="center"> <img src="https://img.shields.io/badge/Node.js_18%2B-339933?style=flat&logo=nodedotjs&logoColor=white" /> <img src="https://img.shields.io/badge/Burp_Jython_2.7-FF6633?style=flat&logo=burpsuite&logoColor=white" /> <img src="https://img.shields.io/github/license/whoismemas/burpsuite-for-ai-agent" /> </p>
š 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
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
- Burp Suite ā Extensions ā Installed ā Add
- Extension type:
Python(requires Jython 2.7 standalone JAR) - 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 requestsburp_endpointsā enumerate endpointsburp_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)
<p align="center"> <i>Built for AI-assisted penetration testing.</i> <br /> <samp>#burpsuite #mcp #pentest #bugbounty</samp> </p>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.