Bifrost语言服务
一种VS Code扩展提供了一个MCP服务器,该服务器暴露了Roslyn语言功能。它启用了查找用法、转到定义、快速信息等工具。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"Bifrost": {
"args": [
"/c",
"npx",
"-y",
"supergateway",
"--sse",
"http://localhost:8008/sse"
],
"autoApprove": [],
"command": "cmd",
"disabled": false,
"timeout": 600
}
}
}
该服务需要配置环境变量:PORT
服务介绍
Bifrost - VSCode Dev Tools MCP Server
这个 VS Code 扩展提供了一个模型上下文协议 (MCP) 服务器,它将 VSCode 强大的开发工具和语言特性暴露给支持 MCP 协议的 AI 工具。使用支持 MCP 协议的 AI 编码助手时,它能够启用高级代码导航、分析和操作功能。

功能
- 语言服务器集成:访问任何受支持语言的 VSCode 语言服务器功能
- 代码导航:查找引用、定义、实现等
- 符号搜索:在工作区中搜索符号
- 代码分析:获取语义标记、文档符号和类型信息
- 智能选择:使用语义选择范围进行智能代码选择
- 代码操作:访问重构建议和快速修复
- HTTP/SSE 服务器:通过与 MCP 兼容的 HTTP 服务器暴露语言特性
- AI 助手集成:准备好与支持 MCP 协议的 AI 助手一起工作
使用方法
Cline 安装
- 第一步. 安装 Supergateway
- 第二步. 向 cline 添加配置
- 第三步. 它会显示为红色,但似乎可以正常工作
{
"mcpServers": {
"Bifrost": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"supergateway",
"--sse",
"http://localhost:8008/sse"
],
"disabled": false,
"autoApprove": [],
"timeout": 600
}
}
}
按照此视频安装并使用光标。我还提供了可以在 .cursorrules 文件中使用的示例规则以获得更好的结果。
对于新版本的光标,请使用以下代码
{
"mcpServers": {
"Bifrost": {
"url": "http://localhost:8008/sse"
}
}
}
多项目支持
在处理多个项目时,每个项目都可以有自己的专用 MCP 服务器端点和端口。当您打开多个 VS Code 窗口或正在处理需要语言服务器功能的多个项目时,这非常有用。
项目配置
在您的项目根目录下创建一个 bifrost.config.json 文件:
{
"projectName": "MyProject",
"description": "Description of your project",
"path": "/my-project",
"port": 5642
}
服务器将使用此配置来:
- 创建项目特定的端点(例如,
http://localhost:5642/my-project/sse) - 向 AI 助手提供项目信息
- 为每个项目使用专用端口
- 将项目服务与其他运行实例隔离
示例配置
- 后端 API 项目:
{
"projectName": "BackendAPI",
"description": "Node.js REST API with TypeScript",
"path": "/backend-api",
"port": 5643
}
- 前端 Web 应用程序:
{
"projectName": "FrontendApp",
"description": "React frontend application",
"path": "/frontend-app",
"port": 5644
}
端口配置
每个项目应指定自己的唯一端口,以避免在运行多个 VS Code 实例时发生冲突:
bifrost.config.json文件中的port字段决定了服务器将使用哪个端口- 如果未指定端口,默认为 8008 以保持向后兼容性
- 为不同的项目选择不同的端口,以确保它们可以同时运行
- 如果配置的端口已被占用,服务器将无法启动,此时你需要:
- 释放该端口
- 在配置文件中更改端口号
- 关闭正在使用该端口的其他 VS Code 实例
连接到特定项目的端点
更新你的 AI 助手配置以使用特定项目的端点和端口:
{
"mcpServers": {
"BackendAPI": {
"url": "http://localhost:5643/backend-api/sse"
},
"FrontendApp": {
"url": "http://localhost:5644/frontend-app/sse"
}
}
}
向后兼容性
如果不存在 bifrost.config.json 文件,服务器将使用默认配置:
- 端口:8008
- SSE 端点:
http://localhost:8008/sse - 消息端点:
http://localhost:8008/message
这保持了与现有配置和工具的兼容性。
可用工具
扩展提供了许多 VSCode 语言功能,包括:
- find_usages: 定位所有符号引用。
- go_to_definition: 即时跳转到符号定义。
- find_implementations: 发现接口/抽象方法的实现。
- get_hover_info: 鼠标悬停时获取丰富的符号文档。
- get_document_symbols: 概述文件中的所有符号。
- get_completions: 上下文感知的自动完成。
- get_signature_help: 函数参数提示和重载。
- get_rename_locations: 跨项目安全地重命名符号。
- get_code_actions: 快速修复、重构和改进。
- get_semantic_tokens: 增强的高亮数据。
- get_call_hierarchy: 查看传入/传出调用关系。
- get_type_hierarchy: 可视化类和接口继承。
- get_code_lens: 内联洞察(引用、测试等)。
- get_selection_range: 代码块的智能选择扩展。
- get_type_definition: 跳转到底层类型定义。
- get_declaration: 导航到符号声明。
- get_document_highlights: 高亮显示符号的所有出现位置。
- get_workspace_symbols: 在整个工作区中搜索符号。
要求
- Visual Studio Code 版本 1.93.0 或更高版本
- 适用于你想要使用的语言的适当语言扩展(例如,C# 扩展用于 C# 文件)
安装
- 从 VS Code 市场安装此扩展
- 安装你开发所需的语言特定扩展
- 在 VS Code 中打开你的项目
使用
激活扩展时,它会自动启动一个 MCP 服务器。要配置 AI 助手以使用此服务器:
- 服务器默认在端口 8008 上运行
- 配置你的 MCP 兼容 AI 助手以连接到:
- SSE 端点:
http://localhost:8008/sse - 消息端点:
http://localhost:8008/message
- SSE 端点:
可用命令
Bifrost MCP: 启动服务器- 手动在 8008 端口启动 MCP 服务器Bifrost MCP: 在指定端口启动服务器- 手动在指定端口启动 MCP 服务器Bifrost MCP: 停止服务器- 停止正在运行的 MCP 服务器Bifrost MCP: 打开调试面板- 打开调试面板以测试可用工具

示例工具使用
查找引用
{
"name": "find_usages",
"arguments": {
"textDocument": {
"uri": "file:///path/to/your/file"
},
"position": {
"line": 10,
"character": 15
},
"context": {
"includeDeclaration": true
}
}
}
工作区符号搜索
{
"name": "get_workspace_symbols",
"arguments": {
"query": "MyClass"
}
}
调试
使用 MCP: 打开调试面板 命令

故障排除
如果您遇到问题:
- 确保已为您的项目安装了适当的语言扩展
- 检查您的项目是否已在 VSCode 中正确加载
- 验证系统上的 8008 端口是否可用
- 检查 VSCode 输出面板中的任何错误消息
贡献
这里是 Vscodes 命令,如果您想添加额外的功能,请继续。我认为我们仍然需要重命名和其他一些功能。
请随时向 GitHub 仓库 提交问题或拉取请求。
许可
此扩展程序根据 APGL-3.0 许可证授权。