Wireshark Server
БесплатноНе проверенA containerized server that enables AI clients to perform automated network packet analysis, protocol inspection, and traffic forensics using Wireshark/tshark.
Описание
A containerized server that enables AI clients to perform automated network packet analysis, protocol inspection, and traffic forensics using Wireshark/tshark. It features a stateless design that synchronizes PCAP files directly from GitHub for secure and ephemeral analysis sessions.
README
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.
┌──────────────┐ ┌─────────────────────────┐ ┌──────────────────┐
│ Your GitHub │ │ Wireshark MCP Container │ │ AI Client │
│ Repository │◄─────►│ │◄─────►│ (Cursor, etc.) │
│ │ sync │ tshark analysis engine │ MCP │ │
│ pcaps/ │ │ /tmp/wireshark_workspace │ │ │
└──────────────┘ └─────────────────────────┘ └──────────────────┘
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
docker pull ghcr.io/<your-org>/wireshark-mcp-container:latest
Run with Docker
docker run -d \
-p 3020:3020 \
-e DISABLE_JWT_AUTH=true \
-e GITHUB_USERNAME=your-github-username \
-e GITHUB_PAT=ghp_xxxxxxxxxxxxxxxxxxxx \
-e GITHUB_REPO=https://github.com/your-org/your-pcap-repo \
-e GITHUB_PATH=pcaps \
-e GITHUB_BRANCH=main \
--name wireshark-mcp \
ghcr.io/<your-org>/wireshark-mcp-container:latest
Build Locally
docker build -t wireshark-mcp:latest -f dockerfile .
docker run -d \
-p 3020:3020 \
--env-file .env \
--name wireshark-mcp \
wireshark-mcp:latest
Configuration
All configuration is done through environment variables. See .env.example for a complete reference.
Required
| Variable | Description |
|---|---|
GITHUB_USERNAME |
Your GitHub username |
GITHUB_PAT |
GitHub Personal Access Token (needs repo scope for private repos) |
GITHUB_REPO |
Full GitHub repo URL (e.g., https://github.com/org/pcap-repo) |
Optional
| Variable | Default | Description |
|---|---|---|
GITHUB_PATH |
(root) | Subdirectory in the repo where PCAPs are stored |
GITHUB_BRANCH |
main |
Branch to sync from |
PORT |
3020 |
Server port |
HOST |
0.0.0.0 |
Bind address |
TRANSPORT |
streamable-http |
MCP transport (streamable-http or stdio) |
DISABLE_JWT_AUTH |
true |
Set to false to enable Azure AD JWT authentication |
AZURE_AD_TENANT_ID |
Required when JWT auth is enabled | |
AZURE_AD_CLIENT_ID |
Optional audience validation when JWT auth is enabled | |
ENABLE_AUTH_LOGGING |
false |
Log user access to tools |
WIRESHARK_PROJECT_TTL |
86400 |
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 |
|---|---|
X-GitHub-Username |
GITHUB_USERNAME |
X-GitHub-PAT |
GITHUB_PAT |
X-GitHub-Repo |
GITHUB_REPO |
X-GitHub-Path |
GITHUB_PATH |
X-GitHub-Branch |
GITHUB_BRANCH |
Headers take precedence over environment variables.
MCP Tools
PCAP Management
| Tool | Description |
|---|---|
wireshark_list_pcaps |
List synced and available PCAPs (local + GitHub) |
wireshark_sync_pcap |
Download a single PCAP from GitHub |
wireshark_sync_all_pcaps |
Download all PCAPs from GitHub (skips already-synced) |
wireshark_remove_pcap |
Remove a local PCAP copy |
wireshark_clean_project |
Remove entire project workspace |
Analysis
| Tool | Description |
|---|---|
wireshark_pcap_triage |
Automated first-pass triage (start here) |
wireshark_analyze_pcap |
Comprehensive packet analysis |
wireshark_protocol_hierarchy |
Protocol distribution breakdown |
wireshark_conversations |
TCP/UDP/IP conversation statistics |
wireshark_display_filter |
Apply Wireshark display filters |
wireshark_follow_stream |
Reconstruct TCP/UDP stream payloads |
wireshark_top_talkers |
Identify highest-volume traffic sources |
Protocol Deep-Dives
| Tool | Description |
|---|---|
wireshark_tcp_health |
TCP retransmissions, dup ACKs, health scoring |
wireshark_dns_analysis |
DNS queries, NXDOMAIN, tunneling detection |
wireshark_http_summary |
HTTP methods, status codes, response times |
wireshark_tls_analysis |
TLS versions, ciphers, certificate info |
Security
| Tool | Description |
|---|---|
wireshark_extract_credentials |
Extract plaintext credentials from traffic |
wireshark_check_threats |
Check PCAP IPs against threat intelligence |
wireshark_check_ip_threat |
Check a single IP against threat feeds |
Typical Analysis Workflow
1. wireshark_list_pcaps → See what's in your GitHub repo
2. wireshark_sync_pcap → Pull a capture file into the container
3. wireshark_pcap_triage → Get an overview and recommendations
4. wireshark_tcp_health → Drill into TCP issues (if flagged)
5. wireshark_display_filter → Filter to specific traffic patterns
6. wireshark_follow_stream → Reconstruct an application conversation
7. wireshark_check_threats → Check IPs against threat intelligence
8. wireshark_clean_project → Clean up when done
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.
# Example repo structure
your-pcap-repo/
├── pcaps/
│ ├── incident-2025-01-15.pcap
│ ├── baseline-traffic.pcapng
│ └── suspicious-dns.pcap
└── README.md
Local Development
Prerequisites
- Python 3.11+
- tshark / Wireshark installed
- pip
Setup
pip install -r requirements.txt
# Copy and configure environment
cp .env.example .env
# Edit .env with your GitHub credentials
# Run the server
python server.py
Install tshark
macOS:
brew install wireshark
Ubuntu/Debian:
sudo apt-get install tshark
License
ISC
Установка Wireshark Server
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/Presidio-Federal/wireshark-mcp-containerFAQ
Wireshark Server MCP бесплатный?
Да, Wireshark Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Wireshark Server?
Нет, Wireshark Server работает без API-ключей и переменных окружения.
Wireshark Server — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Wireshark Server в Claude Desktop, Claude Code или Cursor?
Открой Wireshark Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Wireshark Server with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
