Wireshark MCP
Wireshark MCP
MCP-сервер на базе FastMCP, предоставляющий инструменты для захвата, анализа, обнаружения угроз и создания отчетов Wireshark/tshark для ИИ-агентов и локального тестирования.
Оглавление
Предварительные требования
Python: 3.8+ (рекомендуется 3.11)
Wireshark (для CLI
tshark). В Windows установите Wireshark + Npcap.Права доступа: Захват пакетов обычно требует повышенных привилегий в Windows.
Убедитесь, что tshark установлен или доступен по стандартному пути (например, C:\Program Files\Wireshark\tshark.exe). Проект включает TsharkWrapper, который ищет его в PATH и стандартных местах установки в Windows.
Related MCP server: wireshark-mcp
Быстрый старт
Клонируйте репозиторий и создайте виртуальное окружение.
Windows (PowerShell):
git clone <your-repo-url>
cd Wireshark_MCP
python -m venv venv
.\venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txtLinux / macOS:
git clone <your-repo-url>
cd Wireshark_MCP
python3 -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txtОпционально: скопируйте config.example.json в config.json и отредактируйте настройки, специфичные для проекта.
Запуск сервера
Существует два основных режима:
Транспорт
stdio— предназначен для прямой интеграции с клиентами, поддерживающими MCP (например, интеграции с Wireshark/IDE). Это режим по умолчанию при запуске основного пакета.Транспорт
http— предоставляет MCP-сервер через HTTP API (полезно для тестирования или внешних клиентов).
Рекомендуется (Windows): используйте прилагаемый скрипт запуска, который активирует venv и запускает сервер:
.\run_server.ps1Ручной запуск (stdio):
.\venv\Scripts\Activate.ps1
python -m wireshark_mcp.serverЗапуск с HTTP-транспортом (пример скрипта). Создайте run_network_server.py с содержимым:
from wireshark_mcp import server
# Starts FastMCP with HTTP transport on 127.0.0.1:8765
server.main().run(transport="http", host="127.0.0.1", port=8765)Запустите его:
python run_network_server.pyПри запуске с HTTP-транспортом вы увидите логи Uvicorn, например:
INFO: Uvicorn running on http://127.0.0.1:8765 (Press CTRL+C to quit)Использование инструментов (примеры)
Для разработки и тестирования мы рекомендуем вызывать модули инструментов напрямую (они возвращают структурированные объекты Python). Функции сервера, декорированные для MCP, возвращают сериализованные строки для транспорта MCP.
Примеры Python (внутри активированного venv):
# List network interfaces (preferred for testing)
from wireshark_mcp.tools import capture
print(capture.list_network_interfaces())
# Analyze a PCAP file
from wireshark_mcp.tools import analysis
print(analysis.analyze_pcap("/path/to/capture.pcap"))
# Detect threats in a PCAP
from wireshark_mcp.tools import threat_detection
print(threat_detection.detect_threats("/path/to/capture.pcap"))Если вы хотите использовать инструменты MCP через уровень сервера (их будут вызывать MCP-клиенты), сервер предоставляет инструменты с теми же именами. Пример (обратите внимание: они возвращают строки):
from wireshark_mcp import server
print(server.list_network_interfaces()) # returns serialized stringДоступные инструменты (сводка)
Захват
list_network_interfaces— список доступных устройств захватаcapture_packets— захват пакетов в реальном времени (интерфейс, длительность, количество пакетов, BPF-фильтр)
Анализ
analyze_pcap— полный анализ pcapextract_dns_queries— DNS-запросы и подозрительные доменыextract_ip_addresses— извлечение IP-адресов и шаблоны трафикаget_protocol_statistics— распределение протоколов
Обнаружение угроз
detect_threats— извлечение IOC и оценка рисковanalyze_malicious_domains— глубокий анализ доменовanalyze_suspicious_ips— проверка репутации IPdetect_attack_patterns— обнаружение сигнатур/шаблонов атак
Устранение неполадок
analyze_connectivity_issue— диагностика целевого соединенияanalyze_vpn_behavior— сравнение VPN и не-VPN трафикаanalyze_latency_and_retransmissions— потеря пакетов и повторные передачиanalyze_web_performance— анализ трафика веб-приложений
Отчетность
generate_analysis_report— создание комплексного отчетаgenerate_security_report— отчет, сфокусированный на безопасности
Точные сигнатуры инструментов и docstrings смотрите в wireshark_mcp/server.py.
Устранение неполадок
tsharkне найден: установите Wireshark и убедитесь, чтоtsharkнаходится в PATH или в папке установки по умолчанию. ВключенныйTsharkWrapperищет его в стандартных местах Windows, еслиtsharkотсутствует в PATH.Ошибки прав доступа при захвате в Windows: убедитесь, что установлен Npcap, и запускайте PowerShell от имени администратора.
Если инструмент возвращает
failedсо строкой ошибки, запустите эквивалентную функцию вwireshark_mcp.toolsнапрямую, чтобы изучить исключения.
Логи: Сервер использует стандартное логирование; проверяйте вывод консоли, где вы запустили сервер, для получения подробной информации.
Участие в разработке
Вносите изменения в ветку функций (feature branch), добавляйте тесты, где это уместно, и открывайте pull request.
Поддерживайте стабильность публичных API в
wireshark_mcp.tools; декорированные функцииserverпредназначены для работы с MCP.
Лицензия
Добавьте предпочитаемый файл лицензии (например, LICENSE) перед публикацией на GitHub.
Если хотите, я также могу:
создать краткий
CONTRIBUTING.md,добавить примеры скриптов в папку
scripts/(HTTP-запуск, фрагменты для быстрого тестирования), илиоткрыть локальную ветку Git и зафиксировать эти изменения за вас.
Безопасность и качество кода
Проект регулярно сканируется инструментом статического анализа (SonarQube) для выявления проблем безопасности, надежности и удобства сопровождения. Скриншоты ниже были сделаны во время последнего сканирования и включены сюда в качестве подтверждающих данных для заинтересованных сторон.
Примечание: скриншоты показывают состояние анализа на момент их создания. Авторитетным источником является страница проекта SonarQube — включите эту ссылку, если публикуете эти артефакты публично.
Ссылки на рисунки (разместите файлы изображений в docs/images/):
docs/images/sonarqube_result.jpeg— сводка проекта / общий статус (SonarQube)docs/images/snyk_result.jpeg— сводка сканирования зависимостей/безопасности (Snyk)

Рисунок 1 — Сводка проекта SonarQube (Пройдено / на момент сканирования нет открытых проблем безопасности или надежности).

Рисунок 2 — Результат сканирования Snyk, иллюстрирующий проверки зависимостей/безопасности и их количество.
Как добавить изображения в этот репозиторий:
Создайте папку
docs/images/в корне репозитория.Сохраните скриншоты как
sonar_project.pngиsonar_summary.pngв эту папку.Зафиксируйте и отправьте изображения вместе с README:
git add docs/images/sonar_project.png docs/images/sonar_summary.png README.md
git commit -m "docs: add SonarQube screenshots to README"
git push origin <your-branch>Если хотите, загрузите скриншоты сюда (или предоставьте доступ к URL проекта SonarQube), и я добавлю и зафиксирую их за вас.
This server cannot be deployed
Maintenance
Related MCP Connectors
Exposes FEDLIN's public security scanners as agent-callable tools over Streamable HTTP.
Anonymous webhook capture, inspection, waiting, and response configuration for AI agents.
CVE lookups (NVD) and dependency-manifest audits (OSV) for AI agents. No API keys.
CVE lookups (NVD) and dependency-manifest audits (OSV) for AI agents. No API keys.
Related MCP Servers
- FlicenseCqualityDmaintenanceEnables LLMs to capture, analyze, and summarize network traffic using Wireshark CLI tools, supporting live capture, pcap analysis, and LLM-oriented summaries.76-
- AlicenseBqualityDmaintenanceExposes Wireshark CLI tools to AI agents through MCP interfaces for network analysis.381MIT
- AlicenseNot gradedqualityCmaintenanceBridges AI assistants and network packet analysis by exposing Wireshark/TShark functionality through MCP, enabling PCAP investigation, protocol discovery, packet filtering, stream analysis, and live capture.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to interact with tshark and related command-line tools for live packet capture, PCAP analysis, filtering, stream following, and capture file merging.1MIT