Professional

MCP Server Scanner

This extension targets Model Context Protocol (MCP) servers, automating discovery of their tools, resources, resource templates, and prompts, then constructing JSON-RPC 2.0 requests with fuzzable insertion points for active and passive scanning.

Features

  • Supports both Streamable HTTP and SSE transports, including a local proxy that allows the scanner to consume text/event-stream responses.
  • Handles multiple authentication schemes: none, Bearer token, custom header, and OAuth 2.1 with PKCE and dynamic client registration via RFC 8414 and RFC 9728 discovery.
  • Runs active checks covering unauthenticated tool discovery, auth bypass, hidden method enumeration, resource path traversal, OAuth token validation, DNS rebinding, OAuth metadata SSRF, DCR misconfiguration, and consent-page reflected XSS.
  • Performs tool-argument fuzzing for path traversal and out-of-band RCE detection backed by Burp Collaborator.
  • Scans discovered MCP metadata for leaked secrets including AWS keys, GitHub tokens, Slack tokens, Stripe keys, GCP credentials, JWTs, and SSH/PGP private keys, as well as unsafe icon URLs.
  • Persists tool toggles and OAuth credentials in the project file across sessions.

Usage

  1. Open the MCP Server Scanner tab that appears after loading the extension.
  2. Enter the MCP server endpoint URL in the configuration panel.
  3. Select the appropriate authentication method (none, Bearer token, custom header, or OAuth 2.1) and supply any required credentials or registration details.
  4. If using OAuth 2.1, optionally set a fixed callback port in the OAuth section before initiating the authorization flow if your authorization server requires strict redirect-URI pre-registration.
  5. Click connect to perform the initial initialize handshake and trigger discovery of tools, resources, resource templates, and prompts.
  6. Review discovered MCP capabilities in the extension tab and use the tool toggles to select which tools to include in active scans.
  7. Initiate a scan to send fuzzed JSON-RPC 2.0 requests through the active and passive scanner, then review findings in the scanner results panel.
  8. Check the Logger sub-tab for proxy startup errors, connection failures, or SSE handshake issues if scans do not produce results.

Author

Author

Peter Hendy, PortSwigger

Version

Version

0.1.0

Rating

Rating

Popularity

Popularity

Last updated

Last updated

30 June 2026

Estimated system impact

Estimated system impact

Overall impact: Empty

Memory
Empty
CPU
Empty
General
Empty
Scanner
Empty

You can install BApps directly within Burp, via the BApp Store feature in the Burp Extender tool. You can also download them from here, for offline installation into Burp.

You can view the source code for all BApp Store extensions on our GitHub page.

Follow @BApp_Store on Twitter to receive notifications of all BApp releases and updates.

Please note that extensions are written by third party users of Burp, and PortSwigger Web Security makes no warranty about their quality or usefulness for any particular purpose.

Go back to BappStore

Note:

Please note that extensions are written by third party users of Burp, and PortSwigger Web Security makes no warranty about their quality or usefulness for any particular purpose.