Skip to content

IDEA MCP ​

把 JetBrains 系列 IDE(IntelliJ IDEA / PyCharm / WebStorm / GoLand 等)当作 MCP 服务器,暴露给 Claude Code、Codex、Cursor 等 AI 客户端,实现"AI 操作你的 IDE"。

作用说明 ​

启用 IDEA MCP 后,AI 客户端可以:

  • 读取当前打开的项目文件、目录树、符号定义
  • 用 IDE 引擎执行精确的代码搜索、重命名重构、格式化
  • 调用 IDE 的检查(Inspection)能力获取错误与警告
  • 启动 / 调试 Run Configuration,断点、单步、变量观察均可远程驱动
  • 在 IDE 终端执行命令、构建项目、运行测试

相比纯命令行 Agent,IDEA MCP 让 AI 拥有了"语言感知"能力(基于 PSI 树),改 Java/Kotlin/TS 复杂代码尤其稳。

环境要求 ​

  • IntelliJ IDEA / PyCharm 等 2025.2 及以上版本(内置 MCP Server 插件)
  • AI 客户端:Claude Code / Codex / Cursor 等任一
  • 同机连接通常不需要自行暴露公网端口,但仍需检查 IDE 与客户端的授权和工具权限

在 IDEA 中开启 MCP Server ​

  1. 打开设置:File → Settings(macOS:IntelliJ IDEA → Preferences)
  2. 进入 Plugins → Installed,确认 MCP Server 已勾选启用
  3. 进入 Tools → MCP Server,勾选 Enable MCP Server,阅读访问提示后确认
  4. 在 Clients Auto-Configuration 区域,点击对应客户端的 Auto-Configure 按钮:
    • Claude Code:自动写入 ~/.claude.json
    • Codex / Cursor / VS Code:各自写入对应配置文件
  5. 完全重启 AI 客户端,使配置生效

完成后,在 Claude Code 中输入 /mcp,应能看到 jetbrains 服务及其工具列表。

手动配置(可选) ​

如不使用 Auto-Configure,可手动写入 Claude Code 配置:

json
{
  "mcpServers": {
    "jetbrains": {
      "command": "npx",
      "args": ["-y", "@jetbrains/mcp-proxy"]
    }
  }
}

配置文件位置:

  • Windows:%USERPROFILE%\.claude.json
  • macOS / Linux:~/.claude.json

连接问题应先检查 MCP Server 是否启用、客户端配置是否写入、客户端是否重启和当前项目是否打开。调试器的“允许外部连接”选项不是启用 MCP Server 的必需步骤。

验证 ​

在 Claude Code 中输入:

列出当前 IDEA 打开项目的目录结构

如能返回真实文件树,说明 MCP 连接成功。

也可以直接试用以下能力:

  • "用 IDEA 的 inspection 检查 src/main/java/UserService.java 有哪些警告"
  • "把类 OrderDao 重命名为 OrderRepository,并修复所有引用"
  • "运行名为 AllUnitTests 的 Run Configuration,把失败用例列给我"

进阶:Debugger MCP ​

Debugger 工具由 Debugger MCP toolset 插件提供。请先在 Plugins → Installed 检查它是否启用,再在客户端的 MCP 工具列表中确认实际暴露了调试工具;不同 IDE 版本和版本授权可能影响可用能力。启用后可让 AI 帮你:

  • 设置 / 删除断点
  • 启动调试会话、单步执行、查看堆栈
  • 评估表达式、修改变量值

常见问题 ​

  • AI 看不到 jetbrains 服务:

    • 确认 IDEA 中 MCP Server 已启用且项目已打开
    • 确认 AI 客户端完全重启(后台进程也要退)
    • 检查 ~/.claude.json 是否包含 jetbrains 配置块
  • 多个 IDE 同时开:先确认客户端连接的是目标项目;排障时可以暂时只保留一个 IDE 实例

  • 执行被拒绝:AI 客户端通常会要求确认敏感操作,正常授权即可;若希望减少打断,可参考 fewer-permission-prompts 配置允许列表

参考链接 ​