From network-cups
Use when mDNS discovery fails or the user wants to scan all devices on the subnet.
npx claudepluginhub danielrosehill/claude-code-plugins --plugin network-cupsThis skill uses the workspace's default tool permissions.
Scan the local subnet using ARP to find all active devices, then identify likely printers by MAC OUI (vendor prefix).
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Scan the local subnet using ARP to find all active devices, then identify likely printers by MAC OUI (vendor prefix).
--interface — specific network interface (e.g. eth0; auto-detected if unset)--vendor-filter — filter by vendor name (e.g. "HP" to show only HP devices)Auto-detect interface. If --interface not provided, derive the primary LAN interface:
IFACE=$(ip -o -4 route show to default | awk '{print $5; exit}')
echo "Scanning on interface: $IFACE"
Stop if no default route found; ask user to specify --interface manually.
Check for root/sudo. Test if arp-scan is installed:
command -v arp-scan >/dev/null || { echo "arp-scan not found. Install with: sudo apt-get install arp-scan"; exit 1; }
If not installed, stop and show the apt command.
Prompt for sudo if needed. If not running as root, show:
This scan requires sudo privilege to access raw network sockets.
Running: sudo arp-scan --localnet -i <interface>
Run ARP scan. Execute:
sudo arp-scan --localnet -i "$IFACE" 2>/dev/null
Parse output and identify printers. For each line with an IP and MAC, cross-reference the MAC OUI (first 3 octets) against a built-in vendor list:
08:00:69 → Xerox08:52:BA → HP1C:23:62 → HP4C:80:93 → Brother74:6F:F7 → Epson5C:F9:38 → CanonA4:B6:D3 → Kyocera00:00:48 → Ricoh00:1A:80 → Samsung00:14:85 → LexmarkFormat as table:
IP MAC Vendor Likely Printer?
192.168.1.50 08:52:BA:xx:xx:xx HP Yes
192.168.1.75 4C:80:93:xx:xx:xx Brother Yes
192.168.1.100 52:54:00:xx:xx:xx QEMU No
...
Apply vendor filter. If --vendor-filter provided, show only matching rows.