Roslyn Codelens Mcp
Roslyn-based MCP server giving AI agents deep semantic understanding of .NET/C# codebases — 67 tools for navigation, call graphs, diagnostics & code fixes, safe…
- Transport
- Not stated
- Package
- —
- Registry id
- —
No install snippet on purpose. A working MCP config is a command, its arguments and an environment block — the last two are where API keys live, so this catalogue never stores them and cannot publish them. Follow the link above for the authors' own instructions.
A Roslyn-based MCP server that gives AI agents deep semantic understanding of .NET codebases — type hierarchies, call graphs, DI registrations, diagnostics, refactoring, and more.
Hosted deployment
A hosted deployment is available on Fronteir AI.
Features
- find_implementations — Find all classes/structs implementing an interface or extending a class
- find_callers — Find every call site for a method, property, or constructor
- find_event_subscribers — Every += / -= site for an event symbol, with resolved handler and subscribe/unsubscribe tag
- find_tests_for_symbol — List xUnit/NUnit/MSTest methods that exercise a production symbol; opt-in transitive walk through helpers
- get_test_summary — Per-project inventory of test methods with framework, attribute kind, data-row count, location, and production symbols referenced
- find_uncovered_symbols — Public methods and properties no test transitively reaches; sorted by cyclomatic complexity for prioritization
- generate_test_skeleton — Emit a compilable test-class skeleton (as text) for a method or type. Auto-detects xUnit/NUnit/MSTest; surfaces constructor dependencies as TodoNotes; returns a suggested file path. Closes the loop with
find_uncovered_symbols - get_type_hierarchy — Walk base classes, interfaces, and derived types
- get_di_registrations — Scan for DI service registrations. Reads generic (
AddSingleton<IFoo, Foo>()), single-generic,typeofpair and factory-lambda forms - get_instantiation_options — "How do I construct this type?" in one call: constructors with full parameter detail, static factory methods declared anywhere in the solution (including on a separate factory type), DI registrations, and
requiredmembers. PassfromProjectto learn whether that project can actually reach each option — it honoursInternalsVisibleTo, so it answers "can my test project call this internal constructor?" - get_project_dependencies — Get the project reference graph
- get_symbol_context — One-shot context dump for any type
- get_public_api_surface — Enumerate every public/protected type and member in production projects; flat, deterministically-sorted list suitable for API review or breaking-change baselines.
- find_breaking_changes — Diff the current API against a baseline JSON or DLL; report removed members, kind changes, and accessibility changes with Breaking/NonBreaking severity.
- find_reflection_usage — Detect dynamic/reflection-based usage
- get_exception_flow — What exceptions can escape a method: walks callees depth-bounded, propagates each throw up through every enclosing try/catch, and reports what still escapes with its propagation path; metadata callees contribute their documented exceptions
- find_throw_sites — Every place an exception type is thrown, optionally including derived types; rethrows flagged
- find_catch_blocks — Every catch for a type, optionally via base clauses; flags filtered, rethrowing, and empty (swallowing) handlers
- find_references — Find all references to any symbol (types, methods, properties, fields, events), each tagged with a kind (
read,write,readwrite,invocation,method_group,object_creation,cast,type_check,typeof,base_type,type_constraint,type_argument,declaration,attribute,nameof,xml_doc) and reported per occurrence with a column; filter server-side withkinds(e.g.["write","readwrite"]for mutation sites) - go_to_definition — Find the source file and line where a symbol is defined
- get_method_source — Full declaration source (XML docs, attributes, signature, body — original
From the project's README.