Java 调试器 MCP 服务器。使 AI 代理能够通过带有断点、栈追踪和变量检查的 JDI 对实时 Java 应用进行调试。
概览
JDB-MCP 是一款基于 Java 调试接口(JDI)的模型上下文协议(MCP)服务器。它使 AI 代理(如 Claude、Cline、Trae)能够对 Java 应用进行深度运行时调试。 - : 支持stdio(标准VSCode集成)和http(用于远程/卷度调试)。- : - 附加到正在运行的进程(debug_attach) - 支持任何启用JDWP的Java应用程序(如SpringBoot、Maven、Gradle等)。- 断点管理(debug_set_breakpoint、debug_set_watchpoint) - 流量控制(步入、步入、退出、恢复)- 状态检查(栈跟踪检查、深度结构变量遍历)- 线程和类检查(debug_list_threads、debug_list_classes)- 动态修改(运行时更改变量值)- :目前专注于单会话调试,消除复杂的sessionID管理需求。- : 目标Java应用程序必须手动启动并启用JDWP选项。
概述(AI 翻译)
中文版
JDB-MCP 是一款基于 Java 调试接口(JDI)的模型上下文协议(MCP)服务器。它使 AI 代理(如 Claude、Cline、Trae)能够对 Java 应用进行深度运行时调试。
演示
主要能力
- 多传输支持:支持
stdio(标准VSCode集成)和http(用于远程/卷调调试)。 - 全功能调试(仅附加模式):
- 附加到正在运行的进程(
debug_attach)——支持任何启用JDWP的Java应用程序(如SpringBoot、Maven、Gradle等)。 - 断点管理(
debug_set_breakpoint,debug_set_watchpoint) - 流量控制(跨步、步入、步出、恢复)
- 状态检测(堆栈跟踪检测,深度结构化变量遍历)
- 线程和类别检查(
debug_list_threads,debug_list_classes) - 动态修改(运行时更改变量值)
- 简化设计:目前专注于单会话调试,消除复杂的
sessionId管理需求。 - 需要手动调试模式:目标Java应用程序必须手动启动并启用JDWP选项。
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
JDB-MCP: Java Debugger MCP Server
JDB-MCP is a Model Context Protocol (MCP) server based on the Java Debug Interface (JDI). It enables AI agents (such as Claude, Cline, Trae) to perform deep runtime debugging of Java applications.
Demo
Key Capabilities
- Multi-transport Support: Supports both
stdio(standard VSCode integration) andhttp(for remote/curl debugging). - Full-featured Debugging (Attach Mode Only):
- Attach to running processes (
debug_attach) - Supports any Java application (SpringBoot, Maven, Gradle, etc.) with JDWP enabled. - Breakpoint management (
debug_set_breakpoint,debug_set_watchpoint) - Flow control (Step Over, Step Into, Step Out, Resume)
- State inspection (Stack trace inspection, deep structured variable traversal)
- Thread & Class inspection (
debug_list_threads,debug_list_classes) - Dynamic modification (Change variable values at runtime)
- Attach to running processes (
- Simplified Design: Currently focused on single-session debugging, eliminating the need for complex
sessionIdmanagement. - Manual Debug Mode Required: The target Java application must be started manually with JDWP options enabled.
- Real-time Awareness: Leveraging MCP Notifications, AI agents are immediately notified when a breakpoint is hit.
Installation & Build
Prerequisites
- JDK 17+ (with JDI module)
Build fatJAR
# Build all modules and generate JARs in the `release/` directory
mvn clean package
# Or build for a specific JDK version:
# For JDK 17+ (Recommended)
mvn clean package -pl jdb-mcp-jdk17 -am
# For JDK 7 (Legacy Support)
mvn clean package -pl jdb-mcp-jdk7 -am
The executable JARs will be located in the release/ directory:
release/jdb-mcp.jar(JDK 17+)release/jdb-mcp-jdk7.jar(JDK 7)
Configuration & Usage
Startup Options
--transport: Set transport mode (default:stdio).--notifications: Enable real-time AI notifications (default:true).
For detailed tool parameter analysis, please refer to the Parameter Guide.
Usage in VSCode (Cline/Claude Dev)
Add the following configuration to your MCP settings:
{
"mcpServers": {
"jdb-debugger": {
"command": "java",
"args": [
"-jar",
"path/to/jdb-mcp.jar"
]
}
}
}
How to Debug (Attach Mode)
Important: You must manually start your target Java application with JDWP enabled.
- Start your project:
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 -jar your-app.jar - In the AI chat, request:
Attach to localhost:5005 and debug...
Tool List
debug_attach: Attach to an existing debug port via Socket.debug_list_threads: List all threads and their status.debug_list_classes: List loaded classes with optional filtering.
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"jdb-debugger": {
"command": "java",
"args": [
"-jar",
"path/to/jdb-mcp.jar"
]
}
}
}