使用说明
MCP开发容器
MCP服务器,用于devcontainer,直接从devcontainer.json配置文件生成和配置开发容器。
📌 条件
这个项目是用Node.js构建的。对于当地发展,您可以:
- 安装
Node.js在您的机器上,或 - 使用提供的 devcontainer 虚拟环境。
您可以在不安装的情况下运行该项目 Node.js 本地使用 npx:
npx -y mcp-devcontainers
Docker是必需的 在执行环境中:
- 对于 本地MCP服务器:在本地计算机上安装Docker
- 对于 远程MCP服务器:在远程服务器上安装Docker
📦 Docker安装指南:https://docs.docker.com/get-started/get-docker/
🚀 入门指南
- 构建:
npm run build-将TypeScript编译为JavaScript - 观看模式:
npm run watch-根据文件更改自动重建 - 准备发布:
npm run prepare-准备软件包以供发布 - 运行ESLint:
npm run lint-执行ESLint进行代码验证 - 修复ESLint问题:
npm run lint:fix-自动修复ESLint错误
✨ MCP传输
选项1-启动STDIO服务器
启动MCP服务器 stdio传输
npm start
选项2-启动SSE服务器
使用以下命令运行MCP服务器 服务器发送事件传输 在…上 https://{your-domain}/sse
npm start sse
选项3-启动流式HTTP服务器
使用启动MCP服务器 可流式HTTP传输 在…上 https://{your-domain}/mcp
npm start http
📚 工具
工具是建立在 devcontainers/cli
它们使您能够直接从以下位置生成和配置开发容器 devcontainer.json 配置文件:
devcontainer_up
在指定的工作区文件夹中初始化并启动devcontainer环境。确保devcontainer正常运行,并为开发任务做好准备。
-
输入参数
名称 必填 类型 描述 workspace文件夹 ⚫ string 工作区文件夹的路径 outputFilePath ⚪ string 输出日志的路径 -
退货
带有devcontainer启动信息的文本内容
devcontainer_run_user_commands
在指定工作区的devcontainer中执行用户定义的postCreateCommand和postStartCommand脚本。使用此选项可在容器启动后运行安装或初始化任务。
-
输入参数
名称 必填 类型 描述 workspace文件夹 ⚫ string 工作区文件夹的路径 outputFilePath ⚪ string 输出日志的路径 -
退货
命令执行结果的文本内容
devcontainer_exec
在指定工作区的devcontainer中运行自定义shell命令。可用于在devcontainer环境中执行任意命令或脚本。
-
输入参数
名称 必填 类型 描述 workspace文件夹 ⚫ string 工作区文件夹的路径 outputFilePath ⚪ string 输出日志的路径 命令 ⚫ string[] 作为字符串数组执行的命令 -
退货
命令执行结果的文本内容
devcontainer_cleanup
运行docker命令以清理所有devcontainer环境。
-
输入参数
不适用
-
退货
删除了Docker进程ID的文本内容
devcontainer_list
运行docker命令列出所有devcontainer环境。
-
输入参数
不适用
-
退货
当前devcontainer Docker进程状态的文本内容
devcontainer_workspace_folders
运行find命令以获取具有devcontainer配置的所有工作区文件夹。
-
输入参数
名称 必填 类型 描述 根路径 ⚪ string 用于在其子目录中搜索包含devcontainer配置的所有工作区文件夹的路径。 -
退货
指定根路径下所有工作区文件夹的文本内容。
🧑💻 快速体验/试用
对于那些想在没有本地Docker设置的情况下快速尝试此项目的开发人员,我们建议使用GitHub Codespace:
然后按照以下步骤设置试用环境:
-
等待浏览器中的环境初始化
-
安装依赖项:
npm install -
启动服务:
npm start http码空间将自动提供转发端口(例如。,https://ominous-halibut-7vvq7v56vgq6hr5p9-3001.app.github.dev/)
-
制作
forwarded port公众可访问(位于VSCode的右侧Terminal选项卡) -
连接使用 mcp检查员 通过流式HTTP
npx -y @modelcontextprotocol/inspector对于可流式传输的HTTP连接,请记住附加
/mcp到URLdevcontainer_up启动容器通常需要相当长的时间。如果你想在一次响应交互中收到结果,你需要同时增加Request Timeout和那个Maximum Total Timeout在Configuration的mcp-inspector
对于不支持远程URL的MCP客户端,请使用以下替代配置:
{
"mcpServers": {
"Devcontainer": {
"command": "npx",
"args": ["mcp-remote", "https://ominous-halibut-7vvq7v56vgq6hr5p9-3001.app.github.dev/mcp"]
}
}
}
🤝 贡献
我们欢迎对这个项目做出任何贡献,包括功能增强、UI改进、文档更新、测试用例完成和语法更正。我相信一个真正的开发人员可以编写比人工智能更好的代码,所以如果你对代码实现的某些部分有疑虑,可以随时分享你的建议或提交拉取请求。
请查看我们的 行为准则。它始终有效。我们希望每个为这个项目做出贡献的人都能对此感到荣幸。
有关更多信息,请参阅 贡献指南
🐞 打开一个问题
在创建问题之前,请检查您是否使用的是项目的最新版本。如果您不是最新的,请先查看更新是否解决了您的问题。
🔒 报告安全问题
查看我们的 安全策略。不要提交安全漏洞的公开问题。
⭐ 鸣谢
作者: @AIQL.com.
📜 许可证
该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。