Bring Visual Studio-style C# fixes and refactorings to your AI agent with local Roslyn Code Actions.
The C# fixes and refactorings you use in Visual Studio 2026—now available to your AI coding agent.
Roslyn Workbench MCP gives your agent access to Roslyn Code Actions and compiler-aware C# analysis through a local MCP server. Your agent can discover applicable fixes and refactorings, apply the compiler-generated changes, and show you the result before writing source files. It uses the same .NET Compiler Platform that powers Visual Studio's C# tooling.
Over 230 eligible built-in Roslyn Code Fix and refactoring providers sit behind one discovery and staging workflow. Ask your agent to:
These are Roslyn-generated changes, selected for your actual code and project configuration—not instructions for an agent to imitate a refactoring with text replacements. See the Code Action guide for discovery, Fix All and staging.
The provider count is not a count of individual actions: a provider can offer multiple choices, and applicability depends on the code, diagnostics and project configuration. Actions requiring interactive option dialogs, package installation or unsupported project-system changes are excluded; this is not complete Visual Studio feature parity.
The built-in reference catalogue contains 57 MCP tool definitions covering navigation, analysis, Code Actions and workspace management. The live tool set depends on operational mode, configuration and enabled plugins; the three Code Action tools expose many applicable fixes and refactorings without adding one MCP tool per provider.
Source changes are staged through transactions with preview, history, rollback, conflict detection and crash recovery. Code Actions and symbol renames use the same transaction boundary: nothing writes source files until an explicit transaction commit. In approval-required mode, review is bound to an exact-change receipt.
The server runs locally over stdio, with workspace analysis and refactoring performed on your machine. Inspection-only is the default; you choose when to enable source changes. Builds, tests and Git commits remain part of your normal development workflow.
Roslyn Workbench is distributed through NuGet.org as the Lantean.Roslyn.Workbench.Mcp .NET tool and requires a supported .NET 10 SDK. Pin the exact release version you intend to run. The compatibility policy defines the stable 1.x guarantees for tools, errors and continuations, recovery formats and plugin APIs.
Run an exact package version without a permanent installation:
dnx Lantean.Roslyn.Workbench.Mcp@VERSION --yes -- --version
Alternatively, install the same package as a global tool with dotnet tool install --global Lantean.Roslyn.Workbench.Mcp --version VERSION.
See the documentation site for installation and MCP client configuration.
Configure any MCP client capable of launching a local stdio process to run:
{
"command": "roslyn-workbench-mcp",
"args": [
"--operational-mode", "inspection-only",
"--state-directory", "/absolute/path/to/roslyn-workbench-state"
]
}
inspection-only is the safe default and exposes no source-mutation or transaction tools. Select transactional for client-mediated commit confirmation, approval-required for confirmation bound to an exact transaction-review receipt, or deliberately select autonomous-trusted for transactions without Host confirmation. See the configuration guide for client elicitation requirements.
Windows x64, Linux x64 and WSL2 x64 are supported. macOS x64 and ARM64 are best effort until hosted validation exists. Windows ARM64 and Linux ARM64 are not currently supported release targets. The server can be used by any MCP client that supports local stdio servers; operations requiring elicitation depend on the client advertising and permitting it.
Connecting Roslyn Workbench makes its tools available, but an MCP client may not select them automatically when ordinary file and text-search tools can also attempt the task. Short repository instructions can tell an agent when compiler-aware tooling is the better choice without forcing it into every C# workflow.
Add this basic instruction to the user-level guidance used by your agent, or to repository guidance when it should apply only to a particular codebase:
## Roslyn Workbench
When Roslyn Workbench MCP is available, consider using it for C# work that benefits from compiler semantics, including precise symbol navigation, references, diagnostics, code structure, Code Actions, change-impact analysis and transactional source changes. Its semantic tools are particularly useful when symbol identity or compiler interpretation matters, while the repository's normal tools and commands remain suitable for builds, tests, package management, documentation and non-semantic file operations. Transaction previews and structured next actions can help keep source changes safe and easy to review.
The documentation site explains user-level and repository-level setup for Codex, GitHub Copilot, Claude Code and other MCP clients. User-level guidance avoids repeating the instruction when Roslyn Workbench is available across repositories, while repository guidance can provide a more specific layer for an individual codebase.
Open only workspaces you trust. Loading a workspace evaluates MSBuild project logic and later operations can load project analyzers with the Host process's operating-system permissions. External plugin loading is disabled by default; supplying --enable-plugins explicitly opts into loading configured third-party plugins as trusted in-process code, which is not sandboxed.
A typical safe workflow when transactional or autonomous-trusted mode is configured is:
server-status and open a trusted solution, solution filter or project with workspace-open.workspace-status, then begin a transaction with transaction-start.transaction-preview.transaction-rollback.The live MCP tools/list response is authoritative for the tools and schemas exposed by a running instance. The documentation site provides the richer versioned tool reference and agent guide.
Plugin authors reference the separate Lantean.Roslyn.Workbench.Mcp.Plugins package. See the plugin-authoring guide for the supported API and deployment layout. Users install trusted plugins manually; there is no curated plugin repository.
External pull requests are accepted. Discuss the scope first and sign every contributed commit with a cryptographic signature that GitHub can verify. See the contribution policy for the process.
Roslyn Workbench MCP is made possible by the .NET Compiler Platform. Thank you to the Roslyn team for building and maintaining the compiler tooling that powers its semantic analysis and refactoring capabilities.
Thank you to Sentry for supporting the project with an open-source licence for its opt-in error-reporting service.
Roslyn Workbench MCP is licensed under the MIT License.
This listing does not have a supported local package template. Use the maintainer’s documentation for its hosted endpoint, authentication, and client-specific setup. No install command has been inferred.
Roslyn Workbench MCP works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.