Turns shell scripts and command-line tools into MCP tools so agents can run system commands under configured constraints.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add mcpshell -- go run github.com/inercia/MCPShell@v0.1.4 mcp --config https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml~/.codex/config.toml
[mcp_servers.mcpshell]
command = "go"
args = ["run", "github.com/inercia/MCPShell@v0.1.4", "mcp", "--config", "https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml"]
# codex mcp add mcpshell -- go run github.com/inercia/MCPShell@v0.1.4 mcp --config https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml~/.cursor/mcp.json
{
"mcpServers": {
"mcpshell": {
"command": "go",
"args": [
"run",
"github.com/inercia/MCPShell@v0.1.4",
"mcp",
"--config",
"https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml"
]
}
}
}.vscode/mcp.json
{
"servers": {
"mcpshell": {
"type": "stdio",
"command": "go",
"args": [
"run",
"github.com/inercia/MCPShell@v0.1.4",
"mcp",
"--config",
"https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml"
]
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"mcpshell": {
"command": "go",
"args": [
"run",
"github.com/inercia/MCPShell@v0.1.4",
"mcp",
"--config",
"https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml"
]
}
}
}claude_desktop_config.json
{
"mcpServers": {
"mcpshell": {
"command": "go",
"args": [
"run",
"github.com/inercia/MCPShell@v0.1.4",
"mcp",
"--config",
"https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml"
]
}
}
}.trae/mcp.json
{
"mcpServers": {
"mcpshell": {
"command": "go",
"args": [
"run",
"github.com/inercia/MCPShell@v0.1.4",
"mcp",
"--config",
"https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml"
]
}
}
}