by kooshi
A suite of MCP tools for AIs to analyze and modify C# solutions with high signal, Roslyn powered context.
# Add to your Claude Code skills
git clone https://github.com/kooshi/SharpToolsMCPSharpTools 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.
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.
In VS Code, set it as your copilot-instructions.md to have it included in every interaction.
The Tool Use Prompt is fomulated specifically for Github Copilot's Agent mode. It overrides specific sections within the Copilot Agent System Prompt so that it avoids the built in tools.
It is available as an MCP prompt as well, so within Copilot, you just need to type /mcp, and it should show up as an option.
Something similar will be necessary for other coding assistants to prevent them from using their own default editing tools.
I recommend crafting custom tool use prompts for each agent you use this with, based on their individual system prompts.
This is a personal project, slapped together over a few weeks, and built in no small part by its own tools. It generally works well as it is, but the code is still fairly ugly, and some of the features are still quirky (like removing newlines before and after overwritten members).
I intend to maintain and improve it for as long as I am using it, and I welcome feedback and contributions as a part of that.