1. Conduid
  2. Developer Tools
  3. MCP-CLI Adapter
MCP server · Developer Tools

MCP-CLI Adapter

Use command line tools in a secure fashion as MCP tools.

Unclaimed devtools
39Low

Scored 3 days ago · breakdown

About MCP-CLI Adapter

MCP-CLI Adapter is an MCP server published by inercia in the Developer Tools category: use command line tools in a secure fashion as MCP tools. It has been installed 1 times through Conduid.

Install

Install
npx mcp-cli-adapter

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

Ask AI about MCP-CLI Adapter

Powered by Claude · Grounded in docs

I know everything about MCP-CLI Adapter. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ·README presentNot checked yet.
  • ·License declaredNot checked yet.
  • ·Tests presentNot checked yet.
  • ·Dependencies pinnedNot checked yet.
  • ·No dynamic code executionNot checked yet.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

v0.2.0v0.2.0 · 3 Feb 2026MCPShell v0.2.0 Download the appropriate binary for your platform below. Installation Linux/macOS Download and extract tar -xzf mcpshell_*.tar.gz Make executable and move to PATH chmod +x mcpshell sudo mv mcpshell /usr/local/bin/ Windows…
v0.1.8v0.1.8 · 21 Nov 2025MCPShell v0.1.8 Download the appropriate binary for your platform below. Installation Linux/macOS Download and extract tar -xzf mcpshell_*.tar.gz Make executable and move to PATH chmod +x mcpshell sudo mv mcpshell /usr/local/bin/ Windows…
v0.1.7v0.1.7 · 30 Oct 2025What's Changed add docs for using Codex CLI and Claude Desktop by @TragicWarrior in https://github.com/inercia/MCPShell/pull/6 Migrate renovate config by @renovate[bot] in https://github.com/inercia/MCPShell/pull/19 Refactor the agent code…
v0.1.5Release v0.1.5 · 19 May 2025Full Changelog**: https://github.com/inercia/MCPShell/compare/v0.1.4...v0.1.5
v0.1.4Release v0.1.4 · 17 May 2025Full Changelog**: https://github.com/inercia/MCPShell/compare/v0.1.3...v0.1.4

README

MCPShell

The 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.

Features

  • Flexible command execution: Run any shell commands as MCP tools, with parameter substitution through templates.
  • Configuration-based tool definitions: Define tools in YAML with parameters, constraints, and output formatting.
  • Security through constraints: Validate tool parameters using CEL expressions before execution, as well as optional sanboxed environments for running commands.
  • Quick proptotyping of MCP tools: just add some shell code and use it as a MCP tool in your LLM.
  • Simple integration: Works with any LLM client supporting the MCP protocol (ie, Cursor, VSCode, Witsy...)

Quick Start

Imagine you want Cursor (or some other MCP client) help you with your space problems in your hard disk.

  1. Create a configuration file /my/example.yaml defining your tools:

    mcp:
      description: |
        Tool for analyzing disk usage to help identify what's consuming space.
      run:
        shell: bash
      tools:
        - name: "disk_usage"
          description: "Check disk usage for a directory"
          params:
            directory:
              type: string
              description: "Directory to analyze"
              required: true
            max_depth:
              type: number
              description: "Maximum depth to analyze (1-3)"
              default: 2
          constraints:
            - "directory.startsWith('/')"  # Must be absolute path
            - "!directory.contains('..')"  # Prevent directory traversal
            - "max_depth >= 1 && max_depth <= 3"  # Limit recursion depth
            - "directory.matches('^[\\w\\s./\\-_]+$')"  # Only allow safe path characters, prevent command injection
          run:
            command: |
              du -h --max-depth={{ .max_depth }} {{ .directory }} | sort -hr | head -20
          output:
            prefix: |
              Disk Usage Analysis (Top 20 largest directories):
    

    Take a look at the examples directory for more sophisticated and useful examples. Maybe you prefer to let the LLM know about your Kubernetes cluster with kubectl? Or let it run some AWS CLI commands?

  2. Configure the MCP server in Cursor (or in any other LLM client with support for MCP)

    For example, for Cursor, create .cursor/mcp.json:

    {
        // you need the "go" command available
        "mcpServers": {
            "mcp-cli-examples": {
                "command": "go",
                "args": [
                   "run", "github.com/inercia/MCPShell@v0.1.8",
                   "mcp", "--tools", "/my/example.yaml",
                   "--logfile", "/some/path/mcpshell/example.log"
                ]
            }
        }
    }
    

    You can also use relative paths and omit the .yaml extension:

    {
        "mcpServers": {
            "mcp-cli-examples": {
                "command": "go",
                "args": [
                   "run", "github.com/inercia/MCPShell@v0.1.8",
                   "mcp", "--tools", "example",
                   "--logfile", "/some/path/mcpshell/example.log"
                ]
            }
        }
    }
    

    This will look for example.yaml in the tools directory (~/.mcpshell/tools/ by default).

    See more details on how to configure Cursor or Visual Studio Code. Other LLMs with support for MCPs should be configured in a similar way.

  3. Make sure your MCP client is refreshed (Cursor should recognize it automatically the firt time, but any change in the config file will require a refresh).

  4. Ask your LLM some questions it should be able to answer with the new tool. For example: "I'm running out of space in my hard disk. Could you help me finding the problem?".

Usage and Configuration

Take a look at all the command in this document.

Configuration files use a YAML format defined here. See the this directory for some examples.

For deploying MCPShell in containers and Kubernetes, see the Container Deployment Guide.

Agent Mode

For AI agent functionality that connects LLMs directly to tools, see the Don project. Don provides:

  • Direct LLM connectivity without requiring a separate MCP client
  • RAG (Retrieval-Augmented Generation) support
  • Multi-agent architecture
  • Uses MCPShell's tool configuration format

Security Considerations

So you will probably thing "this AI has helped me finding all those big files. What if I create another tool for removing files?". Don't do that!.

  • Limit the scope of these tools to read-only actions, do not give the LLM the power to change things.
  • Use constraints to limit command execution to safe parameters
  • Consider using a sanboxed environment for running commands.
  • Review all command templates for potential injection vulnerabilities
  • Only expose tools that are safe for external use
  • All of the above!

Please read the Security Considerations document before using this software.

Contributing

Contributions are welcome! Take a look at the development guide. Please open an issue or submit a pull request on GitHub.

License

This project is licensed under the MIT License - see the LICENSE file for details.

README mirrored from the source repository 3 days ago. The original is authoritative.

Questions

About MCP-CLI Adapter

How do I install MCP-CLI Adapter?

Run npx mcp-cli-adapter, then add the server to your MCP client's configuration. Conduid has recorded 1 installs, so the command is known to work with current clients.

Is MCP-CLI Adapter safe to use with an AI agent?

Its trust score is 39 out of 100 (low). It passes 0 of 1 static security checks; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is MCP-CLI Adapter still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.