MCPShell
@inercia
About MCPShell
Use shell scripts as MCP tools
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"mcpshell": {
"command": "go",
"args": [
"run",
"github.com/inercia/[email protected]",
"mcp",
"--config",
"https://raw.githubusercontent.com/inercia/MCPShell/refs/heads/main/examples/kubectl-ro.yaml"
]
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is MCPShell?
MCPShell is a tool that allows LLMs to safely execute command-line tools through the Model Context Protocol (MCP). It provides a secure bridge between LLMs and operating system commands, enabling AI assistants to run shell commands with configurable constraints and parameter validation.
How to use MCPShell?
Create a YAML configuration file defining your tools with parameters, constraints, and the shell command to run. Then configure MCPShell as an MCP server in your LLM client (e.g., Cursor, VS Code) using go run github.com/inercia/[email protected] mcp --tools <config>. After refreshing the client, you can ask the LLM questions that require command execution.
Key features of MCPShell
- Flexible command execution with parameter substitution through templates
- Configuration-based tool definitions in YAML with parameters and constraints
- Security through CEL expression validation and optional sandboxed environments
- Quick prototyping of MCP tools by adding shell code
- Simple integration with any LLM client supporting the MCP protocol
Use cases of MCPShell
- Analyzing disk usage to identify space-consuming directories
- Running Kubernetes commands via kubectl for cluster management
- Executing AWS CLI commands for network diagnostics
FAQ from MCPShell
What makes MCPShell secure for executing shell commands?
MCPShell validates tool parameters using CEL expressions before execution, and optionally runs commands in sandboxed environments. The README strongly recommends limiting tools to read-only actions and reviewing templates for injection vulnerabilities.
Does MCPShell require specific runtime dependencies?
Yes, the go command must be available to run MCPShell, as it is invoked via go run. The tool itself is written in Go and fetched from GitHub.
Where are tool configurations stored?
Tool definitions are stored in YAML files. By default, MCPShell looks for them in the ~/.mcpshell/tools/ directory, though custom paths can be specified with the --tools argument and relative paths are supported.
How does MCPShell relate to the "Don" project?
More Other MCP servers
MCP Go 🚀
mark3labsA Go implementation of the Model Context Protocol (MCP), enabling seamless integration between LLM applications and external data sources and tools.
🚀 Model Context Protocol (MCP) Curriculum for Beginners
microsoftThis open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable,
Production-ready MCP integrations for AI applications
Klavis-AIKlavis AI: MCP integration platforms that let AI agents use tools reliably at any scale
ICSS
chokcoco不止于 CSS
MaxKB
1Panel-dev🔥 MaxKB is an open-source platform for building enterprise-grade agents. 强大易用的开源企业级智能体平台。
Comments