GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Beschreibung vom Entwickler (englisches Original)
MCP server giving AI agents interactive .NET / ASP.NET Core debugging via netcoredbg + DAP.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"aspnetcore-debugger": {
"command": "dnx",
"args": [
"AspNetCoreDebuggerMcp",
"--yes"
]
}
}
}Führe das in deinem Terminal aus
claude mcp add aspnetcore-debugger -- dnx AspNetCoreDebuggerMcp --yesIn .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"aspnetcore-debugger": {
"command": "dnx",
"args": [
"AspNetCoreDebuggerMcp",
"--yes"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"aspnetcore-debugger": {
"type": "stdio",
"command": "dnx",
"args": [
"AspNetCoreDebuggerMcp",
"--yes"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 7. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto magna-nz bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.4.0) kam vor 2 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du .NET auf deinem Computer.
In derselben Kategorie: GitHub, Desktop Commander, Cloudflare MCP
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
An MIT-licensed [MCP](https://modelcontextprotocol.io/) server that lets an AI agent (Claude, etc.) debug your .NET / ASP.NET Core app — netcoredbg bundled for every platform, nothing extra to install.
Instead of *"I think the bug is around line 42, try this"*, the agent runs your code, pauses it, reads the actual runtime values, mutates state to test a fix, and answers grounded in what it actually saw.
You
GET /users/activereturns[], but I know there are active users in the DB. What's the
query actually doing?
Claude
I'll pause inside
UserRepository.GetActiveAsyncand read what EF Core actually sent.
`sql
SELECT u.*
FROM Users AS u
WHERE u.IsActive = 1 AND u.TenantId = @__tenantId_0
@__tenantId_0 = 0
`
The SQL is correct; the parameter is wrong.
TenantId = 0, but your tenants start at 1.
ICurrentUser.TenantIdis being read in the repository constructor — before the request
scope resolves it. Fix: read the tenant inside the query (or apply it via
HasQueryFilter
with
IHttpContextAccessor) instead of capturing it at construction.
You
/admin/usersis 401-ing for Anna, but her token looks valid to me. What does the auth
handler actually see?
Claude
I'll break inside
JwtBearerHandler.HandleAuthenticateAsyncafter her request lands.
`
Token signature: ✓ valid
Claims built:
name : anna
role : User
iss : https://auth.staging.example
aud : app-api
exp : 2026-05-26T14:12:00Z (not expired)
`
The token validates fine — but the claim is
role=User. Your endpoint is
[Authorize(Roles="Admin")]. So the 401 is correct: Anna isn't actually an admin yet
upstream. Either her IdP record needs updating, or this policy is wrong.
You
I think capping
discountat 100 fixes the bug. Test that hypothesis without me touching
the code.
Claude
I'll pause inside
ApplyDiscounton the next checkout and mutatediscountin place.
`
Paused at PricingService.cs:47
discount = 250 ← bug: two promos stacked
Set discount = 100, resumed.
Result:
subtotal = $400
final = $300
refund-service complaints: 0
`
Capping at 100 unblocks the flow downstream. Hypothesis confirmed — time to make the edit
for real and decide where the cap belongs (
ApplyDiscountitself, or upstream in
PromoEngine).
You
/reportshangs forever in staging. Attach and tell me why.
Claude
Attached. Ran
hang_analyze.
`
Thread 12 (HTTP request)
→ blockedOnTask at ReportService.cs:38 Task.Wait() on T#14
Thread 14 (worker)
→ blockedOnMonitor at SqlConnectionPool.cs:91
waiting for SqlConnection
(pool max=5, in-use=5)
`
Classic sync-over-async deadlock. Thread 12 calls
.Wait()on a task that itself needs to
open another
SqlConnectionfrom a fully-held pool. The connection it's holding can't be
released until the task completes; the task can't proceed until a connection frees up. Fix:
awaitall the way down inReportService, or don't hold a connection across the awaited
call.
You
GET /order/42takes 800ms. I don't want to set breakpoints all over — just show me where
the time is going.
Claude
I'll auto-instrument your order pipeline and fire the request. Each entry logs the
timestamp + arguments, then resumes — the code runs near-normal speed.
`
[+ 4ms] → OrderController.GetOrder() id=42
[+ 6ms] --→ OrderService.LookupOrder() id=42
[+ 9ms] ----→ OrderRepository.FetchById() id=42
[+ 14ms] ------→ SqlClient.ExecuteQuery() sql="SELECT * FROM orders WHERE id=42"
[+ 287ms] ----→ EnrichmentService.Enrich() raw="rows(...)"
[+ 781ms] ------→ HttpClient.PostAsync() url="https://crm.internal/enrich"
`
Time is in the CRM enrichment HTTP call — 500ms inside
HttpClient.PostAsync. DB itself
was 5ms. Worth caching
EnrichmentService.Enrichor moving it off the request path.
More examples →
Claude (MCP client)
│ MCP (stdio / JSON-RPC) ▼ aspnetcore-debugger-mcp ← this server │ DAP (Debug Adapter Protocol) ▼ netcoredbg ← Samsung's MIT-licensed .NET debugger, child process │ ICorDebug ▼ target .NET process
A protocol bridge with agent-friendly composites on top — exception_autopsy, stack_explore, hang_analyze, and the trace tools — that bundle multiple DAP requests into a single tool call.
dotnet tool install -g AspNetCoreDebuggerMcp --prerelease
The package bundles prebuilt netcoredbg for linux-x64, linux-arm64, win-x64, osx-x64, and osx-arm64 — no separate install needed.
claude mcp add aspnetcore-debugger -- aspnetcore-debugger-mcp
…or edit .mcp.json (project-scoped) / ~/.claude.json (global) / claude_desktop_config.json (Claude Desktop) directly:
{
"mcpServers": { "aspnetcore-debugger": { "command": "aspnetcore-debugger-mcp" } } }
3. **Just chat with Claude.** `/mcp` confirms it's connected. From there, describe what you want — *"why does this endpoint return null"* — and the agent picks the right tools.
Full install + troubleshooting →
Bundled netcoredbg binary is selected at runtime — no per-platform install dance.
| OS | Architectures | Status |
|---|---|---|
| Linux | x64, arm64 | ✅ Supported (Samsung prebuilt) |
| macOS | Intel (x64), Apple Silicon (arm64) | ✅ Supported (arm64 built by us, since Samsung doesn't ship one) |
| Windows | x64 | ✅ Supported (Samsung prebuilt) |
Requires the .NET 10 SDK on the host. The MCP server itself is a cross-platform .NET global tool — same install command everywhere.
| Category | Tools | What it's for |
|---|---|---|
| Session | debug_launch, debug_attach, debug_disconnect, debug_state | Start, attach to, or stop a debug session |
| Execution | debug_continue, debug_pause, debug_step, breakpoint_wait | Drive the debuggee and wait for it to stop |
| Breakpoints | breakpoint_set, breakpoint_set_function, breakpoint_set_exception, breakpoint_set_data, breakpoint_remove, breakpoint_list | Line, function, exception, and data breakpoints |
| Inspection | threads_list, stacktrace_get, variables_get, variables_set, evaluate, stack_explore | Examine and mutate program state |
| Exception Autopsy | exception_autopsy | One call: exception chain + top frames + locals + source snippet |
| Hang / Deadlock | hang_analyze | Auto-pause, classify each thread's blocking pattern (Monitor / Task / Semaphore / async / …) |
| Request Tracing | trace_start, trace_get, trace_stop | Server-side request tracing — auto-instrument a call chain and capture arguments at every entry |
| Process I/O | process_read_output | Drain the debuggee's stdout/stderr |
| Health | debugger_health | Quick check that netcoredbg loaded and the bundled binary is reachable |
Full tool reference with parameters →
| Project | License | Platforms | Approach | .NET |
|---|---|---|---|---|
| aspnetcore-debugger-mcp *(this)* | MIT | Linux + macOS + Windows | netcoredbg via DAP, ASP.NET-focused composites (request tracing, hang analysis) | Native, .NET 10 |
| debug-mcp | AGPL-3.0 | Linux only (Win/macOS planned) | ICorDebug direct, Roslyn code nav | Native, .NET 10 |
| mcp-debugger | — | Cross-platform | DAP | Via external debugger |
| dap-mcp | — | Cross-platform | DAP | Via external debugger |
| LLDB MCP | NCSA | Cross-platform | Native LLDB | No |
Different sweet spots: this project is the MIT, cross-platform option, with ASP.NET-flavoured composites on top of a DAP. debug-mcp goes deeper into runtime internals via ICorDebug but is Linux-only and AGPL today.
MIT — see LICENSE. Built on netcoredbg (MIT) and the ModelContextProtocol SDK (MIT).