Token导航 LogoToken导航

MCP Server · 开发工具

Dotnet Debug MCP

一个通过DAP协议(netcoredbg)提供断点、运行、堆栈、变量、单步执行等功能的.NET调试服务器。

未说明官方级别未说明来源级核验工具 13
调试工具.NET开发C#Cursor

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
AI-Guiders
提供方
AI-Guiders

工具数量

13

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

Dotnet Debug MCP 属于开发工具类 MCP Server,公开资料标注 13 个工具,通过传输方式未标注接入,适配 Cursor,没有现成的安装命令;接入前先确认权限范围。

分类

开发工具

传输方式

未说明

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 13 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

DotnetDebugMcp

Автор: Дмитрий Каратаев (Dmitry Karataev)

MCP-сервер для отладки .NET (C#) через DAP (netcoredbg): брейкпоинты, запуск, стек, переменные, шаги, continue/stop.

Требования

  • .NET 10
  • netcoredbg; путь в переменной NETCOREDBG_PATH или в параметре netcoredbg_path при launch.

Сборка и запуск

cd dotnet-debug-mcp
dotnet build
dotnet run

Сервер работает по stdio (MCP-клиент запускает процесс и общается через stdin/stdout).

Публикация exe (для MCP в Cursor)

Быстрый локальный publish (рекомендуется)

publish-and-deploy.ps1 делает publish self-contained win-x64, зеркалит в фиксированный путь (по умолчанию D:\dotnet-debug-mcp) и гасит процесс, если он лочит файлы:

.\publish-and-deploy.ps1

Релизы (zip + GitLab upload)

scripts/publish-release-win.ps1 — мультиплатформенный сценарий (win/linux/osx): упаковка в zip и загрузка в GitLab Generic Packages/Release.

dotnet publish DotnetDebugMcp.csproj -c Release -o publish

В конфиге MCP укажи command — путь к DotnetDebugMcp.exe в папке publish, args — [].

Каталог тулов (автогенерация)

Полный список имён и текстов description — в docs/MCP-TOOLS.md; машиночитаемый манифест — mcp-tools.manifest.json. Обновление из корня репозитория dotnet-debug-mcp:

dotnet run --project tools/ExportMcpManifest -- --write

Инструменты

ИнструментОписание
debug_pingПроверка доступности сервера.
debug_set_breakpointsЗаписать брейкпоинты: workspace_path, target_path (.dll/.exe), breakpoints[] (file_path, line; опционально condition). Файл .dotnet-debug-mcp-breakpoints.json в workspace.
debug_list_breakpointsПоказать сохранённые брейкпоинты (по workspace, опционально по target_path).
debug_clear_breakpointsУдалить брейкпоинты (по workspace или по target_path).
debug_launchЗапустить отладку: workspace_path, target_path; опционально netcoredbg_path, program_args (массив строк — аргументы для целевой программы). Загружает брейкпоинты, передаёт в DAP setBreakpoints, ждёт первого события stopped (до 5 с).
debug_attachПодключиться к уже запущенному .NET-процессу по process_id (PID). workspace_path обязателен; опционально target_path (путь к .dll/.exe процесса) — тогда загружаются сохранённые брейкпоинты для этого target.
debug_continueПродолжить выполнение (DAP continue).
debug_step_overШаг через строку (DAP next).
debug_step_intoШаг в вызов (DAP stepIn).
debug_step_outШаг из кадра (DAP stepOut).
debug_stopЗавершить сессию (dispose клиента).
debug_stack_traceСтек вызовов текущего потока (DAP stackTrace). При необходимости сервер ждёт остановки (до 5 с) и повторяет запрос при временных ошибках.
debug_variablesПеременные кадра (frame_index=0 по умолчанию). Сначала запрос scopes по frameId, затем variables по variablesReference каждого scope (netcoredbg отдаёт переменные через scopes); при ошибке — fallback на variables(frameId).

Рекомендации по отладке

  • Собирай цель в Debug, не Release: путь к bin/Debug/net10.0/YourApp.dll в target_path и при set_breakpoints. Иначе брейкпоинты могут не срабатывать (пути в PDB).
  • Пути: file_path в брейкпоинтах и target_path могут быть относительными — они разрешаются относительно workspace_path, чтобы совпадать с путями в PDB при сборке из этого каталога.
  • Условный брейкпоинт: в debug_set_breakpoints у каждого брейкпоинта можно указать condition — выражение на C# (например i > 10, name == "test"). Остановка только когда условие истинно; удобно для цикла или часто вызываемого метода.
  • Если целевая программа без аргументов сразу выходит — передай program_args (например ["dummy"]), чтобы выполнение дошло до нужной строки.

Пример сценария

  1. debug_set_breakpoints — workspace_path, target_path (путь к .dll), breakpoints: [{ file_path, line: 7 }].
  2. debug_launch — те же workspace_path, target_path; при необходимости program_args.
  3. debug_stack_trace → стек.
  4. debug_variables → переменные (Locals и др. по scopes).
  5. debug_step_over → следующий шаг.
  6. debug_continue → продолжить.
  7. debug_stop → завершить сессию.

Поведение

  • После debug_launch сервер ждёт первое событие stopped (до 5 с); при таймауте пробует получить threadId через запрос threads.
  • При вызове debug_stack_trace, debug_variables, debug_step_* без остановки сервер ждёт следующее stopped (до 5 с).
  • При временных ошибках DAP (например «target is running», 0x80004005) запросы повторяются до 3 раз с паузой 250 ms.
  • Событие continued сбрасывает «текущий поток»; следующий stack_trace/variables снова ждут stopped.

Отпускание приложения

  • Чтобы приложение снова выполнялось после остановки на брейкпоинте — вызывай debug_continue. После этого можно снова вызывать stack_trace/variables (сервер будет ждать следующего stopped до 5 с).
  • debug_stop перед отключением отправляет continue целевой программе, чтобы она не оставалась зависшей. После stop сессия завершена; для новой отладки нужен снова debug_launch.
  • Перед пересборкой целевого проекта вызывай debug_stop: netcoredbg держит открытыми exe/dll и PDB целевого процесса; пока сессия активна, копирование PDB при сборке может падать (файл занят netcoredbg.exe).
  • В глубоких стеках debug_step_over / debug_step_into иногда могут оставить приложение без ответа; в таком случае вызови debug_stop (он сделает continue и отключится) или заверши процесс netcoredbg снаружи. При обрыве netcoredbg сервер сбрасывает сессию (OnConnectionLost) и не падает.

Планы (что не покрыто)

  1. ~~Проверить debug_step_into и debug_step_out, а также debug_stop после step~~ Проверено: step_into заходит в вызов (Main → Foo → Bar), step_out возвращает в вызывающий кадр (Bar → Foo → Main). debug_stop после step отрабатывает: continue и dispose без зависания.
  2. ~~Прогнать на практике условный брейкпоинт~~ Проверено: condition передаётся в DAP, остановка только при истинном условии (например i == 2 в цикле). При желании — прогнать program_args при launch.
  3. При желании — таймаут/отмена для DAP-запросов; уточнить в доке про параллельные вызовы stack_trace/variables.

Лицензия

MIT. См. LICENSE.

工具与能力

工具数量

13

资源数量

0

提示词数量

0

能力标签

调试工具C#本地部署DAP协议.NET开发断点调试变量查看

支持客户端

Cursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 工具数量 13 个,一次接入能覆盖的操作比单点工具更全。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 已经在用 Cursor 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Dotnet Debug MCP

MCP World · 本页

13未说明未标注1 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Dotnet Debug MCP 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Dotnet Debug MCP 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Dotnet Debug MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Dotnet Debug MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Dotnet Debug MCP 支持哪些客户端?

公开资料标注支持 Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP