这是一个基于Model Context Protocol (MCP) 的服务器,用于连接和控制本地安装的Wireshark。它将Wireshark的功能封装为可通过LLM客户端调用的工具。
主要功能点
- 检查Wireshark安装状态: 验证系统上是否安装了Wireshark。
- 获取网络接口: 列出当前系统可用于捕获数据包的网络接口。
- 捕获数据包: 在指定接口上按时长或过滤器捕获网络数据包,并保存到文件。
- 读取捕获文件: 读取现有数据包文件并显示其内容(可应用过滤器和限制数量)。
- 分析捕获文件: 对捕获文件进行统计分析(如协议分布、会话、端点等)。
- 提供Wireshark提示: 提供关于Wireshark常用过滤器和网络分析方法的指南。
安装步骤
要运行此服务器,您需要已安装Python 3.10+ 和 Wireshark(确保'tshark'命令可用)。
- 克隆仓库或下载代码。
- 创建并激活Python虚拟环境(推荐):
python -m venv venv source venv/bin/activate # Windows系统使用: venv\Scripts\activate - 安装依赖:
pip install -r requirements.txt - 验证Wireshark安装:
确保命令可以正常运行。tshark --version
服务器配置 (面向LLM客户端)
MCP服务器是设计给MCP客户端连接和使用的。LLM客户端通常需要配置如何找到或启动这个MCP服务器。
该服务器的配置信息如下:
- 服务器名称: 'wireshark'
- 启动命令: 运行该服务器的命令是 'python wireshark_mcp_server.py'。MCP客户端配置时,通常需要指定 'command: "python"' 和 'args: ["wireshark_mcp_server.py"]' 来启动这个进程。
- 连接地址: 服务器默认启动一个SSE传输通道,监听地址是 'http://127.0.0.1:3001/sse/'。MCP客户端配置时,需要指定连接到这个地址。
请根据您使用的具体LLM或MCP客户端的要求,将上述信息填入相应的配置项中。
基本使用方法
- 启动MCP服务器:
服务器将启动并监听在 'http://127.0.0.1:3001'。注意:在某些操作系统上捕获数据包可能需要管理员权限。python wireshark_mcp_server.py - 启动MCP客户端: 配置您的MCP客户端连接到 'http://127.0.0.1:3001/sse/',并确保客户端能够识别名为 'wireshark' 的服务器。
- 通过客户端交互: 客户端现在可以通过调用服务器提供的工具(例如 'wireshark_get_interfaces'、'wireshark_capture_packets')和获取提示来与Wireshark进行交互。该仓库提供了 'example_client.py' 作为参考示例。
信息
分类
开发者工具