AgentStack
MCP verified MIT Self-run

Netmcp

mcp-cortexc0de-netmcp Β· by cortexc0de

🌐 THE Wireshark MCP Server β€” 48 tools for network analysis, packet capture, threat intelligence, TLS decryption, and more

β€” No reviews yet
0 installs
16 views
0.0% view→install

Install

$ agentstack add mcp-cortexc0de-netmcp

βœ“ scanned Β· βœ“ verified β€” works with Claude Code, Cursor, and more.

Security review

βœ“ Passed

No issues found. Passed automated security review. Β· v0.1.0 How review works β†’

  • βœ“ Prompt-injection patterns
  • βœ“ Secret / credential exfiltration
  • βœ“ Dangerous shell & filesystem operations
  • βœ“ Untrusted network calls
  • βœ“ Known-malicious package signatures

What it can access

  • βœ“ Network access No
  • βœ“ Filesystem access No
  • ● Shell / process execution Used
  • βœ“ Environment & secrets No
  • βœ“ Dynamic code execution No

From automated source analysis of v0.1.0. β€œUsed” means the capability is present in the source β€” more access means more to trust, not that it’s unsafe.

Are you the author of Netmcp? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

🌐 NetMCP

Professional-grade network analysis MCP server β€” Wireshark/TShark + Nmap + Threat Intelligence

[](https://github.com/cortexc0de/netmcp/actions/workflows/ci.yml) [](https://github.com/cortexc0de/netmcp) [](https://github.com/cortexc0de/netmcp/actions/workflows/codeql.yml) [](https://www.python.org/downloads/) [](LICENSE) [](https://pypi.org/project/netmcp/) [](https://ghcr.io/cortexc0de/netmcp) [](https://modelcontextprotocol.io/)

NetMCP bridges the gap between raw network data and AI comprehension. It gives Claude, Cursor, and any MCP-compliant client the ability to capture packets, scan networks, detect threats, and extract credentials β€” all through natural language.

[Quick Start](#-quick-start) β€’ [Features](#-features) β€’ [Configuration](#-configuration) β€’ [API Reference](docs/API.md) β€’ [Architecture](docs/ARCHITECTURE.md)


πŸš€ Quick Start

# Install system dependencies
sudo apt-get install -y tshark nmap        # Ubuntu/Debian
# brew install wireshark nmap              # macOS

# Install NetMCP
pip install netmcp

# Run
netmcp

That's it. The server starts on stdio transport by default, ready for any MCP client.


✨ Features

  • πŸ“‘ Packet Capture β€” Live capture, BPF filtering, targeted traffic, quick capture mode
  • πŸ”¬ Deep Analysis β€” PCAP parsing, protocol statistics, HTTP traffic analysis, DNS analysis, expert info, GeoIP enrichment
  • πŸ”„ Stream Reconstruction β€” Follow TCP/UDP conversations, enumerate streams
  • πŸ“€ Flexible Export β€” JSON, CSV, pcap/pcapng format conversion
  • πŸ” Nmap Integration β€” Port scan, service detection, OS fingerprinting, vulnerability scan
  • πŸ›‘οΈ Threat Intelligence β€” URLhaus + AbuseIPDB IP reputation checks, PCAP-wide threat scan
  • πŸ”‘ Credential Extraction β€” HTTP Basic, FTP, Telnet, Kerberos (hashcat-ready)
  • 🌍 GeoIP Mapping β€” MaxMind GeoLite2 IP geolocation for traffic analysis
  • πŸ”’ 5-Layer Security β€” Input validation, shell=False, rate limiting, path traversal protection, audit logging
  • πŸ’¬ Guided Workflows β€” Security audit, incident response, troubleshooting, traffic analysis, network baseline prompts

Advanced Features

  • πŸ”€ PCAP Diff/Merge/Slice β€” Compare captures, combine files via mergecap, extract packet ranges via editcap
  • πŸ“Š Flow Visualization β€” ASCII art and Mermaid sequence diagrams of network conversations
  • πŸ”“ TLS Decryption β€” Decrypt HTTPS traffic using SSLKEYLOGFILE (NSS Key Log Format)
  • 🎨 Wireshark Profiles β€” List profiles, apply profile settings, parse color filters, capture with profile
  • 🧬 DNS Tunneling Detection β€” Analyze DNS traffic and flag suspiciously long subdomain names
  • πŸ“¦ Packet Decode β€” Detailed single-packet analysis with full protocol layer dissection
  • πŸ₯ Expert Information β€” Extract Wireshark's expert warnings, errors, and protocol violation notes

πŸ“Š Tool Categories

NetMCP provides 48 tools across 9 categories, plus 3 resources and 5 prompts:

| Category | Tools | Description | |----------|-------|-------------| | πŸ“‘ Capture & Analysis | 5 | get_network_interfaces Β· capture_live_packets Β· quick_capture Β· save_capture_to_file Β· analyze_large_pcap | | πŸ”¬ Protocol Analysis | 10 | analyze_pcap_file Β· get_protocol_statistics Β· get_capture_file_info Β· capture_targeted_traffic Β· analyze_http_traffic Β· detect_network_protocols Β· analyze_http_headers Β· geoip_lookup Β· analyze_dns_traffic Β· get_expert_info | | πŸ“Š Network Flows | 2 | visualize_network_flows (ASCII + Mermaid) Β· decrypt_tls_traffic | | πŸ”§ PCAP Tools | 4 | diff_pcap_files Β· merge_pcap_files Β· slice_pcap Β· decode_packet | | πŸ”„ Streams | 3 | follow_tcp_stream Β· follow_udp_stream Β· list_tcp_streams | | πŸ“€ Export | 3 | export_packets_json Β· export_packets_csv Β· convert_pcap_format | | πŸ” Nmap | 6 | nmap_port_scan Β· nmap_service_detection Β· nmap_os_detection Β· nmap_vulnerability_scan Β· nmap_quick_scan Β· nmap_comprehensive_scan | | πŸ›‘οΈ Security | 3 | extract_credentials Β· check_ip_threat_intel Β· scan_capture_for_threats | | 🎨 Wireshark Profiles | 4 | list_wireshark_profiles Β· apply_profile_capture Β· get_color_filters Β· capture_with_profile |

> πŸ“– Full API reference with parameters and examples: [docs/API.md](docs/API.md)


πŸ”Œ Transport Options

NetMCP supports all MCP transport protocols:

| Transport | Command | Use Case | |-----------|---------|----------| | stdio (default) | netmcp | Claude Desktop, Cursor, local clients | | SSE | netmcp --transport sse | Web-based clients, remote access | | Streamable HTTP | netmcp --transport streamable-http | Modern HTTP clients |


βš™οΈ Configuration

Claude Desktop

Edit your config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "netmcp": {
      "command": "netmcp",
      "env": {
        "ABUSEIPDB_API_KEY": "your_api_key_here"
      }
    }
  }
}

Cursor

Edit .cursor/mcp.json in your project root:

{
  "mcpServers": {
    "netmcp": {
      "command": "netmcp"
    }
  }
}

Windsurf / VS Code

Edit .vscode/mcp.json:

{
  "servers": {
    "netmcp": {
      "command": "netmcp",
      "env": {
        "ABUSEIPDB_API_KEY": "your_api_key_here"
      }
    }
  }
}

Environment Variables

| Variable | Required | Default | Description | |----------|----------|---------|-------------| | ABUSEIPDB_API_KEY | No | β€” | AbuseIPDB API key for threat intelligence. Get free key | | NETMCP_TSHARK_PATH | No | Auto-detect | Custom path to tshark binary | | NETMCP_MAX_PACKETS | No | 10000 | Maximum packets per capture operation | | NETMCP_MAX_FILE_SIZE | No | 104857600 | Maximum PCAP file size in bytes (100 MB) |


πŸ“‹ Requirements

| Dependency | Required | Install | |------------|----------|---------| | Python | 3.11+ | sudo apt install python3.11 | | TShark | Yes | sudo apt install tshark | | Nmap | Optional | sudo apt install nmap |

macOS

brew install wireshark nmap

Linux Permissions

# Option 1: Set capabilities (recommended)
sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap

# Option 2: Add user to wireshark group
sudo usermod -aG wireshark $USER && newgrp wireshark

πŸ›‘οΈ Security Model

NetMCP implements 5 layers of defense in depth:

| Layer | Mechanism | Prevents | |-------|-----------|----------| | 1. Input Validation | Regex, ipaddress module, Pydantic | Malformed input, injection payloads | | 2. Command Construction | List args, shell=False everywhere | Command injection, shell expansion | | 3. Subprocess Execution | Timeouts, captured output only | Runaway processes, resource exhaustion | | 4. File System | Path.resolve(), extension allowlist, size limits | Path traversal, symlink attacks | | 5. Rate Limiting | Sliding window, per-operation tracking | Abuse, DoS attacks |

Additional protections:

  • πŸ”’ Never auto-escalates privileges
  • πŸ“ All operations audit-logged with timestamps
  • 🚫 Dangerous nmap flags rejected (--script-args, --interactive, etc.)
  • ⚠️ Clear error messages for permission issues

🎯 Usage Examples

Live Packet Capture

You: Capture 100 packets from eth0 and analyze the protocols.

Claude: [capture_live_packets(interface="eth0", packet_count=100)]
       [get_protocol_statistics(filepath="capture.pcap")]
       Found 8 protocols: TCP (62%), UDP (24%), DNS (8%), HTTP (4%)...

Security Audit

You: Perform a security audit on suspicious.pcap

Claude: 1. [get_protocol_statistics] β†’ traffic breakdown
        2. [extract_credentials] β†’ found HTTP Basic Auth credentials
        3. [scan_capture_for_threats] β†’ 2 malicious IPs detected
        4. Generated full security report with IOCs

Nmap Vulnerability Scan

You: Scan 192.168.1.100 for vulnerabilities

Claude: [nmap_quick_scan("192.168.1.100")] β†’ ports 22, 80, 443 open
        [nmap_service_detection("192.168.1.100")] β†’ nginx 1.18.0, OpenSSH 8.2
        [nmap_vulnerability_scan("192.168.1.100")] β†’ no critical CVEs found

🧠 MCP Resources & Prompts

Resources

| URI | Description | |-----|-------------| | netmcp://interfaces | Dynamic list of available network interfaces | | netmcp://captures | Available PCAP files in common directories | | netmcp://system/info | System capabilities: tool versions, features |

Prompts (Guided Workflows)

| Prompt | Description | |--------|-------------| | security_audit | Comprehensive PCAP security analysis with IOC extraction | | network_troubleshooting | Step-by-step network diagnostics | | incident_response | Security incident investigation workflow | | traffic_analysis | Deep traffic analysis with GeoIP mapping | | network_baseline | Establish normal traffic patterns |


πŸ§ͺ Development

# Clone and setup
git clone https://github.com/cortexc0de/netmcp.git
cd netmcp
python -m venv .venv
source .venv/bin/activate

# Install with dev dependencies
pip install -e ".[dev]"

# Run tests
pytest tests/ -v

# Run with coverage
pytest tests/ --cov=netmcp --cov-report=html

# Linting
ruff check src/netmcp/ tests/
ruff format --check src/netmcp/
mypy src/netmcp/

Project Structure

src/netmcp/
β”œβ”€β”€ server.py                # FastMCP server entry point
β”œβ”€β”€ core/
β”‚   β”œβ”€β”€ security.py          # 5-layer input validation + rate limiting
β”‚   └── formatter.py         # MCP response formatting
β”œβ”€β”€ interfaces/
β”‚   β”œβ”€β”€ tshark.py            # TShark async CLI wrapper
β”‚   β”œβ”€β”€ nmap.py              # python-nmap wrapper
β”‚   └── threat_intel.py      # URLhaus + AbuseIPDB clients
β”œβ”€β”€ tools/                   # 48 MCP tools across 11 modules
β”œβ”€β”€ resources/               # 3 MCP resources
└── prompts/                 # 5 MCP prompts

🀝 Contributing

Contributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feat/amazing-feature)
  3. Run tests (pytest tests/ -v)
  4. Submit a Pull Request

πŸ“„ License

MIT License β€” see [LICENSE](LICENSE) for details.


πŸ™ Acknowledgments


Transform your network analysis with AI-powered packet capture, scanning, and threat intelligence.

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source β€” we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet β€” be the first.

Versions

  • v0.1.0 Imported from the upstream source.