MCP.so
登录

Dynamic Shell Server

@codelion

关于 Dynamic Shell Server

Dynamic Shell Command MCP Server

基本信息

分类

开发工具

许可证

Apache-2.0

运行时

python

传输方式

stdio

发布者

codelion

提交者

Asankhaya Sharma

配置

使用下面的配置,将此服务器添加到你的 MCP 客户端。

{
  "mcpServers": {
    "dynamic-shell-server": {
      "command": "python",
      "args": [
        "-m",
        "venv",
        "venv"
      ]
    }
  }
}

工具

2

`command`: The command to execute

`command`: The command to revoke approval for

概览

What is Dynamic Shell Server?

Dynamic Shell Server is a Model Context Protocol (MCP) server that enables secure execution of shell commands with a dynamic approval system. It allows running arbitrary commands while maintaining security through user approval and audit logging. This server is designed for developers using MCP-compatible clients like Claude Desktop.

How to use Dynamic Shell Server?

Install by cloning the repository, setting up a Python virtual environment, and installing dependencies. Run standalone with python dynamic_shell_server.py or integrate with Claude Desktop by adding its configuration to claude_desktop_config.json. When a command is executed for the first time, the user is prompted to allow it once, allow and remember, or deny execution.

Key features of Dynamic Shell Server

  • Dynamic command approval system with user prompts
  • Persistent storage of approved commands
  • Comprehensive audit logging of all executions
  • 5-minute command timeout protection
  • Command revocation capability for previously approved commands
  • No shell execution to prevent injection attacks

Use cases of Dynamic Shell Server

  • Execute shell commands through Claude Desktop with user approval
  • Run project setup commands like npm install only after approval
  • Approve commonly used commands once for repeated safe execution
  • Revoke approval for commands that should no longer be allowed
  • Maintain an audit trail of all command executions

FAQ from Dynamic Shell Server

How does the command approval process work?

When a command is run for the first time, the server prompts the user to allow it once, allow it and remember the approval, or deny execution. Approved commands are stored persistently.

Where does Dynamic Shell Server store its data?

Data is stored in the directory ~/.config/mcp-shell-server/, containing approved_commands.json (list of approved commands) and audit.log (execution history).

What security features protect against command injection?

The server does not use shell execution, preventing shell injection attacks. It also requires user approval for first-time command execution and logs all commands.

Is there a timeout for command execution?

Yes, commands have a 5-minute timeout protection to prevent runaway processes.

Can I revoke approval for a previously approved command?

Yes, the revoke_command_approval tool allows revoking approval for any command that was previously approved.

评论

开发工具 分类下的更多 MCP 服务器