Labsco
remleo logo

AmazingMCP — MCP Server for .NET / C# Codebases

from remleo

An MCP server that gives AI agents deep understanding of C# codebases via Roslyn — type search, dependency graphs, usage analysis, and architecture overviews, all from a live in-memory compilation.

🔥🔥🔥🔥✓ VerifiedFreeAdvanced setup

AmazingMCP — MCP Server for .NET / C# Codebases

NuGet License: MIT .NET 10

An MCP server that gives AI agents deep understanding of C# codebases via Roslyn — type search, dependency graphs, usage analysis, and architecture overviews, all from a live in-memory compilation.

MCP Tools

ToolDescription
query_symbolFind types, members (methods, properties, fields), extension methods, constants, and enum values across the solution and NuGet packages
get_type_detailsFull type info: properties, methods, base types, nested types (including NuGet)
query_usagesFind all usages of a type across the solution: method calls, constructor calls, property/field read and write, generic arguments and constraints, return types, parameter types, inheritance, nameof, typeof, is/as. Supports predicate filtering and scan scope control
read_cs_file_digestToken-efficient entry point for large .cs files (hundreds or thousands of lines): returns a structural outline — types and members with line numbers, no implementations. Use this first, then fetch only the members you need with read_large_cs_file
read_large_cs_fileRead specific member implementations from a .cs file by name filter — use after read_cs_file_digest to load only what's relevant instead of the entire file
decompile_typeDecompile any type from a NuGet assembly to C# source — no external tools required, ILSpy is built in
code_lensResolve fully-qualified types for any line range in a .cs file: local variables, field/property types, method call signatures, object creations, and declarations — all from the Roslyn semantic model
get_project_designHigh-level architecture map: abstraction groups by namespace and inter-group dependencies
get_project_design_detailsDetailed view of abstractions and implementations for specified namespaces (supports * wildcard)

Features

  • One server, any number of solutions — start it once and point it at any project per call, no restart needed when switching between solutions.
  • Live in-memory compilation — opens .sln/.slnx via MSBuild Workspaces and compiles all projects in memory. All tools run against a real Roslyn semantic model, not text search.
  • Incremental cache — workspace is cached with file watchers. .cs changes trigger incremental recompilation; .csproj/.sln changes invalidate the full cache. First call per solution is slow; subsequent calls are instant.
  • NuGet-aware — NuGet types are fully resolved and searchable alongside source types. query_symbol, get_type_details, and decompile_type work on any referenced package.

Documentation

Contributing

PRs and issues are welcome. Please open an issue before submitting a large change.

git clone https://github.com/remleo/AmazingMCP
cd AmazingMCP
dotnet build
dotnet test

License

MIT