Dynamic Shell Command MCP Server logo

Dynamic Shell Command MCP Server

by codelion

A Model Context Protocol (MCP) server that enables secure execution of shell commands with a dynamic approval system. This server allows running arbitrary commands while maintaining security through user approval and audit logging.

View on GitHub

Last updated: N/A

What is Dynamic Shell Command MCP Server?

The Dynamic Shell Command MCP Server is a server that allows you to execute shell commands securely through a Model Context Protocol. It requires user approval for first-time command execution and provides audit logging for all executed commands.

How to use Dynamic Shell Command MCP Server?

To use the server, you can run it in standalone mode or integrate it with Claude Desktop. In standalone mode, run the dynamic_shell_server.py script. For Claude Desktop integration, configure the claude_desktop_config.json file with the server's command and arguments. When a new command is executed, you will be prompted to approve it. You can approve it once, approve it permanently, or deny it.

Key features of Dynamic Shell Command MCP Server

  • Dynamic command approval system

  • Persistent storage of approved commands

  • Comprehensive audit logging

  • Command timeout protection

  • Command revocation capability

  • No shell execution (prevents injection attacks)

Use cases of Dynamic Shell Command MCP Server

  • Executing shell commands securely in a controlled environment

  • Integrating shell command execution with Claude Desktop

  • Auditing shell command execution for security purposes

  • Providing a secure interface for running arbitrary commands

  • Managing and revoking command approvals

FAQ from Dynamic Shell Command MCP Server

How do I install the server?

Clone the repository, create a virtual environment, and install the dependencies using pip install -r requirements.txt.

How do I run the server?

You can run it in standalone mode using python dynamic_shell_server.py or integrate it with Claude Desktop by configuring the claude_desktop_config.json file.

Where are the approved commands stored?

Approved commands are stored in ~/.config/mcp-shell-server/approved_commands.json.

Where are the audit logs stored?

Audit logs are stored in ~/.config/mcp-shell-server/audit.log.

What security features does the server have?

The server has user approval for first-time command execution, persistent storage of approved commands, comprehensive audit logging, a 5-minute command timeout, no shell execution (prevents injection attacks), and command revocation capability.