Agenten stärken
Installation vom Herausgeber. Kein PlugMCP-Endpunkt.
Host a copy with our keys and logs.
Noch kein paketiertes Release in der Registry. Folgen Sie der README des Repositorys.
Remote-URL oder ein Befehl auf Ihrem Rechner? Worin sich die beiden Installationen unterscheiden
Auf PlugMCP ausführen
A new server you create. It is not this listing's official endpoint. Use the publisher install when you want their URL and their credentials.
StartenA premium, cross-platform, production-grade Network Intelligence Engine & CLI written in pure Python 3. Zero external dependencies. High-concurrency diagnostics, structured output (JSON/CSV/XML), watch/loop mode, shell completions, man page, and an integrated Model Context Protocol (MCP) Server for AI assistants.
pip install needed to run.tcp, dns, http, ssl, ping, interfaces, traceroute, scan, whois, udp, mtr.aws, gcp, azure, cloudflare, github, etc.).--watch and configurable --interval.--format text|json|csv|xml.--no-color and NO_COLOR env var support for CI/CD pipelines.netcheck into a local tool-server for Claude, ChatGPT, and other AI agents.192.168.1.1-50), CIDR (10.0.0.0/24), port lists (80,443), port ranges (8000-8100), and ip:port notation.--jobs, default 10) with real-time progress.NETCHECK_TIMEOUT, NETCHECK_MAX_WORKERS, NO_COLOR for scripting.man netcheck documentation installed by install.sh.pipx installs CLI tools in isolated environments and automatically handles PATH — no manual setup needed.
# Install pipx if you don't have it
python3 -m pip install --user pipx
python3 -m pipx ensurepath # adds ~/.local/bin to PATH (one-time)
# Then install netcheck
pipx install netcheckx
After
ensurepath, restart your terminal (or runsource ~/.bashrc). Then:netcheck --help
pip install netcheckx
Note: Package name is
netcheckx(to avoid PyPI conflict). Bothnetcheckandnetcheckxcommands work after install.
If you see a PATH warning after install, just run the bundled setup helper — it auto-patches your shell:
netcheck-setup # auto-adds ~/.local/bin to ~/.bashrc, ~/.zshrc, ~/.profile
source ~/.bashrc # reload shell
netcheck --help # done ✅
Or manually, if preferred:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc && source ~/.bashrc
sudo snap install netcheck
sudo snap connect netcheck:network-observe # enables ping & interfaces
.deb)sudo dpkg -i netcheck_2.5.0_amd64.deb
choco install netcheck
.pkgsudo installer -pkg netcheck-2.5.0.pkg -target /
git clone https://github.com/farman20ali/netcheck.git
cd netcheck
sudo bash packaging/linux/install.sh
git clone https://github.com/farman20ali/netcheck.git
cd netcheck
pip install -e ".[dev]"
python3 -m netcheck --help
Any subcommand can be looped with --watch:
netcheck tcp google.com 443 --watch --interval 2 # Refresh every 2s
netcheck http https://api.example.com -w -i 5 # Watch HTTP every 5s
netcheck dns github.com -w # Watch DNS (default 2s interval)
Press Ctrl+C to stop.
netcheck http https://api.example.com \
--method POST \
-H "Authorization: Bearer token123" \
-H "Accept: application/json" \
--auth user:pass
netcheck interfaces # Show active interfaces only
netcheck interfaces --all # Show all interfaces (including inactive)
netcheck interfaces --public # Also fetch and display public WAN IP
netcheck --my-ip --public # Legacy flag with public IP
--show)netcheck tcp 192.168.1.1-50 22 --show success # Only successful connections
netcheck tcp 10.0.0.0/24 443 --show fail # Only failures
netcheck -q 192.168.1.1 80,443 --show success # Legacy quick-mode filtering
NETCHECK_TIMEOUT=10 NETCHECK_MAX_WORKERS=50 netcheck scan 192.168.1.1
NO_COLOR=1 netcheck ssl google.com -f json
netcheck traceroute google.com # Full path
netcheck traceroute 8.8.8.8 -m 15 # Limit to 15 hops
netcheck traceroute github.com -f json # JSON output
Uses raw ICMP sockets if run as root; otherwise falls back to system traceroute/tracepath (Linux/macOS) or tracert (Windows).
netcheck scan 192.168.1.1 # Scan ~44 common ports
netcheck scan google.com --ports 80,443,8080
netcheck scan 10.0.0.1 --ports 1-1024 --jobs 100
netcheck whois google.com # Domain registrar + creation date
netcheck whois 8.8.8.8 # IP network block + organization
Uses modern RDAP (HTTP JSON API) first; falls back to classic WHOIS port 43.
netcheck ships an integrated Model Context Protocol server that exposes all diagnostic functions to AI assistants.
netcheck --mcp
# or
python3 -m netcheck.mcp.server
Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"netcheck": {
"command": "python3",
"args": ["-m", "netcheck.mcp.server"],
"env": { "PYTHONPATH": "/path/to/netcheck" }
}
}
}
Exposed MCP tools (v2.2.0):
All packaging is orchestrated by build_packages.py. Templates live in packaging/.
packaging/
├── chocolatey/ ← Windows Chocolatey (.nupkg)
│ └── tools/
├── linux/ ← install.sh / uninstall.sh / netcheck.1 / completions
├── macos/ ← macOS .pkg scripts
├── snap/ ← snapcraft.yaml template
└── windows/ ← NSIS installer script (.nsi)
# Check available tools on this machine
python3 build_packages.py --check
# Sync a new version across all config files
python3 build_packages.py --sync-version 2.3.0
# Build all packages for the current OS
python3 build_packages.py --all
# Individual targets
python3 build_packages.py --pypi # wheel + sdist
python3 build_packages.py --deb # Debian .deb
python3 build_packages.py --snap # Snap .snap
python3 build_packages.py --win # Windows .exe + NSIS + Chocolatey
python3 build_packages.py --mac # macOS binary + .pkg
# System-wide (requires root)
sudo cp packaging/linux/netcheck.bash-completion /etc/bash_completion.d/netcheck
# Per-user
mkdir -p ~/.local/share/bash-completion/completions
cp packaging/linux/netcheck.bash-completion ~/.local/share/bash-completion/completions/netcheck
mkdir -p ~/.zsh/completions
cp packaging/linux/netcheck.zsh-completion ~/.zsh/completions/_netcheck
# Add to ~/.zshrc:
echo 'fpath=(~/.zsh/completions $fpath)' >> ~/.zshrc
echo 'autoload -U compinit && compinit' >> ~/.zshrc
The installer script (packaging/linux/install.sh) does all of this automatically.
serve)NetCheck features a robust, zero-dependency configuration, alerting, and Prometheus metrics engine.
Configure SMTP, Slack, Webhooks, and default check timeouts safely:
netcheck config init # Run interactive wizard to generate config
netcheck config show # Print current configuration + OS keychain status
netcheck config path # Print path to config.yaml file
netcheck config edit # Open config.yaml in your local $EDITOR
netcheck config purge # Delete config.yaml AND wipe all keychain secrets
Credential Safety (System Keychain):
All sensitive credentials are stored in the OS credential manager (Keychain on macOS, Credential Manager on Windows, GNOME Keyring/KWallet on Linux). config.yaml never stores secrets.
netcheck config set-password email # SMTP app-password
netcheck config set-password smtp_user # SMTP sender address
netcheck config set-password smtp_to # SMTP recipient address(es)
netcheck config set-password slack # Slack incoming webhook URL
netcheck config set-password webhook # Generic webhook bearer token
netcheck config clear-password email # Remove a specific keychain entry
Test your alert channels instantly:
netcheck config test-alert email # Send a real test email now
netcheck config test-alert slack # Post a test Slack message now
netcheck config test-alert desktop # Trigger a test desktop notification
netcheck config test-alert webhook # POST a test webhook payload
Trigger alerts on state changes (UP ⇄ DOWN transition) during watch or serve loops. This prevents alert storms from repeated failures.
Supported channels:
{target} template substitutionosascript (macOS), notify-send (Linux)Alert flags:
Usage Examples:
# Alert via email and Slack on any TCP state change
netcheck tcp api.example.com 443 -w --alert email,slack
# Only alert when a target goes DOWN (suppress UP/recovery alerts)
netcheck tcp api.example.com 443 -w --alert slack --alert-on down
# Alert on recovery only, via desktop notification
netcheck http https://api.example.com -w --alert desktop --alert-on up
# Alert via desktop notifications on DNS changes, 5-minute cooldown
netcheck dns google.com -w --alert desktop --alert-cooldown 300
netcheck config init
netcheck tcp localhost 9999 -w --alert slack,desktop --interval 2
(NetCheck initially records the baseline state silently.)nc -lk 9999$listener = [System.Net.Sockets.TcpListener]9999; $listener.Start()
localhost:9999 as UP.Ctrl+C or $listener.Stop()).
NetCheck will detect the state change and immediately trigger a DOWN alert to Slack and Desktop:
❌ Alert: localhost:9999 is DOWN (Connection refused)
✅ Alert: localhost:9999 is back UP
serve mode)Run netcheck as a background daemon monitoring multiple targets and serving /metrics in the Prometheus text exposition format.
# Monitor hosts from a file and serve metrics on port 9090
netcheck serve --metrics --port 9090 hosts.txt
Exposed Metrics:
netcheck_scrape_count (Counter)netcheck_check_total{target, check_type} (Counter)netcheck_check_failures_total{target, check_type} (Counter)netcheck_latency_seconds{target, check_type} (Gauge)netcheck_up{target} (Gauge, 1 = UP, 0 = DOWN)netcheck_uptime_ratio{target, check_type} (Gauge, 0.0 - 1.0 ratio)targets.txt file containing your endpoints:
google.com:443
github.com:443
127.0.0.1:80
netcheck serve --metrics --port 9090 targets.txt --interval 10
curl http://localhost:9090/metrics
prometheus.yml configuration:
scrape_configs:
- job_name: 'netcheck'
scrape_interval: 10s
static_configs:
- targets: ['localhost:9090']
netcheck_up metric:
# Alertmanager rule example
groups:
- name: netcheck_alerts
rules:
- alert: EndpointDown
expr: netcheck_up == 0
for: 1m
labels:
severity: page
annotations:
summary: "Endpoint {{ $labels.target }} is offline"
All subcommands produce machine-readable structured JSON output when -f json is set. Use this to build health-gate scripts, monitoring alerts, or GitHub Actions checks:
# Check if a TCP port is open — fail the step if not
netcheck tcp prod.example.com 443 -f json | python3 -c \
"import sys, json; d=json.load(sys.stdin); sys.exit(0 if d['results'][0]['status']=='success' else 1)"
# Extract DNS IPs with jq
netcheck dns api.example.com -f json | jq '.ips[]'
# List open ports as JSON array
netcheck scan 192.168.1.1 --ports 1-1024 -f json | jq '.open_ports[] | {port, service}'
# Get SSL days-until-expiry, alert if < 30
netcheck ssl prod.example.com -f json | jq -e '.days_until_expiry > 30'
# Traceroute hop count for latency monitoring
netcheck traceroute 8.8.8.8 -f json | jq '.hops | length'
# Listening ports as CSV for spreadsheet import
netcheck ports -f csv > listening_ports.csv
# Use NO_COLOR to suppress ANSI in logs
NO_COLOR=1 netcheck tcp prod.example.com 443
# Override timeout and workers for fast CI checks
NETCHECK_TIMEOUT=3 NETCHECK_MAX_WORKERS=50 netcheck scan 10.0.0.1 --ports 80,443,8080 -f json
# Using Make
make test
# Using pytest directly
PYTHONPATH=. python3 -m pytest tests/ -v
# With coverage
PYTHONPATH=. python3 -m pytest tests/ --cov=netcheck --cov-report=term-missing
netcheck/
├── netcheck/ ← Python package
│ ├── __init__.py ← version string
│ ├── __main__.py ← python3 -m netcheck entry point
│ ├── cli.py ← CLI argument parsing & dispatch
│ ├── mcp/ ← MCP server + tool definitions
│ ├── modules/ ← dns, tcp, http, ssl, ping, interfaces,
│ │ traceroute, port_scanner, whois
│ └── utils/ ← formatters, retry, concurrency, services
├── packaging/ ← Platform packaging templates
│ ├── chocolatey/
│ ├── linux/ ← install.sh, netcheck.1, bash/zsh completions
│ ├── macos/
│ ├── snap/
│ └── windows/
├── tests/ ← pytest test suite (305 tests)
├── docs/ ← Guides and release notes
├── .github/workflows/ ← CI (ci.yml) + Release (release.yml)
├── build_packages.py ← Build orchestration script
├── pyproject.toml ← Package metadata & build config
├── python-requirements.txt ← Local dev setup shortcut
└── Makefile ← make install / test / clean
NetCheck adheres to deterministic, script-friendly POSIX exit code conventions:
Graceful Cancellation: Pressing
Ctrl+Cimmediately cancels all running threads and active socket connections, cleans up terminal cursor lines, outputs a message tostderr, and exits cleanly with code130without traceback dumps.
Distributed under the GNU General Public License v3 (GPL-3.0). See LICENSE for details.
Comprehensive cross-platform network diagnostics CLI & MCP server (TCP, DNS, HTTP, SSL, Traceroute, Port Scan).
Tools
Noch keine Tool-Liste. Remote-Server erhalten eine nach dem ersten Health-Check.
FAQ
Kopieren Sie auf dieser Seite die stdio-Konfiguration für Cursor, Claude Desktop, Claude Code oder VS Code. Sie nutzt die Installation des Herausgebers, keinen PlugMCP-Proxy.
In diesem Eintrag ist keine erforderliche Umgebungsvariable aufgeführt.
Netcheck läuft lokal über stdio.
Zuletzt geprüft: 2026-10-28. Comprehensive cross-platform network diagnostics CLI & MCP server (TCP, DNS, HTTP, SSL, Traceroute, Port Scan).