功能描述
希望 debug-tools 能够支持 JetBrains IDEA 内置的 MCP Server(2025.2+),通过 com.intellij.mcpServer.mcpToolset 扩展点将现有的核心能力(调用任意 Java 方法、热重载、执行 Groovy 等)注册为 MCP Tools,使 AI 编程助手(如 OpenCode、Claude Code、Cursor 等)能够直接通过 MCP 协议调用这些能力,完成自动化方法测试。
背景
JetBrains IDEA 2025.2 已内置 MCP Server(bundled plugin com.intellij.mcpServer),并提供了扩展点机制让第三方插件注册自定义 MCP Tool:
<depends>com.intellij.mcpServer</depends>
<extensions defaultExtensionNs="com.intellij">
<mcpServer.mcpToolset implementation="com.example.YourToolset" />
</extensions>
class YourToolset : McpToolset {
@McpTool
@McpDescription("调用 Java 方法")
suspend fun invoke_java_method(
@McpDescription("类全限定名") className: String,
@McpDescription("方法名") methodName: String
): String {
val project = currentCoroutineContext().project
// 调用 debug-tools 已有的 Java API
return "result"
}
}
debug-tools 不需要自建 MCP Server,只需将自身能力注册到 IDEA 已有的 MCP 服务中即可。
使用场景
当前 AI 编码完成后的集成测试流程存在断点:
- AI 写完代码 → 需要通过 JetBrains 启动服务
- 服务启动后 → AI 无法直接调用项目中的 Java 方法来验证功能
- 只能依赖外部 HTTP 接口测试(如 Schemathesis),但很多业务逻辑并不暴露为 REST 接口
如果 debug-tools 将能力注册到 IDEA 内置 MCP Server,AI 可以:
- 直接调用任意 Service/DAO 方法完成单元测试级别的验证
- 通过 MCP 触发热重载,让代码修改立即生效
- 执行 Groovy 脚本获取运行时状态
- 形成完整的「编码 → 启动 → 方法测试 → 修复」闭环
建议暴露的 MCP Tools
| MCP Tool 名称 |
对应功能 |
输入参数 |
返回值 |
invoke_java_method |
调用任意 Java 方法 |
className, methodName, parameterTypes, args |
方法执行结果 |
hot_reload_class |
热重载指定类 |
className, classBytes |
重载成功/失败 |
execute_groovy |
执行 Groovy 脚本 |
script |
脚本执行结果 |
list_available_methods |
列出可调用的方法 |
className (可选) |
方法列表 |
get_bean_info |
获取 Spring Bean 信息 |
beanName |
Bean 类型、状态等 |
实现方案
- 依赖声明:在
build.gradle.kts 中添加 bundledPlugin("com.intellij.mcpServer")
- 扩展点注册:在
plugin.xml 中注册 <mcpServer.mcpToolset>
- Kotlin 桥接层:由于
@McpTool 注解和协程上下文是 Kotlin 特有的,需要编写 Kotlin Toolset 类,内部调用 debug-tools 已有的 Java API
- 安全控制:方法调用前增加确认机制或白名单配置,避免 AI 误调用危险方法
前提条件
- 用户需使用 IntelliJ IDEA 2025.2 或更高版本
- MCP Server 插件需启用(默认已启用)
- debug-tools 需声明
<depends>com.intellij.mcpServer</depends>
参考
功能描述
希望 debug-tools 能够支持 JetBrains IDEA 内置的 MCP Server(2025.2+),通过
com.intellij.mcpServer.mcpToolset扩展点将现有的核心能力(调用任意 Java 方法、热重载、执行 Groovy 等)注册为 MCP Tools,使 AI 编程助手(如 OpenCode、Claude Code、Cursor 等)能够直接通过 MCP 协议调用这些能力,完成自动化方法测试。背景
JetBrains IDEA 2025.2 已内置 MCP Server(bundled plugin
com.intellij.mcpServer),并提供了扩展点机制让第三方插件注册自定义 MCP Tool:debug-tools 不需要自建 MCP Server,只需将自身能力注册到 IDEA 已有的 MCP 服务中即可。
使用场景
当前 AI 编码完成后的集成测试流程存在断点:
如果 debug-tools 将能力注册到 IDEA 内置 MCP Server,AI 可以:
建议暴露的 MCP Tools
invoke_java_methodhot_reload_classexecute_groovylist_available_methodsget_bean_info实现方案
build.gradle.kts中添加bundledPlugin("com.intellij.mcpServer")plugin.xml中注册<mcpServer.mcpToolset>@McpTool注解和协程上下文是 Kotlin 特有的,需要编写 Kotlin Toolset 类,内部调用 debug-tools 已有的 Java API前提条件
<depends>com.intellij.mcpServer</depends>参考