Labsco
MCP SERVER

Shell MCP

by kevinwatt

Run a fixed set of inspection commands — ls, cat, grep, find, ps, df, netstat, dig, whois — as separate tools rather than through a general shell.

Editors, Terminals & Local Dev EnvironmentVerified
Summary
What an assistant can run is fixed at install time, because there is no general execute tool to fall through to.

A request outside the named commands has nowhere to go, which is a different posture from a shell guarded by a deny list. The set leans towards inspection — listing, reading, searching, and reporting system and network state — and each command keeps its own flags through an args parameter. shell_ip is the one whose underlying command also changes things, since it manages routing, devices, interfaces and tunnels as well as showing them.

What it is

A shell surface split into one tool per command, covering file inspection, system state, hardware inventory and network lookups.

What you get
  • Filesystem: directory listings, file contents, the working directory, file search across a hierarchy, pattern search inside files, and the binary, source and manual page behind a command name.
  • System state: process status, memory use, disk usage, uptime, the system date, and who is logged in and what they are running.
  • Hardware inventory: PCI devices and USB devices.
  • Network: interfaces, routing and tunnels, connection state, DNS through both dig and nslookup, and WHOIS registration data for a domain.
  • Arguments passed per call, so each command keeps its own flags.
Requirements

A host that provides the commands these tools wrap, and read access to whatever you point them at.

Setup effort

One command — npx -y @kevinwatt/shell-mcp