プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

ASP.NET Core Debugger — MCP Server for AI Agents

作者:magna-nzバージョン 1.4.0i★ –iパソコンで動く
レジストリ名io.github.magna-nz/aspnetcore-debugger-mcp

インストール

概要

作者による説明(英語の原文)

MCP server giving AI agents interactive .NET / ASP.NET Core debugging via netcoredbg + DAP.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: 開発者ツール

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • レジストリには、入力が必要なキーは載っていません。

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "aspnetcore-debugger": {
      "command": "dnx",
      "args": [
        "AspNetCoreDebuggerMcp",
        "--yes"
      ]
    }
  }
}

ターミナルでこれを実行します

claude mcp add aspnetcore-debugger -- dnx AspNetCoreDebuggerMcp --yes

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "aspnetcore-debugger": {
      "command": "dnx",
      "args": [
        "AspNetCoreDebuggerMcp",
        "--yes"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "aspnetcore-debugger": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "AspNetCoreDebuggerMcp",
        "--yes"
      ]
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント magna-nz で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

開発者ツールのほかのサーバーとの比較i

  • このカテゴリのほかの1396件のうち0%よりスターが多い
  • このカテゴリのほかの1396件のうち49%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの1396件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

ASP.NET Core Debugger — MCP Server for AI Agentsは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(1.4.0)がレジストリに届いたのは2 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンに.NETも必要です。

代わりに使えるものは?

同じカテゴリには:GitHub, Desktop Commander, Cloudflare MCP

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

GitHub

作者:github

Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

パソコンでもクラウドでも★ 34,245MIT4 日前更新
インストール

Desktop Commander

作者:wonderwhy-er

MCP server for terminal commands, file operations, and process management

パソコンで動く★ 10,225MIT16 日前更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

ASP.NET Core Debugging MCP Server

The cross-platform .NET debugging MCP — runs on Linux, macOS, and Windows.

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.

Contents

  • See it in action — 5 conversations showing the agent at work
  • How it works — architecture diagram
  • Use it in 3 steps — install + register with Claude
  • Platforms — supported OS / architecture matrix
  • Tools (27) — full tool surface grouped by purpose
  • How this compares — vs. other .NET / DAP MCPs
  • Docs — install, examples, tool reference, limits
  • License

See it in action

Why is my EF Core query returning empty?

You

GET /users/active returns [], but I know there are active users in the DB. What's the

query actually doing?

Claude

I'll pause inside UserRepository.GetActiveAsync and 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.TenantId is 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.

Why is my JWT auth returning 401?

You

/admin/users is 401-ing for Anna, but her token looks valid to me. What does the auth

handler actually see?

Claude

I'll break inside JwtBearerHandler.HandleAuthenticateAsync after 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.

Test a fix without restarting

You

I think capping discount at 100 fixes the bug. Test that hypothesis without me touching

the code.

Claude

I'll pause inside ApplyDiscount on the next checkout and mutate discount in 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 (ApplyDiscount itself, or upstream in

PromoEngine).

My app is hung — what's actually blocking?

You

/reports hangs 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 SqlConnection from 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:

await all the way down in ReportService, or don't hold a connection across the awaited

call.

Where is a slow request actually spending its time?

You

GET /order/42 takes 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.Enrich or moving it off the request path.

More examples →

How it works

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.

Use it in 3 steps

  1. Install the tool — needs the .NET 10 SDK.
   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.

  1. Register with Claude — either the quick CLI command:
   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 →

Platforms

Bundled netcoredbg binary is selected at runtime — no per-platform install dance.

OSArchitecturesStatus
Linuxx64, arm64✅ Supported (Samsung prebuilt)
macOSIntel (x64), Apple Silicon (arm64)✅ Supported (arm64 built by us, since Samsung doesn't ship one)
Windowsx64✅ 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.

Tools (27)

CategoryToolsWhat it's for
Sessiondebug_launch, debug_attach, debug_disconnect, debug_stateStart, attach to, or stop a debug session
Executiondebug_continue, debug_pause, debug_step, breakpoint_waitDrive the debuggee and wait for it to stop
Breakpointsbreakpoint_set, breakpoint_set_function, breakpoint_set_exception, breakpoint_set_data, breakpoint_remove, breakpoint_listLine, function, exception, and data breakpoints
Inspectionthreads_list, stacktrace_get, variables_get, variables_set, evaluate, stack_exploreExamine and mutate program state
Exception Autopsyexception_autopsyOne call: exception chain + top frames + locals + source snippet
Hang / Deadlockhang_analyzeAuto-pause, classify each thread's blocking pattern (Monitor / Task / Semaphore / async / …)
Request Tracingtrace_start, trace_get, trace_stopServer-side request tracing — auto-instrument a call chain and capture arguments at every entry
Process I/Oprocess_read_outputDrain the debuggee's stdout/stderr
Healthdebugger_healthQuick check that netcoredbg loaded and the bundled binary is reachable

Full tool reference with parameters →

How this compares

ProjectLicensePlatformsApproach.NET
aspnetcore-debugger-mcp *(this)*MITLinux + macOS + Windowsnetcoredbg via DAP, ASP.NET-focused composites (request tracing, hang analysis)Native, .NET 10
debug-mcpAGPL-3.0Linux only (Win/macOS planned)ICorDebug direct, Roslyn code navNative, .NET 10
mcp-debugger—Cross-platformDAPVia external debugger
dap-mcp—Cross-platformDAPVia external debugger
LLDB MCPNCSACross-platformNative LLDBNo

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.

Docs

  • [Install & configure](docs/install.md) — 3 steps, both Claude Code & Desktop, troubleshooting
  • [What you can do with it](docs/examples.md) — 7 things you can ask Claude to do for you
  • [Full tool reference](docs/tools.md) — every parameter on every tool
  • [Known limits](docs/limits.md) — when *not* to use this tool, adapter & tracing limits
  • [macOS Apple Silicon — building netcoredbg](docs/macos-arm64.md)
  • [Contributing](docs/contributing.md) — repo layout, tests, dev loop

License

MIT — see LICENSE. Built on netcoredbg (MIT) and the ModelContextProtocol SDK (MIT).

PopNxに聞く