mcpField
M
Mcp Server Aibd Devcontainer

Mcp Server Aibd Devcontainer

本地服务
github.com/gergelyszerovay开发工具081 周前更新

关于 Mcp Server Aibd Devcontainer

Mcp Server Aibd Devcontainer 为 DevContainer 中的 AI 辅助开发提供文件系统工具,适合在容器化开发环境中与 AI 助手协作。它通过只读计划模式、执行模式和目录限制管理文件访问风险。

主要功能

  1. 01读取、写入和编辑文件
  2. 02浏览目录树并搜索文件
  3. 03计划与执行两种操作模式
  4. 04限制可访问目录
  5. 05可选启用 Shell 命令执行
  6. 06支持 SSE、REST API 和 stdio

适用场景

  1. 01在 DevContainer 中检查项目文件
  2. 02让 AI 助手修改容器内代码
  3. 03限制文件操作范围并先行规划
  4. 04按需启用容器中的 Shell 命令

MCP 相关

该 MCP 服务向客户端提供文件、目录和模式管理工具,也可选提供 Shell 执行工具。支持 stdio,且可启用 SSE 传输和 REST API。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"aibd-devcontainer": {
"command": "npx",
"args": [
"-y",
"@gergelyszerovay/mcp-server-aibd-devcontainer"
]
}
}
}
启动命令npx -y @gergelyszerovay/mcp-server-aibd-devcontainer

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@gergelyszerovay/mcp-server-aibd-devcontainer

工具

12

收录的工具列表 · 更新于 3 周前

此工具无需参数。

详细介绍

在 DevContainers 中借助 AI 提升开发效率

专为增强 DevContainer 环境中的 AI 辅助开发而设计的 MCP 服务。它提供文件系统操作和工具,促进 AI 助手与容器化开发环境之间的无缝协作。文件系统操作基于 Anthropic 的 Filesystem MCP 服务。

安装

要以最简单的方式开始在 devcontainer 中进行 AI 辅助开发,请按照 AIBD Devcontainer Repository 中的安装步骤操作。该仓库提供预先配置好的开发容器设置,并已集成 MCP 服务。

步骤包括:

  1. 克隆 aibd-devcontainer 仓库
  2. 在 VS Code 中打开,并使用 “Reopen in Container” 功能
  3. 配置 Claude 以连接到 MCP 服务
  4. 开始借助 AI 辅助进行开发

预先配置好的设置会处理 MCP 服务、端口转发和文件访问权限的所有配置细节。

功能

  • 完整的文件系统操作(读取、写入、编辑等)
  • 目录树
  • 文件搜索和元数据检索
  • 用于安全控制的 Plan 和 Act 操作模式
  • 允许访问的目录限制,保障安全
  • 支持 SSE(Server-Sent Events)传输,特别适合 Docker 化环境
  • REST API
  • 可选的 Shell 命令执行功能(默认禁用)

API

工具
文件读取
  • read_multiple_files
    • 同时读取多个文件
    • 输入:
      • paths(string[]):要读取的文件路径
    • 返回:
      • 包含文件路径和内容的数组
文件写入/修改
  • write_file

    • 创建新文件,或完全覆盖现有文件
    • 输入:
      • path(string):写入文件的路径
      • content(string):要写入文件的内容
    • 返回:
      • 确认消息
    • 注意:仅在 "mcpAct" 模式下可用
  • edit_file

    • 按行编辑文本文件
    • 输入:
      • path(string):要编辑的文件路径
      • edits(array):编辑操作数组
      • dryRun(boolean):预览更改,但不写入文件
    • 返回:
      • 显示更改内容的 Git 风格差异
    • 注意:仅在 "mcpAct" 模式下可用
目录操作
  • create_directory

    • 创建新目录,或确保目录存在
    • 输入:
      • path(string):要创建的路径
    • 返回:
      • 确认消息
    • 注意:仅在 "mcpAct" 模式下可用
  • directory_tree

    • 获取文件和目录的递归树形视图
    • 输入:
      • path(string):根路径
      • depth(number,可选):递归的最大深度(默认值:1)
    • 返回:
      • 表示目录树的 JSON 结构
文件管理
  • move_file

    • 移动或重命名文件和目录
    • 输入:
      • source(string):源路径
      • destination(string):目标路径
    • 返回:
      • 确认消息
    • 注意:仅在 "mcpAct" 模式下可用
  • delete_multiple_files

    • 在单次操作中删除多个文件
    • 输入:
      • paths(string[]):要删除的路径
    • 返回:
      • 包含成功和失败详情的报告
    • 注意:仅在 "mcpAct" 模式下可用
实用工具
  • search_files

    • 递归搜索与模式匹配的文件和目录
    • 输入:
      • path(string):开始搜索的根路径
      • pattern(string):要搜索的模式
      • excludePatterns(string[]):要排除的模式
    • 返回:
      • 匹配的文件路径数组
  • get_file_info

    • 获取文件或目录的详细元数据
    • 输入:
      • path(string):要获取信息的路径
    • 返回:
      • 详细的文件元数据(大小、日期、权限等)
  • list_allowed_directories

    • 返回服务允许访问的目录列表
    • 输入:无
    • 返回:
      • 允许访问的目录路径数组
Shell 操作
  • shell_exec
    • 在 Shell 中执行命令,并以结构化数据形式返回输出
    • 输入:
      • command(string):要执行的命令
      • timeout(number,可选):最长执行时间,单位为毫秒(默认值:5000)
    • 返回:
      • 包含以下属性的 JSON 对象:
        • stdout(string):命令的标准输出
        • stderr(string):命令的标准错误输出
        • exitCode(number):命令的退出代码(成功时为 0,失败时为非零值)
    • 注意:
    • 仅当服务使用 --enableShellExecTool 标志启动时可用
    • 仅在 "mcpAct" 模式下可用
    • 超时时间可配置,最长为 300 秒
模式管理
  • get_mode

    • 获取当前运行模式
    • 输入:无
    • 返回:
      • 当前模式("mcpAct" 或 "mcpPlan")
  • set_mode

    • 设置运行模式
    • 输入:
      • mode(string):要切换到的模式("mcpAct" 或 "mcpPlan")
    • 返回:
      • 确认消息

与 Claude Desktop 配合使用

将以下内容添加到 claude_desktop_config.json:

{
  "mcpServers": {
    "aibd": {
      "command": "npx",
      "args": [
        "-y",
        "@gergelyszerovay/mcp-server-aibd-devcontainer",
        "--allowedDirectories=/your/allowed/path"
        // Add "--enableShellExecTool" here if you want to enable shell command execution
      ]
    }
  }
}

命令行选项

MCP server with filesystem tools.

Options
  --enableHttpTransport         Enable HTTP transport [default: false]
  --enableStdioTransport        Enable stdio transport [default: true]
  --enableRestServer            Enable REST API server [default: false]
  --enableShellExecTool              Enable shell execution tool [default: false]
  --mcpHttpPort=<port>          Port for MCP HTTP server [default: 3001]
  --restHttpPort=<port>         Port for REST HTTP server [default: 3002]
  --allowedDirectories=<path>   Allowed directories for filesystem access (multiple, required)
  --initialMode=<mode>          Initial operation mode: mcpAct or mcpPlan [default: mcpAct]
  --help                        Show this help message

Examples
  $ mcp-fs --allowedDirectories=. --enableHttpTransport
  $ mcp-fs --allowedDirectories=/home/user/projects --mcpHttpPort=3005 --restHttpPort=3006
  $ mcp-fs --allowedDirectories=/path/to/dir1 --allowedDirectories=/path/to/dir2
  $ mcp-fs --allowedDirectories=. --initialMode=mcpPlan
  $ mcp-fs --allowedDirectories=. --enableShellExecTool

安全与部署

运行模式

该服务实现了两种运行模式:

  • mcpPlan 模式:只读探索模式,允许模型分析环境而不进行更改
  • mcpAct 模式:执行模式,授予对系统修改功能的完整访问权限

这种区分为文件系统提供了一道安全屏障,防止意外修改。

目录限制

所有操作都限制在启动时明确指定的允许目录内。尝试访问这些目录之外的文件将导致错误。

Shell 执行安全

Shell 执行工具默认禁用,必须使用 --enableShellExecTool 标志显式启用。启用后,它会提供多项安全功能:

  • 仅在 "mcpAct" 模式下可用,规划模式下不可用
  • 可配置超时时间,防止进程长时间运行
  • 输出大小限制,防止响应内容过多
  • 完整报告命令结果及退出代码
  • 分别提供 stdout 和 stderr 流,便于诊断
  • 处理命令执行失败的错误

警告:启用 Shell 执行后,模型将能够在您的系统上执行任意命令。允许执行之前,请务必仔细检查 AI 生成的命令。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。