项目简介
'roslyn-analyzers' 项目主要提供自定义的 C# Roslyn 诊断分析器,用于在开发过程中提供实时代码反馈和自动代码修复。除了核心的分析器功能,该仓库还包含一个 MCP(Model Context Protocol)服务器,旨在自动化常见的开发任务,从而提高开发效率。
主要功能点
该 MCP 服务器的核心功能在于:
- 自动化开发任务:管理并执行与项目开发相关的自动化任务,如构建(dogfooding builds, strict building)。
- 测试执行:支持自动化地执行项目中的单元测试。
- 文件导航:辅助进行项目文件的导航操作,提供数据访问能力。
- 上下文服务:作为后端,通过标准协议(JSON-RPC)向 LLM 客户端提供项目上下文信息和调用外部功能的能力。
安装步骤
MCP 服务器的运行依赖于 'tools/mcp' 目录下的脚本。由于这是 .NET 项目,你需要确保已安装 .NET SDK。
- 克隆仓库:
首先,通过 Git 克隆 'roslyn-analyzers' 仓库到你的本地机器:
git clone https://github.com/philips-software/roslyn-analyzers.git cd roslyn-analyzers - 运行服务器:
进入仓库目录后,使用提供的脚本启动 MCP 服务器。该脚本位于 'tools/mcp/' 目录下:
服务器启动后,将根据其实现监听特定端口或通过标准 I/O 与 MCP 客户端通信。./tools/mcp/start_mcp_server.sh
服务器配置
MCP 服务器的配置通常由 MCP 客户端来管理。MCP 客户端需要提供服务器的启动命令和相关参数以建立连接。以下是一个可能的 JSON 配置示例,供 MCP 客户端参考:
{ "serverName": "RoslynAnalyzers_MCP_Server", "command": "./tools/mcp/start_mcp_server.sh", "args": [], "description": "用于与 Roslyn Analyzers 项目交互的 MCP 开发辅助服务器。" }
- 'serverName': 服务器的标识名称,你可以自定义一个易于识别的名称。
- 'command': 启动 MCP 服务器的脚本路径。根据仓库信息,应指向 './tools/mcp/start_mcp_server.sh'。
- 'args': 启动脚本可能需要的额外参数(例如,指定监听端口或日志级别)。根据仓库信息,默认情况下启动脚本不需要额外的参数。
- 'description': 对 MCP 服务器功能的简要描述,帮助用户理解其用途。
基本使用方法
启动 MCP 服务器后,它将等待兼容 MCP 协议的客户端(如 LLM 应用)的连接和请求。作为开发者,你通常不需要直接与服务器的命令行界面交互。你可以通过配置你的 LLM 客户端,使其与此 MCP 服务器通信,从而:
- 请求项目资源:例如,获取特定代码文件的内容、项目文件列表或项目结构信息。
- 调用工具功能:通过 LLM 客户端指令触发 MCP 服务器上的工具,例如执行一次项目构建、运行单元测试或启动特定的代码分析流程。
- 获取 Prompt 模板:如果 MCP 服务器定义了 Prompt 模板,LLM 客户端可以获取并利用这些模板来生成代码、提供建议或执行其他定制化的 LLM 交互。
MCP 客户端将通过 JSON-RPC 协议与服务器通信,利用服务器提供的上下文和工具来辅助你的开发工作,实现更智能、更高效的开发体验。
信息
分类
开发者工具