B

Bifrost语言服务

@biegehydra/BifrostMCP
0 Stars 39 次浏览 biegehydra 更新于 2026-08-23

一种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 编码助手时,它能够启用高级代码导航、分析和操作功能。

image

功能

  • 语言服务器集成:访问任何受支持语言的 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
    }
  }
}

Screenshot_78

按照此视频安装并使用光标。我还提供了可以在 .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 助手提供项目信息
  • 为每个项目使用专用端口
  • 将项目服务与其他运行实例隔离

示例配置

  1. 后端 API 项目:
{
    "projectName": "BackendAPI",
    "description": "Node.js REST API with TypeScript",
    "path": "/backend-api",
    "port": 5643
}
  1. 前端 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# 文件)

安装

  1. 从 VS Code 市场安装此扩展
  2. 安装你开发所需的语言特定扩展
  3. 在 VS Code 中打开你的项目

使用

激活扩展时,它会自动启动一个 MCP 服务器。要配置 AI 助手以使用此服务器:

  1. 服务器默认在端口 8008 上运行
  2. 配置你的 MCP 兼容 AI 助手以连接到:
    • SSE 端点:http://localhost:8008/sse
    • 消息端点:http://localhost:8008/message

可用命令

  • Bifrost MCP: 启动服务器 - 手动在 8008 端口启动 MCP 服务器
  • Bifrost MCP: 在指定端口启动服务器 - 手动在指定端口启动 MCP 服务器
  • Bifrost MCP: 停止服务器 - 停止正在运行的 MCP 服务器
  • Bifrost MCP: 打开调试面板 - 打开调试面板以测试可用工具

image

示例工具使用

查找引用

{
  "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: 打开调试面板 命令
image

故障排除

如果您遇到问题:

  1. 确保已为您的项目安装了适当的语言扩展
  2. 检查您的项目是否已在 VSCode 中正确加载
  3. 验证系统上的 8008 端口是否可用
  4. 检查 VSCode 输出面板中的任何错误消息

贡献

这里是 Vscodes 命令,如果您想添加额外的功能,请继续。我认为我们仍然需要重命名和其他一些功能。
请随时向 GitHub 仓库 提交问题或拉取请求。

许可

此扩展程序根据 APGL-3.0 许可证授权。

相关 MCP 服务