Token导航 LogoToken导航

MCP Server · 开发工具

Exec Dir MCP

一个基于Model Context Protocol (MCP)的命令执行服务器,支持在指定目录中安全地执行命令,适用于开发环境和自动化脚本执行。

stdio官方级别未说明来源级核验工具 1
命令执行开发工具PythonClaudeClaude Desktop

快速开始

作者 / 组织
yunhai-dev
提供方
yunhai-dev

工具数量

1

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Exec Dir MCP 属于开发工具类 MCP Server,公开资料标注 1 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude,有可以直接复制的安装命令;接入前先确认权限范围。

分类

开发工具

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

pip install -e .

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 1 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

Exec Dir MCP

一个基于 Model Context Protocol (MCP) 的命令执行服务器,支持在指定目录中安全地执行命令。

功能特性

  • 🎯 安全执行:支持配置允许的目录列表,防止在未授权目录执行命令
  • 📁 灵活配置:可设置默认工作目录,支持在任意允许的目录执行命令
  • ⏱️ 超时控制:支持自定义命令执行超时时间
  • 🔄 异步执行:基于 asyncio 的异步命令执行,性能优异
  • 📊 详细日志:完整的执行日志记录,方便调试和监控
  • 🛡️ 目录验证:自动验证目录存在性和权限

安装

系统要求

  • Python >= 3.13
  • uv (推荐) 或 pip

使用 uv 安装

# 克隆仓库
git clone https://github.com/yunhai-dev/exec-dir-mcp.git
cd exec-dir-mcp

# 安装依赖
uv sync

# 开发模式安装
uv pip install -e .

使用 pip 安装

pip install -e .

MCP 客户端配置

Claude Desktop 配置

在你的 claude_desktop_config.json 中添加以下配置:

{
  "mcpServers": {
    "exec-dir-mcp": {
      "command": "uvx",
      "args": ["exec-dir-mcp"]
    }
  }
}
安全配置示例

基本配置(允许所有目录):

{
  "mcpServers": {
    "exec-dir-mcp": {
      "command": "uvx",
      "args": ["exec-dir-mcp"]
    }
  }
}

安全配置(限制可访问目录):

{
  "mcpServers": {
    "exec-dir-mcp": {
      "command": "uvx",
      "args": [
        "exec-dir-mcp",
        "--dir", "/home/user/projects",
        "--allowed", "/home/user/projects",
        "--allowed", "/tmp"
      ]
    }
  }
}

多项目工作区配置:

{
  "mcpServers": {
    "exec-dir-mcp": {
      "command": "uvx",
      "args": [
        "exec-dir-mcp",
        "--dir", "/workspace",
        "--allowed", "/workspace/project1",
        "--allowed", "/workspace/project2",
        "--allowed", "/workspace/shared"
      ]
    }
  }
}

其他 MCP 客户端配置

UVX 方式(推荐)

使用 uvx 直接运行(最简单,无需安装):

{
  "mcpServers": {
    "exec-dir-mcp": {
      "command": "uvx",
      "args": [
        "exec-dir-mcp",
        "--dir", "/workspace",
        "--allowed", "/workspace"
      ]
    }
  }
}
直接命令方式

如果你已经安装了包(pip install 或 uv add),可以直接使用:

{
  "mcpServers": {
    "exec-dir-mcp": {
      "command": "exec-dir-mcp",
      "args": [
        "--dir", "/workspace",
        "--allowed", "/workspace"
      ]
    }
  }
}

配置说明

  • command:

- uvx exec-dir-mcp: 使用 uvx 直接运行(推荐,最简单) - exec-dir-mcp: 已安装包后的直接命令

  • args: 启动参数

- --dir: 指定默认工作目录 - --allowed: 指定允许访问的目录(可多次使用)

配置方式对比

方式优点缺点适用场景
uvx exec-dir-mcp✅ 无需安装
✅ 最简单❌ 需要 uv推荐使用
exec-dir-mcp✅ 已安装后直接使用❌ 需要先安装包已在环境中安装

配置文件位置

  • Claude Desktop:

- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - Windows: %APPDATA%\Claude\claude_desktop_config.json - Linux: ~/.config/Claude/claude_desktop_config.json

使用方法

作为 MCP 服务器运行

基本用法
# 使用 uvx(推荐)
uvx exec-dir-mcp

# 使用已安装的命令
exec-dir-mcp

# 使用模块方式
python -m exec_dir_mcp.main

# 指定默认目录
uvx exec-dir-mcp --dir /home/user/projects

# 指定默认目录和允许的目录列表
uvx exec-dir-mcp \
  --dir /home/user/projects \
  --allowed /home/user/projects \
  --allowed /tmp
命令行参数
  • --dir:默认工作目录(默认:当前目录)
  • --allowed:允许执行命令的目录(可多次指定,不指定则允许所有目录)
示例
# 在项目目录中运行,允许访问项目目录和临时目录
uvx exec-dir-mcp \
  --dir /home/user/my-project \
  --allowed /home/user/my-project \
  --allowed /tmp

# 安全模式:只允许特定目录
uvx exec-dir-mcp \
  --dir /safe/workspace \
  --allowed /safe/workspace/project1 \
  --allowed /safe/workspace/project2

在代码中使用

import asyncio
from exec_dir_mcp.main import MCPServer

async def main():
    # 创建服务器实例
    server = MCPServer(
        default_dir="/home/user/projects",
        allowed_dirs=["/home/user/projects", "/tmp"]
    )

    # 运行服务器
    await server.run()

asyncio.run(main())

MCP 工具

execute_command

在指定目录中执行命令。

参数
  • command (string, 必需):要执行的 shell 命令
  • working_dir (string, 可选):工作目录(默认使用配置的默认目录)
  • timeout (integer, 可选):超时时间,单位秒(默认:30)
返回值
{
  "success": true,
  "stdout": "命令标准输出",
  "stderr": "命令标准错误输出",
  "returncode": 0,
  "working_dir": "/执行目录",
  "command": "执行的命令"
}
错误响应
{
  "success": false,
  "error": "错误描述"
}
使用示例
# 通过 MCP 客户端调用
result = await client.call_tool("execute_command", {
    "command": "ls -la",
    "working_dir": "/home/user/projects",
    "timeout": 10
})

项目结构

exec-dir-mcp/
├── README.md                 # 项目文档
├── pyproject.toml           # 项目配置
├── .gitignore              # Git 忽略文件
├── .python-version         # Python 版本
├── src/
│   └── exec_dir_mcp/
│       ├── __init__.py      # 包初始化
│       ├── main.py          # 主程序逻辑
│       └── py.typed         # 类型提示标记

协议支持

  • MCP 版本:2024-11-05
  • JSON-RPC:2.0
  • 传输协议:标准输入/输出

安全说明

  1. 目录限制:强烈建议在生产环境中配置 --allowed 参数限制可访问的目录
  2. 命令执行:服务器会执行传入的任意 shell 命令,请确保客户端输入的安全性
  3. 超时保护:默认 30 秒超时,可通过 timeout 参数调整
  4. 路径验证:自动验证目录存在性和权限

开发

运行测试

uv run pytest

代码格式化

uv run ruff format .
uv run ruff check .

许可证

MIT License

作者

YunHai

贡献

欢迎提交 Issue 和 Pull Request!

更新日志

v1.0.2

  • 初始版本
  • 支持基本的命令执行功能
  • 支持目录权限控制
  • 支持超时配置
  • 完善文档和配置说明

工具与能力

工具数量

1

资源数量

0

提示词数量

0

能力标签

命令执行Python本地部署目录安全异步处理开发工具自动化脚本

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 只提供 1 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Exec Dir MCP

MCP World · 本页

1stdio有1 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Exec Dir MCP 怎么安装?

公开资料给出的安装命令是 pip install -e .,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Exec Dir MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Exec Dir MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Exec Dir MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Exec Dir MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP