🔄⚙️ YAML2MCP
一个VS Code扩展,可帮助您使用YAML配置文件管理MCP(模型上下文协议)服务器。此扩展提供了一个用户友好的界面来启动、停止和监视MCP服务器,自动将YAML配置转换为IDE所需的JSON格式。
特性
- 📝 YAML配置:使用干净、可读的YAML格式而不是JSON来管理MCP服务器
- 🚀 动态服务器管理:通过VS Code UI按需启动和停止MCP服务器
- 🔄 自动同步:自动将YAML转换为
mcp.jsonIDE兼容性格式 - 👀 视觉状态:在侧栏中一目了然地查看服务器状态(运行/停止/错误)
- 📊 多种配置:在单个YAML文件中管理多个MCP服务器配置
- 🔍 文件监视:自动检测对YAML配置文件的更改
安装
- 克隆或下载此存储库
- 在VS Code中打开项目
- 跑
npm install安装依赖项 - 按
F5启动新的“扩展开发主机”窗口 - 在新窗口中,扩展将处于活动状态
配置
YAML配置格式
创建一个 mcp.yaml 工作区根目录中的文件(或配置自定义路径):
version: "1.0"
servers:
my-mcp-server:
type: stdio
command: node
args:
- server.js
env:
NODE_ENV: production
API_KEY: your-api-key
disabled: false
autoApprove:
- execute_command
another-server:
type: stdio
command: python
args:
- -m
- mcp_server
env:
PYTHONPATH: /path/to/python
http-server:
type: http
url: http://localhost:8000
disabled: false
inputs: []配置字段
服务器配置(服务器对象):
- 服务器名称是
servers对象 - 类型 (必填):要么
stdio或http - 对于
stdio类型:
- 命令 (必填):执行命令(例如。, node, python, npm) - 参数 (可选):命令行参数数组 - 环境 (可选):环境变量作为键值对
- 对于
http类型:
- 网址 (必填):MCP服务器的HTTP URL
- 残疾的 (可选):用于禁用服务器的布尔值
- 自动批准 (可选):要自动批准的工具名称数组
- 禁用工具 (可选):要禁用的工具名称数组
输入:
- 输入 (可选):输入配置数组(默认情况下当前为空数组)
VS代码设置
您可以在VS代码设置中自定义路径:
{
"yaml2mcp.configPath": "${workspaceFolder}/mcp.yaml",
"yaml2mcp.mcpJsonPath": "${workspaceFolder}/.vscode/mcp.json"
}用法
启动服务器
- 打开 MCP服务器 视图(单击活动栏中的YAML2MCP图标)
- 右键单击已停止的服务器
- 选择 启动MCP服务器
服务器将启动 mcp.json 文件将自动更新以包含它。
停止服务器
- 在 MCP服务器 查看,右键单击正在运行的服务器
- 选择 停止MCP服务器
服务器将被停止,并将从中删除 mcp.json.
刷新视图
单击中的刷新图标 MCP服务器 查看标题以重新加载配置。
打开配置
单击中的配置图标 MCP服务器 查看标头以打开或创建YAML配置文件。
运作原理
- YAML配置:在YAML文件中定义所有MCP服务器(
mcp.yaml) - 运行时管理:扩展独立管理服务器进程
- JSON移植:生成的数据中只包含正在运行的服务器
mcp.json文件 - IDE兼容性:您的IDE读取
mcp.json文件与往常一样,但您通过YAML管理它
项目结构
yaml2mcp/
├── src/
│ ├── extension.ts # Main extension entry point
│ ├── types.ts # TypeScript type definitions
│ ├── configParser.ts # YAML configuration parser
│ ├── jsonTranspiler.ts # YAML to JSON transpiler
│ ├── processManager.ts # Process management (start/stop)
│ └── treeDataProvider.ts # Tree view UI provider
├── package.json
├── tsconfig.json
└── README.md发展
建筑
npm run compile观察变化
npm run watch测试
- 按
F5在VS代码中启动扩展开发主机 - 在新窗口中测试扩展
故障排除
服务器无法启动
- 检查YAML配置中的命令和参数是否正确
- 验证该命令在PATH中可用
- 检查VS代码输出面板是否有错误消息
配置未加载
- 确保YAML文件有效(检查语法错误)
- 验证VS Code设置中的文件路径是否与您的实际文件位置匹配
- 尝试刷新视图或重新加载窗口
JSON未更新
- 确保您对包含以下内容的目录具有写入权限
mcp.json - 检查设置中的路径是否正确
- 在VS代码输出面板中查找错误
许可证
麻省理工学院
贡献
欢迎投稿!请随时提交拉取请求。
