Uses GitHub as the source of truth for packet captures, enabling the server to list, sync, and manage .pcap and .pcapng files from repositories for automated analysis.
Provides comprehensive network packet analysis and forensics using the tshark engine, including protocol triage, TCP health scoring, DNS/HTTP/TLS analysis, and plaintext credential extraction.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Wireshark MCP ServerAnalyze suspicious.pcap and show me the protocol hierarchy breakdown."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Wireshark MCP Server Container
A containerized Model Context Protocol (MCP) server that provides comprehensive network packet analysis using Wireshark/tshark. Connect it to any MCP-compatible AI client for automated network security analysis, protocol inspection, and traffic forensics.
How It Works: GitHub-Based PCAP Sync
This container does not store PCAP files. Instead, it uses a GitHub repository as the source of truth for your packet captures.
The workflow:
Store PCAPs in GitHub -- Push
.pcap/.pcapngfiles to any GitHub repo (public or private).Configure credentials -- Provide your GitHub username, PAT, repo URL, and optional path/branch via environment variables or HTTP headers.
Sync on demand -- Use
wireshark_list_pcapsto see what's available, thenwireshark_sync_pcaporwireshark_sync_all_pcapsto pull files into the container's temporary workspace.Analyze -- Run any of the 19 analysis tools against synced PCAPs.
Clean up -- Use
wireshark_clean_projector let the automatic TTL (default 24h) purge stale workspaces.
This design means the container stays stateless and ephemeral -- PCAP data lives in your GitHub repo, and the container only pulls what it needs for the current analysis session.
Quick Start
Pull from GHCR
Run with Docker
Build Locally
Configuration
All configuration is done through environment variables. See .env.example for a complete reference.
Required
Variable | Description |
| Your GitHub username |
| GitHub Personal Access Token (needs |
| Full GitHub repo URL (e.g., |
Optional
Variable | Default | Description |
| (root) | Subdirectory in the repo where PCAPs are stored |
|
| Branch to sync from |
|
| Server port |
|
| Bind address |
|
| MCP transport ( |
|
| Set to |
| Required when JWT auth is enabled | |
| Optional audience validation when JWT auth is enabled | |
|
| Log user access to tools |
|
| Seconds before stale project workspaces are auto-purged |
Passing Credentials via HTTP Headers
Instead of environment variables, credentials can be passed per-request via HTTP headers. This is useful when multiple users share a single server instance:
Header | Maps to |
|
|
|
|
|
|
|
|
|
|
Headers take precedence over environment variables.
MCP Tools
PCAP Management
Tool | Description |
| List synced and available PCAPs (local + GitHub) |
| Download a single PCAP from GitHub |
| Download all PCAPs from GitHub (skips already-synced) |
| Remove a local PCAP copy |
| Remove entire project workspace |
Analysis
Tool | Description |
| Automated first-pass triage (start here) |
| Comprehensive packet analysis |
| Protocol distribution breakdown |
| TCP/UDP/IP conversation statistics |
| Apply Wireshark display filters |
| Reconstruct TCP/UDP stream payloads |
| Identify highest-volume traffic sources |
Protocol Deep-Dives
Tool | Description |
| TCP retransmissions, dup ACKs, health scoring |
| DNS queries, NXDOMAIN, tunneling detection |
| HTTP methods, status codes, response times |
| TLS versions, ciphers, certificate info |
Security
Tool | Description |
| Extract plaintext credentials from traffic |
| Check PCAP IPs against threat intelligence |
| Check a single IP against threat feeds |
Typical Analysis Workflow
GitHub Repository Setup for PCAPs
Create a GitHub repository (private recommended for sensitive captures).
Create a directory for your PCAP files (e.g.,
pcaps/).Push your
.pcapor.pcapngfiles to that directory.Create a Personal Access Token with
reposcope (for private repos) orpublic_reposcope (for public repos).Configure the container with your repo URL, path, and token.
Local Development
Prerequisites
Python 3.11+
tshark / Wireshark installed
pip
Setup
Install tshark
macOS:
Ubuntu/Debian:
License
ISC