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.

コメント

「開発者ツール」の他のコンテンツ