Token导航 LogoToken导航TokenDH.com
dap MCP logo
开发工具stdio官方级别未说明来源级核验

dap MCP

MCP Server

dap-mcp是一个基于模型上下文协议(MCP)的调试适配器协议(DAP)会话管理工具,用于优化和扩展大型语言模型的上下文窗口,增强和简化调试工作流程。

工具数

0

提示词数

0

GitHub Stars

40

资源数

0
调试工具Python工作流优化

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

KashunCheng

提供方

KashunCheng

最后核验

2026/5/17 20:26

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install dap-mcp

详细介绍

dap-mcp

dap-mcp 是实现 模型上下文协议(MCP) 专为管理调试适配器协议(DAP)会话而定制。MCP提供了一个标准化的框架来优化和扩展大型语言模型的上下文窗口,在这个项目中,它用于增强和简化调试工作流程。

特性

  • 调试适配器协议集成: 使用标准化协议与调试器交互。
  • MCP框架: 利用MCP优化上下文并增强调试工作流程。
  • 丰富的调试工具: 设置、列出和删除断点;控制执行(继续,介入/退出/下一步);评估表达式;更改堆栈帧;并查看源代码。
  • 灵活配置: 通过JSON配置文件自定义调试器设置、源目录和其他参数。

安装

先决条件

  • Python 3.10或更高版本
  • 紫外线 (可选,用于运行服务器)

安装和运行服务器

安装 dap-mcp 及其依赖关系:

pip install dap-mcp
python -m dap_mcp --config config.json

# Or, if you have uv installed
uvx dap-mcp@latest --config config.json

配置

该项目使用JSON配置文件(例如。, .config.json)指定调试器设置和源目录。示例配置:

{
  "type": "debugpy",
  "debuggerPath": "/path/to/python/with/debugpy",
  "debuggerArgs": [
    "-m",
    "debugpy.adapter"
  ],
  // source directories for resolving file paths
  // if you always use absolute paths, you can omit this
  "sourceDirs": [
    "/path/to/source/code"
  ],
  // debugger-specific settings start here
  // configurations for debugpy can be found at
  // https://github.com/microsoft/debugpy/wiki/Debug-configuration-settings
  
  // you can use "program" instead of "module" to specify the program to debug
  "module": "pytest",
  // the python executable to use to run the debuggee
  "python": ["/path/to/python"],
  "cwd": "/path/to/working/directory"
}

此配置通知调试器:

  • 调试器可执行文件及其参数的路径。
  • 用于在断点操作期间解析文件路径的源目录。
  • 启动调试对象所需的其他设置(如模块、工作目录和解释器路径)。

可用调试器类型

类型示例路径示例参数
debugpy/usr/bin/python3["-m", "debugpy.adapter"]
LDB/usr/bin/lldb-dap[]

可用工具

该项目公开了几个可以通过MCP框架调用的工具:

  • 启动: 启动被调试程序。
  • 设定断点: 在指定的文件和行设置断点(带可选条件)。
  • remove_break点: 从指定的文件和行中删除断点。
  • list_all_断点: 列出调试器中当前设置的所有断点。
  • 继续执行: 遇到断点后继续执行程序。
  • step_in: 进入函数调用。
  • 步骤输出: 退出当前功能。
  • 下一页: 转到下一行代码。
  • 评估: 在当前调试上下文中计算表达式。
  • change_frame: 切换到其他堆栈帧。
  • view_file_around_line: 查看指定行周围的源代码(如果未指定,则使用最后提供的文件)。
  • 终止: 终止调试会话。

这些工具提供XML呈现的输出,以便与MCP客户端集成。

与其他DAP服务器一起扩展

要支持其他DAP服务器,您只需在 dap_mcp/config.py 文件。所有DAP配置都从基础扩展 DAPConfig 类。每个新的子类应该:

  • 定义一个唯一 type 值(使用a Literal)充当歧视者。
  • 包括特定于该调试器的任何其他字段或设置。

例如,要添加对名为“mydap”的假设DAP服务器的支持,您可以添加:

class MyDAP(DAPConfig):
    type: Literal["mydap"]
    # Add any additional settings for MyDAP here
    customSetting: Optional[str] = Field(
        None, description="A custom setting for MyDAP."
    )

创建新的配置类后,通过包含新类来更新用于调试器特定配置的联合类型。例如:

DebuggerSpecificConfig = Annotated[Union[DebugPy, MyDAP], Field(..., discriminator="type")]

现在,当您提供配置JSON时 "type": "mydap",它将使用您的新 MyDAP 类,您的DAP服务器扩展将完全集成。

贡献

欢迎投稿!贡献:

  1. 分叉存储库。
  2. 为您的功能或错误修复创建一个新分支。
  3. 编写测试并确保所有检查通过。
  4. 提交拉取请求。

请遵循编码指南,并在更改中包含适当的测试。

许可证

该项目根据AGPL-3.0许可证获得许可。请参阅 许可证 文件以获取详细信息。

目录标签

目录标签

调试工具Python工作流优化本地部署模型上下文协议DAP集成

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

来源信息

继续浏览同类 MCP