9 releases
| 0.2.6 | May 6, 2026 |
|---|---|
| 0.2.5 | May 4, 2026 |
| 0.2.0 | Apr 18, 2026 |
| 0.1.1 | Apr 17, 2026 |
#2005 in Network programming
740KB
9K
SLoC
netscli
A network scanner written in Rust. CLI, terminal UI, and MCP server in one binary.
cargo install netscli
Then:
netscli # interactive TUI
netscli discover # list live hosts on your default subnet
netscli scan host -p 22,80,443 --json | jq
netscli serve # MCP server (JSON-RPC over stdio)
Surfaces
- CLI —
netscli <cmd>for scripts, cron, and piping intojq.--jsonand--yamloutput on every non-interactive subcommand. - TUI —
netsclialone opens a ratatui-based terminal UI with autocomplete, command history, in-place progress, status footer, and native scrollback/selection. - MCP —
netscli serveexposes nine tools over JSON-RPC on stdio for Claude Code, Cursor, or any MCP client.
There's also a desktop app that shares the same Rust core but isn't published to crates.io (Tauri installers are attached to GitHub Releases instead).
Commands
Host discovery, TCP port scan, subnet sweep, ping, traceroute, DNS lookup (all record types), reverse DNS, ARP table with vendor resolution, interface listing, and optional packet capture.
Packet capture
Install the pcap-enabled variant via the release script:
NETSCLI_PCAP=1 curl -fsSL https://raw.githubusercontent.com/fstubner/netscli/main/scripts/install.sh | bash
This picks the right binary variant and also installs the platform's
packet-capture library (libpcap on Linux/macOS, Npcap on Windows). Or
build from source with cargo build --release -p netscli --features pcap.
Full docs
See the main README for screenshots, MCP client configuration, building from source, cross-compilation, and everything else.
License
MIT
Dependencies
~65–88MB
~1.5M SLoC