Token导航 LogoToken导航TokenDH.com
CLI MCP Server logo
开发工具stdio官方级别未说明来源级核验

CLI MCP Server

MCP Server

@smithery/cli

Command line interface for MCP clients with secure execution and customizable security policies

工具数

0

提示词数

0

GitHub Stars

169

资源数

0
PythonClaude开发工具Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

MladenSU

提供方

MladenSU

最后核验

2026/5/18 04:06

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @smithery/cli install cli-mcp-server --client claude

详细介绍

CLI MCP服务器

______________________________________________________________________

用于执行受控命令行操作的安全模型上下文协议(MCP)服务器实现 全面的安全功能。

License

MCP Protocol ](https://smithery.ai/protocol/cli-mcp-server) ![Python Tests](https://github.com/MladenSU/cli-mcp-server/actions/workflows/python-tests.yml)

______________________________________________________________________

目录

  1. 概述
  2. 特性
  3. 配置
  4. 可用工具

- 运行命令 - show_security_rules

  1. 使用Claude Desktop

- 开发/未发布的服务器配置 - 已发布的服务器配置

  1. 安全功能
  2. 错误处理
  3. 发展

- 先决条件 - 建筑与出版 - 调试

  1. 许可证

______________________________________________________________________

概述

此MCP服务器支持安全的命令行执行,具有强大的安全措施,包括命令白名单、路径 验证和执行控制。非常适合在保持安全性的同时提供对LLM应用程序的受控CLI访问。

特性

  • 🔒 通过严格验证确保命令执行的安全性
  • ⚙️ 可配置的命令和标记白名单,带有“全部”选项
  • 🛡️ 路径遍历预防和验证
  • 🚫 外壳操作员注射保护
  • ⏱️ 执行超时和长度限制
  • 📝 详细的错误报告
  • 🔄 异步操作支持
  • 🎯 工作目录限制和验证

配置

使用环境变量配置服务器:

变量描述默认值
ALLOWED_DIR命令执行的基本目录(必需)无(必需)
ALLOWED_COMMANDS逗号分隔的允许命令列表或“全部”ls,cat,pwd
ALLOWED_FLAGS逗号分隔的允许标志列表或“全部”-l,-a,--help
MAX_COMMAND_LENGTH最大命令字符串长度1024
COMMAND_TIMEOUT命令执行超时(秒)30
ALLOW_SHELL_OPERATORS允许shell运算符(&&、、>等)false

注:设置 ALLOWED_COMMANDSALLOWED_FLAGS “all”将分别允许任何命令或标志。

安装

通过以下方式自动安装Claude Desktop的CLI MCP服务器 史密瑟里:

npx @smithery/cli install cli-mcp-server --client claude

可用工具

运行命令

在允许的目录中执行白名单CLI命令。

输入架构:

{
  "command": {
    "type": "string",
    "description": "Single command to execute (e.g., 'ls -l' or 'cat file.txt')"
  }
}

安全说明:

  • 默认情况下不支持Shell运算符(&&、|、>、>>),但可以通过启用 ALLOW_SHELL_OPERATORS=true
  • 除非ALLOWED_Commands='all',否则命令必须列入白名单
  • 标志必须列入白名单,除非ALLOWED_Flags=“全部”
  • 所有路径都被验证为在ALLOWED_DIR范围内

show_security_rules

显示当前安全配置和限制,包括:

  • 工作目录
  • 允许的命令
  • 允许的标志
  • 安全限制(最大命令长度和超时)

使用Claude Desktop

添加到您的 ~/Library/Application\ Support/Claude/claude_desktop_config.json:

开发/未发布的服务器配置
{
  "mcpServers": {
    "cli-mcp-server": {
      "command": "uv",
      "args": [
        "--directory",
        "
/cli-mcp-server",
        "run",
        "cli-mcp-server"
      ],
      "env": {
        "ALLOWED_DIR": "",
        "ALLOWED_COMMANDS": "ls,cat,pwd,echo",
        "ALLOWED_FLAGS": "-l,-a,--help,--version",
        "MAX_COMMAND_LENGTH": "1024",
        "COMMAND_TIMEOUT": "30",
        "ALLOW_SHELL_OPERATORS": "false"
      }
    }
  }
}
已发布的服务器配置
{
  "mcpServers": {
    "cli-mcp-server": {
      "command": "uvx",
      "args": [
        "cli-mcp-server"
      ],
      "env": {
        "ALLOWED_DIR": "",
        "ALLOWED_COMMANDS": "ls,cat,pwd,echo",
        "ALLOWED_FLAGS": "-l,-a,--help,--version",
        "MAX_COMMAND_LENGTH": "1024",
        "COMMAND_TIMEOUT": "30",
        "ALLOW_SHELL_OPERATORS": "false"
      }
    }
  }
}
如果它不起作用或在UI中显示,请通过清除缓存 uv clean.

安全功能

  • ✅ 使用“全部”选项执行白名单命令
  • ✅ 使用“全部”选项进行标记验证
  • ✅ 路径遍历预防和规范化
  • ✅ 外壳操作员屏蔽(通过以下方式提供选择加入支持 ALLOW_SHELL_OPERATORS=true)
  • ✅ 命令长度限制
  • ✅ 执行超时
  • ✅ 工作目录限制
  • ✅ Symlink解析和验证

错误处理

服务器为以下对象提供详细的错误消息:

  • 安全违规(CommandSecurityError)
  • 命令超时(CommandTimeoutError)
  • 命令格式无效
  • 路径安全违规
  • 执行失败(CommandExecutionError)
  • 常规命令错误(CommandError)

发展

先决条件

  • Python 3.10+
  • MCP协议库

建筑与出版

准备分发包裹:

  1. 同步依赖关系并更新锁文件:
   uv sync
  1. 构建包分发:
   uv build

> 这将在 dist/ 目录。

  1. 发布到PyPI:
   uv publish --token {{YOUR_PYPI_API_TOKEN}}

调试

由于MCP服务器在stdio上运行,调试可能具有挑战性。为了达到最佳调试效果 经验,我们强烈建议使用 MCP检查员.

您可以通过以下方式启动MCP检查器 随着 此命令:

npx @modelcontextprotocol/inspector uv --directory {{your source code local directory}}/cli-mcp-server run cli-mcp-server

启动后,检查器将显示一个URL,您可以在浏览器中访问该URL以开始调试。

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

______________________________________________________________________

有关更多信息或支持,请在项目存储库上打开一个问题。

目录标签

目录标签

PythonClaude开发工具developer-tools命令行安全本地部署MCP协议命令执行控制安全验证

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

local-only

来源包(packageName,安装包名)

@smithery/cli

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP