
SharpTools
Built around the Roslyn compiler platform, this server gives Claude surgical C# codebase modification capabilities that go way beyond text manipulation. You get precise member addition, symbol renaming with reference updates, FQN-based navigation, and automatic Git branching for every change. It can pull source code from SourceLink, decompile assemblies when needed, and handles complexity analysis through the same APIs Visual Studio uses. The author runs it standalone as a complete coding assistant, and it's designed to work with any .NET project from Framework to modern versions. Includes custom prompts for GitHub Copilot integration.
- GitHub stars
- 197
- tools
- 21
- last updated
- Dec 15, 2025
Tools
21 toolsPublic tool metadata for what this MCP can expose to an agent.
SharpTool_LoadSolutionInitializes the workspace with a given .sln file. This is the primary entry point.
Initializes the workspace with a given .sln file. This is the primary entry point.
No parameter schema in public metadata yet.
SharpTool_LoadProjectProvides a detailed structural overview of a specific project within the loaded solution, including namespaces and types, to aid AI understanding of the project's layout.
Provides a detailed structural overview of a specific project within the loaded solution, including namespaces and types, to aid AI understanding of the project's layout.
No parameter schema in public metadata yet.
SharpTool_GetMembersLists members (methods, properties, etc.) of a type, including signatures and XML documentation.
Lists members (methods, properties, etc.) of a type, including signatures and XML documentation.
No parameter schema in public metadata yet.
SharpTool_ViewDefinitionDisplays the source code of a symbol (class, method, etc.), including contextual information like call graphs or type references.
Displays the source code of a symbol (class, method, etc.), including contextual information like call graphs or type references.
No parameter schema in public metadata yet.
SharpTool_ListImplementationsFinds all implementations of an interface/abstract method or derived classes of a base class.
Finds all implementations of an interface/abstract method or derived classes of a base class.
No parameter schema in public metadata yet.
SharpTool_FindReferencesLocates all usages of a symbol across the solution, providing contextual code snippets.
Locates all usages of a symbol across the solution, providing contextual code snippets.
No parameter schema in public metadata yet.
SharpTool_SearchDefinitionsPerforms a regex-based search across symbol declarations and signatures in both source code and compiled assemblies.
Performs a regex-based search across symbol declarations and signatures in both source code and compiled assemblies.
No parameter schema in public metadata yet.
SharpTool_ManageUsingsReads or overwrites using directives in a document.
Reads or overwrites using directives in a document.
No parameter schema in public metadata yet.
SharpTool_ManageAttributesReads or overwrites attributes on a specific declaration.
Reads or overwrites attributes on a specific declaration.
No parameter schema in public metadata yet.
SharpTool_AnalyzeComplexityPerforms complexity analysis (cyclomatic, cognitive, coupling, etc.) on methods, classes, or projects.
Performs complexity analysis (cyclomatic, cognitive, coupling, etc.) on methods, classes, or projects.
No parameter schema in public metadata yet.
SharpTool_ReadRawFromRoslynDocumentReads the raw content of a file (indentation omitted).
Reads the raw content of a file (indentation omitted).
No parameter schema in public metadata yet.
SharpTool_CreateRoslynDocumentCreates a new file with specified content.
Creates a new file with specified content.
No parameter schema in public metadata yet.
SharpTool_OverwriteRoslynDocumentOverwrites an existing file with new content.
Overwrites an existing file with new content.
No parameter schema in public metadata yet.
SharpTool_ReadTypesFromRoslynDocumentLists all types and their members defined within a specific source file.
Lists all types and their members defined within a specific source file.
No parameter schema in public metadata yet.
SharpTool_AddMemberAdds a new member (method, property, field, nested type, etc.) to a specified type.
Adds a new member (method, property, field, nested type, etc.) to a specified type.
No parameter schema in public metadata yet.
SharpTool_OverwriteMemberReplaces the definition of an existing member or type with new code, or deletes it.
Replaces the definition of an existing member or type with new code, or deletes it.
No parameter schema in public metadata yet.
SharpTool_RenameSymbolRenames a symbol and updates all its references throughout the solution.
Renames a symbol and updates all its references throughout the solution.
No parameter schema in public metadata yet.
SharpTool_FindAndReplacePerforms regex-based find and replace operations within a specified symbol's declaration or across files matching a glob pattern.
Performs regex-based find and replace operations within a specified symbol's declaration or across files matching a glob pattern.
No parameter schema in public metadata yet.
SharpTool_MoveMemberMoves a member from one type/namespace to another.
Moves a member from one type/namespace to another.
No parameter schema in public metadata yet.
SharpTool_UndoReverts the last applied change using Git integration.
Reverts the last applied change using Git integration.
No parameter schema in public metadata yet.
SharpTool_RequestNewToolAllows the AI to request new tools or features, logging the request for human review.
Allows the AI to request new tools or features, logging the request for human review.
No parameter schema in public metadata yet.
Sponsors
Readme
SharpTools: Roslyn Powered C# Analysis & Modification MCP Server
SharpTools is a robust service designed to empower AI agents with advanced capabilities for understanding, analyzing, and modifying C# codebases. It leverages the .NET Compiler Platform (Roslyn) to provide deep static analysis and precise code manipulation, going far beyond simple text-based operations.
SharpTools is designed to give AI the same insights and tools a human developer relies on, leading to more intelligent and reliable code assistance. It is effectively a simple IDE, made for an AI user.
Due to the comprehensive nature of the suite, it can almost be used completely standalone for editing existing C# solutions. If you use the SSE server and port forward your router, I think it's even possible to have Claude's web chat ui connect to this and have it act as a full coding assistant.
Prompts
The included Identity Prompt is my personal C# coding assistant prompt, and it works well in combination with this suite. You're welcome to use it as is, modify it to match your preferences, or omit it entirely.
Details
- Repository
- github.com/kooshi/sharptoolsmcp