Information
Wireshark MCP (Model Context Protocol)
这是一个用于将Wireshark网络分析功能与Claude等AI系统集成的Model Context Protocol (MCP) 服务器。该实现提供了直接与Claude集成的功能,而无需手动复制粘贴提示。
什么是Wireshark MCP?
Wireshark MCP通过实现Model Context Protocol,为AI助手提供了一种标准化的方式来访问和分析通过Wireshark获取的网络数据包。它架起了底层网络数据与高层AI理解之间的桥梁。
该服务器提供的工具包括:
捕获实时网络流量
分析现有的pcap文件
提取特定协议的信息
汇总网络流
快速开始
安装
bash
克隆仓库
git clone https://github.com/sarthaksiddha/Wireshark-mcp.git
cd Wireshark-mcp
安装依赖
pip install -e .
运行MCP服务器
bash
使用标准输入输出传输(适用于Claude桌面版)
python mcp_server.py --stdio
使用SSE传输(适用于其他MCP客户端)
python mcp_server.py --host 127.0.0.1 --port 5000
配置Claude桌面版
要配置Claude桌面版以使用Wireshark MCP服务器,请执行以下步骤:
打开Claude桌面版
转到设置 > 开发者 > 编辑配置
添加如下配置:
json
\{
"mcpServers": \{
"wireshark": \{
"command": "python",
"args": [
"/path/to/wireshark-mcp/mcp_server.py",
"--stdio"
]
\}
\}
\}
请将/path/to/wireshark-mcp替换为您实际的仓库路径。
可用工具
Wireshark MCP服务器提供了以下工具:
capture_live_traffic: 使用tshark捕获实时网络流量
analyze_pcap: 分析现有的pcap文件
get_protocol_list: 获取支持的协议列表
在Claude中的示例用法
配置完成后,您可以在Claude中使用Wireshark MCP服务器进行如下查询:
“捕获我系统上30秒的网络流量并显示发生了什么”
“分析我的network.pcap文件并告诉我是否有任何可疑活动”
“在分析网络流量时我可以关注哪些协议?”
主要特性
数据包汇总:将大型pcap文件转换为优化后的摘要
协议智能:对常见协议(如HTTP、DNS、TLS、SMTP等)提供增强的上下文信息
流跟踪:将相关数据包分组为会话流
异常高亮:强调不寻常或可疑的模式
查询模板:针对常见的网络分析任务预构建的提示
可视化生成:创建基于文本的网络模式表示
多层次抽象:从原始字节到高层次行为查看数据
Web界面:基于浏览器的用户界面,便于分析和可视化
代理到代理(A2A)集成:将数据包分析作为A2A兼容的代理暴露出来
高级安全框架:全面的数据保护和通信安全控制
IP地址保护:多种策略来匿名化敏感的网络地址
安全通信:强大的消息签名确保代理间通信的安全性
跨平台:支持Windows、macOS和Linux
文档
Claude集成指南 - 详细指南连接Claude AI
A2A模块文档 - 使用Agent-to-Agent集成的指南
A2A安全指南 - A2A集成的安全注意事项- IP 保护指南 - 关于 IP 地址匿名化和混淆的详细指南
安全管理器指南 - 统一安全框架的全面指南
消息安全签名 - 安全消息签名和验证指南
Web 界面 README - 使用 Web 界面的信息
实用脚本 - 用于 PCAP 分析的帮助脚本
基本用法
python
from wireshark_mcp import WiresharkMCP, Protocol
from wireshark_mcp.formatters import ClaudeFormatter
使用 pcap 文件初始化
mcp = WiresharkMCP("capture.pcap")
生成基本的数据包摘要
context = mcp.generate_context(
max_packets=100,
focus_protocols=[Protocol.HTTP, Protocol.DNS],
include_statistics=True
)
格式化以供 Claude 使用
formatter = ClaudeFormatter()
claude_prompt = formatter.format_context(
context,
query="在这次 HTTP 流量中你看到了哪些异常模式?"
)
保存到文件以便与 Claude 一起使用
with open("claude_prompt.md", "w") as f:
f.write(claude_prompt)
与 Claude 一起使用
有三种主要方式可以将 Wireshark MCP 与 Claude 结合使用:
1. 直接 MCP 集成(新)
为了与 Claude Desktop 无缝集成:
bash
使用 stdio 传输运行 MCP 服务器
python mcp_server.py --stdio
然后按照上面“配置 Claude Desktop”部分中的说明进行配置。此方法提供直接集成,无需任何复制粘贴。
2. 简单脚本方法
快速分析而无需复杂设置(需要复制粘贴):
bash
python scripts/simple_pcap_analysis.py path/to/your/capture.pcap
这会生成一个 markdown 文件,您可以将其复制并粘贴到 claude.ai 中。
3. API 集成
程序化地与 Claude 的 API 集成:
python
from claude_client import ClaudeClient # 您的实现
from wireshark_mcp import WiresharkMCP
from wireshark_mcp.formatters import ClaudeFormatter
处理 PCAP 文件
mcp = WiresharkMCP("capture.pcap")
context = mcp.generate_context()
格式化以供 Claude 使用
formatter = ClaudeFormatter()
prompt = formatter.format_context(context, query="分析这次网络流量")
发送到 Claude API
client = ClaudeClient(api_key="your_api_key")
response = client.analyze(prompt)
有关详细的 API 说明,请参阅 Claude 集成指南。
要求
Python 3.8+
已安装 Wireshark/tshark 并在您的 PATH 中
fastmcp Python 包
贡献
欢迎贡献!特别需要帮助的领域包括:
额外的协议分析器
性能优化
文档和示例
使用多样化的数据包捕获进行测试
Web 界面增强
有关如何贡献的详细信息,请参阅 CONTRIBUTING.md。
许可证
该项目根据 MIT 许可证发布 - 详情请参阅 LICENSE 文件。