SharkMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SHARKMCP_TIMEOUT | No | Per-request timeout in seconds | 300 |
| SHARKMCP_SHARKD_BIN | No | Path to sharkd binary | sharkd |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| load_pcapA | Load a PCAP/PCAPNG file into a fresh sharkd session.
|
| list_pcapsA | List every loaded PCAP with its current sharkd status. |
| unload_pcapB | Terminate the sharkd session for |
| pcap_summaryC | Combined |
| server_infoA | List all types available in this sharkd session: tap identifiers, follow protocols, column fields, and stats tree entries. Useful for discovering valid values before calling conversations, endpoints, follow_stream, or protocol_hierarchy. |
| list_packetsC | Page through packets via sharkd
|
| packet_detailA | Full protocol tree for one frame.
|
| extract_fieldsC | Extract arbitrary fields per packet, e.g.
|
| validateA | Validate a display-filter expression and/or a field name.
Returns |
| completeA | Autocomplete field names or preference names by prefix.
At least one of field or pref must be provided.
Dense protocols (e.g. |
| get_preferenceA | Read one or all sharkd dissector preferences. Pass a dotted preference name (e.g. |
| set_preferenceA | Set a sharkd dissector preference for this session. Changes are session-scoped and do not persist after the server restarts.
Common uses: forcing a non-standard port to decode as a specific protocol
(e.g. |
| set_frame_commentA | Set a comment on a frame for the duration of this session (non-persistent). Pass an empty string to clear an existing comment. Useful for annotating frames during forensic analysis. |
| protocol_hierarchyC | Protocol hierarchy stats — nested tree of frame/byte counts per protocol. |
| io_statsA | Per-interval frame and byte counts. Results are in chronological order and paged with |
| iographA | Per-interval traffic graph for up to 8 simultaneous lines. Each entry in
Results are paged with |
| follow_streamB | Reassemble a stream. Long-lived streams can produce huge payload lists; |
| conversationsB | Conversation table for a given layer. Sums frames/bytes per peer pair. Results are sorted by |
| endpointsA | Endpoint table for a given layer. Sums tx/rx frames and bytes per host. Results are sorted by |
| expert_infoC | Per-frame expert diagnostics — errors, warnings, notes, and chats. Returns Wireshark's built-in anomaly detection results: TCP retransmissions,
malformed packets, unusual sequences, and protocol violations.
Each entry contains frame number ( |
| protocol_statsC | Protocol-level aggregate statistics. protocol options: dns — query/response counts by type and return code http — HTTP request/response packet counters http_requests — requests grouped by URI http_server — load distribution across servers http_seq — HTTP request sequences http2 — HTTP/2 stream statistics rtsp — RTSP packet counters sip — SIP response code counters dhcp — DHCP message type distribution h225 — H.225 message and response status |
| service_response_timeC | Service response time statistics — min/max/avg latency per request type. Measures the elapsed time between a protocol request and its response. Useful for detecting slow servers, network congestion, or anomalous response-time patterns in application protocols. |
| response_time_delayC | Response time delay statistics for signalling protocols. Measures per-transaction round-trip delay: h225_ras — H.225 RAS registration/admission delays megaco — MEGACO/H.248 gateway control delays mgcp — MGCP gateway control delays radius — RADIUS authentication/accounting delays |
| sequence_diagramB | Flow sequence diagram data for visualising packet exchanges. Returns time-ordered node and flow entries suitable for rendering a sequence diagram (equivalent to Wireshark's Flow Graph window). any — all flows tcp — TCP flows (handshakes, data, teardowns) icmp — ICMP echo request/reply flows icmpv6 — ICMPv6 flows |
| voip_callsC | VoIP call list with state, duration, and participant addresses. Detects SIP, H.323, MGCP, and SKINNY calls in the capture and reconstructs the call flow from signalling messages. |
| rtp_streamsB | RTP stream inventory and per-stream quality analysis. Without With |
| multicast_streamsB | UDP multicast stream statistics. Returns per-stream packet counts, byte rates, and burst statistics for all UDP multicast flows in the capture. |
| export_objectsA | List exportable objects of the given type found in the capture. Each returned object includes a The PCAP is scanned only on the first call for a given type; subsequent pages are served from cache. |
| download_objectA | Download the raw content of an exportable object, TLS secrets, or RTP audio. Tokens come from:
Content is returned base64-encoded under the |
| tapA | Run one or more sharkd statistics taps in a single PCAP scan.
Up to 16 specs per call (sharkd limit). Results are cached after the
first scan; paginated follow-up calls are served from memory.
Use |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/weirdmachine64/SharkMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server