RefactorMCP
Automated refactoring tools for C# code transformation using Roslyn.
RefactorMCP
RefactorMCP is a Model Context Protocol server that exposes Roslyn-based refactoring tools for C#.
Usage
Run the console application directly or host it as an MCP server:
dotnet run --project RefactorMCP.ConsoleApp
For usage examples see EXAMPLES.md.
Available Refactorings
- Extract Method – create a new method from selected code and replace the original with a call (expression-bodied methods are not supported).
- Introduce Field/Parameter/Variable – turn expressions into new members; fails if a field already exists.
- Convert to Static – make instance methods static using parameters or an instance argument.
- Move Static Method – relocate a static method and keep a wrapper in the original class.
- Move Instance Method – move one or more instance methods to another class and delegate from the source. If a moved method no longer accesses instance members, it is made static automatically. Provide a
methodNameslist along with optionalconstructor-injectionsandparameter-injectionsto control dependencies. - Move Multiple Methods (instance) – move several methods and keep them as instance members of the target class. The source instance is injected via the constructor when required.
- Move Multiple Methods (static) – move multiple methods and convert them to static, adding a
thisparameter. - Make Static Then Move – convert an instance method to static and relocate it to another class in one step.
- Move Type to Separate File – move a top-level type into its own file named after the type.
- Make Field Readonly – move initialization into constructors and mark the field readonly.
- Transform Setter to Init – convert property setters to init-only and initialize in constructors.
- Constructor Injection – convert method parameters to constructor-injected fields or properties.
- Safe Delete – remove fields or variables only after dependency checks.
- Extract Class – create a new class from selected members and compose it with the original.
- Inline Method – replace calls with the method body and delete the original.
- Extract Decorator – create a decorator class that delegates to an existing method.
- Create Adapter – generate an adapter class wrapping an existing method.
- Add Observer – introduce an event and raise it from a method.
- Use Interface – change a method parameter type to one of its implemented interfaces.
- List Tools – display all available refactoring tools as kebab-case names.
Metrics and summaries are also available via the metrics:// and summary:// resource schemes.
Contributing
- Run
dotnet testto ensure all tests pass. - Format the code with
dotnet formatbefore opening a pull request.
License
Licensed under the Mozilla Public License 2.0.
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Greb-MCP
Semantic code search for AI agents without indexing your codebase or storing any data. Fast and accurate.
Unreal Engine Code Analyzer
Analyzes Unreal Engine source code to provide context for AI assistants.
Xcode
Tools for Xcode project management, building, testing, archiving, code signing, and iOS development utilities.
mobile-device-mcp
MCP server for AI-powered mobile device control — 26 tools for screenshots, UI inspection, touch interaction, and AI visual analysis. Supports Anthropic Claude & Google Gemini.
Plugged.in
A comprehensive proxy that combines multiple MCP servers into a single MCP. It provides discovery and management of tools, prompts, resources, and templates across servers, plus a playground for debugging when building MCP servers.
Remote MCP Server (Authless)
An example of a remote MCP server without authentication, deployable on Cloudflare Workers.
Universal Infinite Loop MCP Server
A goal-agnostic parallel orchestration framework implementing Infinite Agentic Loop patterns as a Model Context Protocol (MCP) server.
Contract Inspector
Retrieve on-chain information for EVM contracts locally using an Ethereum RPC node and Etherscan API.
MCP HAR Server
Parses HAR (HTTP Archive) files and displays requests in a simplified format for AI assistants.
Lucide Icons
Provides access to the Lucide icon library for use in LLM and agentic applications.