关于 roslyn-mcp
roslyn-mcp 是面向本地工作区的 MCP 服务,可对 C# 解决方案和项目进行语义分析、导航、验证与重构,适用于开发者和编码 Agent。重构采用预览令牌流程,可先检查多文件改动,再应用修改。
主要功能
- 01语义分析 C# 解决方案和项目
- 02导航代码并验证工作区
- 03应用前预览重构
- 04支持构建和测试工作流
- 05选择性注册稳定工具
适用场景
- 01理解 C# 解决方案中的符号
- 02修改代码前检查诊断结果
- 03应用前审查多文件重构
MCP 相关
以 stdio 方式运行 MCP 服务,提供 C# 工作区操作所需的工具、资源和提示词。客户端可通过其目录和资源模板了解可用功能。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
基于 Roslyn 的 MCP 服务
一款本地优先的 MCP(Model Context Protocol)服务,可在实际的 .sln / .slnx / .csproj 工作区中进行 C# 语义分析、导航、验证和重构。它使用 Roslyn 和 MSBuildWorkspace,通过 stdio 运行,且无需 Visual Studio。重构工具采用“预览 → 应用”流程:预览会返回短期有效的令牌,因此 Agent 可以先试运行多文件编辑,再修改工作区。它以 .NET 全局工具、Claude Code 插件和可从源码构建的 stdio 主机形式发布。
正确的包 ID:
Darylmcd.RoslynMcp· CLI:roslynmcp· 插件:roslyn-mcp@roslyn-mcp-marketplace
快速开始
前提条件:.NET 10 SDK。
选项 A — 安装为全局工具
dotnet tool install -g Darylmcd.RoslynMcp
稍后可使用 dotnet tool update -g Darylmcd.RoslynMcp 更新。
首次使用前请配置文件系统边界。 全局工具仅包含二进制文件,不包含配置;若未设置边界,则会默认拒绝访问:所有需要路径的工具都会拒绝输入。 在 MCP 客户端配置中设置
ROSLYNMCP_SANCTIONED_ROOTS(例如项目范围内的.mcp.json):{ "mcpServers": { "roslyn": { "type": "stdio", "command": "roslynmcp", "env": { "ROSLYNMCP_SANCTIONED_ROOTS": "." } } } }
.会相对于服务进程的工作目录解析,该目录由 MCP 客户端选择;如需固定边界,请使用绝对路径。请参阅设置。
选项 B — 通过 dnx 零安装(.NET 10)
dnx 会按需从 NuGet 解析软件包,无需安装全局启动器:运行 dnx Darylmcd.RoslynMcp。如需确保设置可重现,请使用 Darylmcd.RoslynMcp@<version> 固定版本。按上文配置相同的 ROSLYNMCP_SANCTIONED_ROOTS 边界;可复制粘贴的配置位于 docs/mcp-json-examples/,详情请参阅设置。
选项 C — Claude Code 插件
/plugin marketplace add darylmcd/Roslyn-Backed-MCP
/plugin install roslyn-mcp@roslyn-mcp-marketplace
该插件捆绑了 32 个技能和安全钩子,随后通过 dnx 启动与其版本完全匹配的 Darylmcd.RoslynMcp 软件包;无需全局 roslynmcp 启动器。首次启动时需要访问 NuGet,除非软件包已缓存。插件捆绑的 "." 边界会相对于会话的工作目录解析,因此请在要分析的仓库中启动 Claude Code;其他受支持的覆盖设置请参阅设置。
按客户端配置
所有 MCP 客户端的 JSON 结构相同(VS Code 使用顶层 "servers" 键);只有配置文件路径不同。各客户端对应的路径和健康检查提示词请参阅兼容性矩阵,可直接复制的代码片段请参阅 docs/mcp-json-examples/。
实时功能目录
当前版本提供 175 个工具(113 个稳定版 / 62 个实验性)、14 个资源(9 个稳定版 / 5 个实验性)和 20 个提示词(全部为实验性)。
请使用正在运行的服务获取权威的实时目录和支持级别:
server_info:获取人类可读的摘要roslyn://server/catalog:获取机器可读的契约roslyn://server/resource-templates:获取资源 URI 模板
稳定版系列包括工作区/会话管理、语义导航、诊断、构建/测试辅助工具,以及预览/应用重构流程。实验性系列包括更广泛的项目修改、脚手架、编排、直接文本编辑辅助工具和提示词。设置 ROSLYNMCP_TOOL_TIERS=stable,即可仅注册封闭的稳定工作流(目前有 94 个可调用工具),供会主动加载工具定义的客户端使用。
配置与安全
所有操作设置都是可选的 ROSLYNMCP_* 环境变量,并带有内置默认值;完整参考见 docs/setup.md。例外情况是必须设置 ROSLYNMCP_SANCTIONED_ROOTS(见上文)。
加载解决方案或项目会执行 MSBuild 评估:请仅加载你信任的仓库,或在沙箱中运行服务。文件系统边界由服务管理;客户端的 MCP Roots 只能进一步收窄该边界。请参阅 docs/setup.md 和 SECURITY.md,了解漏洞披露政策。要从 2.x 升级?请先阅读迁移说明。
文档
- docs/README.md —
docs/下所有内容的索引 - docs/setup.md — 打包、安装选项、配置、安全模型、插件安装、CI 产物
- docs/compatibility.md — MCP 客户端兼容性矩阵和健康检查
- docs/stdio-client-integration.md — 自定义 MCP 客户端集成
- docs/product-contract.md — 稳定版与实验性功能契约
- docs/release-policy.md — 发布门槛和兼容性规则
- CONTRIBUTING.md — 从源代码构建、测试,以及提交功能界面测试结果
- AGENTS.md — 在此仓库中工作的 AI Agent 的引导入口
- ai_docs/README.md — AI 文档的规范路由索引
支持
- Bug 和功能请求:GitHub Issues
- 贡献指南:CONTRIBUTING.md
- 安全问题披露:SECURITY.md
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。