mcpField
C
C# Lang MCP Server

C# Lang MCP Server

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

关于 C# Lang MCP Server

这是一个 VS Code 扩展,提供基于 Roslyn 语言能力的 MCP 服务,并通过 HTTP/SSE 方式对外提供代码导航与分析工具。适合希望让 AI 编码工具使用 VS Code 语言服务的开发者。

主要功能

  1. 01通过 HTTP/SSE 提供 MCP 服务
  2. 02查找引用与跳转到定义
  3. 03获取悬停信息与文档符号
  4. 04支持工作区符号搜索
  5. 05提供重命名位置与代码操作

适用场景

  1. 01让 AI 助手查找某个符号的所有使用位置
  2. 02在大型项目中按符号名搜索代码
  3. 03为 AI 助手提供类型与调用关系信息

MCP 相关

该项目是 MCP 服务,向 MCP 客户端暴露 VS Code 语言功能对应的工具,例如 find_usages 和 go_to_definition。默认地址为 http://localhost:8008/sse。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Bifrost - VSCode 开发工具 MCP 服务

VSCode 扩展下载量

此 VS Code 扩展提供了一个模型上下文协议(MCP)服务,可将 VSCode 强大的开发工具和语言功能开放给 AI 工具。使用支持 MCP 协议的 AI 编码助手时,它可以提供高级代码导航、分析和处理功能。

图片

目录

功能

  • 语言服务器集成:访问 VSCode 为任何受支持语言提供的语言服务器功能
  • 代码导航:查找引用、定义、实现等
  • 符号搜索:在工作区中搜索符号
  • 代码分析:获取语义令牌、文档符号和类型信息
  • 智能选择:使用语义选择范围,实现智能代码选择
  • 代码操作:访问重构建议和快速修复
  • HTTP/SSE 服务:通过兼容 MCP 的 HTTP 服务开放语言功能
  • AI 助手集成:可与支持 MCP 协议的 AI 助手配合使用

使用

安装
  1. 从 VS Code 市场安装此扩展
  2. 安装开发所需的语言专用扩展
  3. 在 VS Code 中打开项目
配置

扩展激活时会自动启动 MCP 服务。若要配置 AI 助手使用此服务:

  1. 服务默认运行在端口 8008 上(可通过 bifrost.config.json 配置)
  2. 配置兼容 MCP 的 AI 助手连接到:
    • SSE 端点:http://localhost:8008/sse
    • 消息端点:http://localhost:8008/message
大模型规则

我还提供了可用于 .cursorrules 文件的规则示例,以获得更好的效果。

Cursor 规则示例

MDC 规则示例

Cline 安装
  • 步骤 1. 安装 Supergateway
  • 步骤 2. 将配置添加到 cline
  • 步骤 3. 它会显示为红色,但似乎可以正常工作
Windows 配置
{
  "mcpServers": {
    "Bifrost": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "supergateway",
        "--sse",
        "http://localhost:8008/sse"
      ],
      "disabled": false,
      "autoApprove": [],
      "timeout": 600
    }
  }
}
Mac/Linux 配置
{
  "mcpServers": {
    "Bifrost": {
      "command": "npx",
      "args": [
        "-y",
        "supergateway",
        "--sse",
        "http://localhost:8008/sse"
      ],
      "disabled": false,
      "autoApprove": [],
      "timeout": 600
    }
  }
}
Roo Code 安装
  • 步骤 1:将 SSE 配置添加到全局或基于项目的 MCP 配置中
{
  "mcpServers": {
    "Bifrost": {
      "url": "http://localhost:8008/sse"
    }
  }
}

截图_78

观看此视频,了解如何安装并与 cursor 配合使用

对于新版 CURSOR,请使用此代码
{
  "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:安全地获取项目中可执行重命名的位置。
  • rename:重命名符号。
  • 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# 扩展)
可用命令
  • Bifrost MCP: Start Server - 手动在端口 8008 上启动 MCP 服务
  • Bifrost MCP: Start Server on port - 手动在指定端口上启动 MCP 服务
  • Bifrost MCP: Stop Server - 停止正在运行的 MCP 服务
  • Bifrost MCP: Open Debug Panel - 打开调试面板以测试可用工具

image

Star 历史

Star History Chart

工具使用示例

查找引用
{
  "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"
  }
}

故障排除

如果遇到问题:

  1. 确保已为项目安装相应的语言扩展
  2. 检查项目是否已在 VSCode 中正确加载
  3. 确认系统上的端口 8008 可用
  4. 检查 VSCode 输出面板中是否有错误消息

贡献

如果你想添加更多功能,可以参考VS Code 命令并着手实现。我认为我们仍需要添加重命名功能和其他一些功能。 欢迎向 GitHub 仓库提交问题或拉取请求。

vsce package

调试

使用 MCP: Open Debug Panel 命令 图片

许可证

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

评论

支持 Markdown

第一次接触 MCP?

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

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