MCP clients
This server speaks stdio MCP. Any host that can launch a local process with:
{
"mcpServers": {
"wireshark": {
"command": "/absolute/path/to/python",
"args": ["-m", "wireshark_mcp"],
"env": {
"TSHARK_PATH": "/absolute/path/to/tshark"
}
}
}
}
…can use it. Absolute paths avoid “command not found” issues.
Use python -m wireshark_mcp setup to generate the block for your machine.
Cursor
Project file: .cursor/mcp.json
User file: ~/.cursor/mcp.json (or %USERPROFILE%\.cursor\mcp.json)
After editing, reload the window or toggle the server in Settings → MCP.
Optional Cursor Agent Skill ships at .cursor/skills/wireshark-mcp/SKILL.md. Other hosts can ignore it.
Claude Desktop
| OS | Config file |
|---|---|
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
Prefer Settings → Developer → Edit Config inside the app so you open the file Claude actually reads. Fully quit and reopen the app after saving.
python -m wireshark_mcp setup --client claude-desktop
Claude Code
| Scope | File |
|---|---|
| User | ~/.claude.json |
| Project | .mcp.json in the project root |
Same mcpServers schema as Claude Desktop.
python -m wireshark_mcp setup --client claude-code-user
# or
python -m wireshark_mcp setup --client claude-code-project
VS Code / GitHub Copilot
Often .vscode/mcp.json. Some builds nest servers under an servers key — if your VS Code docs differ, paste only the inner command / args / env values into the shape your build expects.
python -m wireshark_mcp setup --client vscode
Windsurf / other forks
Most accept the same Claude/Cursor-style mcpServers JSON. Use:
python -m wireshark_mcp setup --client print
and paste into that product’s MCP settings.
Generic / custom agents
Any framework that can spawn:
/path/to/python -m wireshark_mcp
with env TSHARK_PATH=... over stdio is enough. No Cursor-specific APIs are required for tools to work.
Naming
The setup CLI writes the server key as wireshark. You may rename the key (wireshark-pyshark, etc.); only the object body matters to the protocol.