SuperAPI AI 工具集

jetbrains-index-mcp-plugin

IDE Index MCP Server 是一款 JetBrains IDE 插件,通过 Model Context Protocol(MCP)服务器,让 Claude、Codex、Cursor、Windsurf 等 AI 编程助手利用 IDE 的索引与重构能力。它提供查找引用、跳转定义、代码诊断、索引状态检查等通用工具,并根据语言插件提供类型层次、调用层次、查找实现、文件结构等扩展工具,以及重命名、安全删除、Java 转 Kotlin 等重构功能。插件支持多项目生命周期管理,可自动休眠与唤醒项目。支持 IntelliJ IDEA、PyCharm、WebStorm、GoLand、RustRover、Android Studio、PhpStorm 等,暂不支持 Rider。

访问官网

工具介绍

IDE Index MCP Server 是一个 JetBrains IDE 插件,它暴露一个 MCP(Model Context Protocol)服务器,使 Claude、Codex、Cursor、Windsurf 等 AI 编程助手能够利用 IDE 强大的索引和重构能力。

用途

让 AI 编程助手通过 MCP 访问 IDE 的代码智能功能,获得真正的语义理解、跨项目引用解析、多语言支持和安全重构操作,适用于对准确性和安全性有要求的 AI 辅助开发工作流。

主要能力

通用工具(所有支持的 JetBrains IDE)

  • Find References:定位项目中任意符号的所有用法
  • Go to Definition:跳转到符号声明
  • Code Diagnostics:访问错误、警告和快速修复
  • Index Status:检查代码智能是否就绪
  • Sync Files:外部文件更改后强制同步 VFS/PSI 缓存
  • Reload Project:依赖或构建文件更改后刷新关联的 Maven/Gradle 构建模型(默认禁用)
  • Import Modules:导入外部 Maven 项目目录作为模块,实现跨项目代码智能与重构(默认禁用)
  • Open Workspace:扫描根目录中的 Maven 项目,或提供 Maven 项目路径列表,在一个 IntelliJ 窗口中打开并实现完整跨项目代码智能(默认禁用)
  • Build Project:触发 IDE 构建并输出结构化的错误/警告(默认禁用)
  • Find Class:按名称快速搜索类/接口,支持驼峰匹配
  • Find File:使用 IDE 文件索引按名称快速搜索文件
  • Symbol Search:按名称查找代码符号,匹配 IntelliJ 的 Go to Symbol(默认禁用)
  • Search Text:使用 IntelliJ 的 Find in Files 进行文本搜索(子串和正则匹配)
  • Read File:按路径或限定名读取文件内容,包括库源码(默认禁用)
  • Open File:在编辑器中打开文件并可选择导航(默认禁用)
  • Get Active File:获取当前活动编辑器文件及光标位置(默认禁用)

扩展工具(语言感知)

根据已安装的语言插件激活:

  • Type Hierarchy:探索类继承链
  • Call Hierarchy:追踪方法/函数调用关系
  • Find Implementations:发现接口/抽象实现
  • Find Super Methods:导航方法重写层次
  • File Structure:查看类似 IDE Structure 视图的层级文件结构,包括 PHP Structure View 树和 Markdown 标题大纲,显示每个元素的起始和结束行(默认禁用)

重构工具

  • Rename Refactoring:安全重命名并自动重命名相关元素(getter/setter、重写方法),适用于所有语言,完全无头
  • Move File:在支持的情况下移动文件并更新引用和包
  • Reformat Code:按项目代码风格重新格式化并优化导入(默认禁用)
  • Optimize Imports:移除未使用的导入并整理导入,不做重新格式化(默认禁用)
  • Edit Member:用新内容替换整个成员声明(签名+主体)(Java/Kotlin,默认禁用)
  • Insert Member:在结构位置插入新成员(Java/Kotlin,默认禁用)
  • Replace Member:仅替换方法体或字段初始化器,保留签名(Java/Kotlin,默认禁用)
  • Safe Delete:检查使用情况后删除代码(仅 Java/Kotlin)
  • Java to Kotlin Conversion:使用 IntelliJ 内置转换器将 Java 转为 Kotlin(仅 Java)

项目生命周期管理

同时处理多个项目时,空闲项目会占用内存并保持编辑器打开。生命周期管理根据窗口焦点和 MCP 活动使项目休眠和唤醒,默认禁用,需在 Settings → Tools → Index MCP Server 中开启。自动休眠/唤醒状态为 active → background(开启省电)→ dormant(关闭编辑器标签页,释放 PSI 缓存)→ closed(完全卸载),下一次 MCP 调用时自动透明重开。 相关工具:

  • ide_project_status:所有打开和受管理项目的组合快照
  • ide_set_project_mode / ide_get_project_modes:显式模式控制
  • ide_release_project:将项目从生命周期管理中移出
  • ide_lifecycle_log:带触发原因的时间戳事件日志,用于诊断意外行为

使用方式

安装

  1. 通过 IDE 内置插件系统:Settings/Preferences > Plugins > Marketplace > 搜索 "IDE Index MCP Server" > Install
  2. 通过 JetBrains Marketplace:点击 Install to ... 按钮安装
  3. 手动安装:下载最新版本,Settings/Preferences > Plugins > ⚙️ > Install plugin from disk... 安装后重启 IDE,打开项目,MCP 服务器自动启动,并采用 IDE 特定默认值:IntelliJ IDEA 为 intellij-index 端口 29170,PyCharm 为 pycharm-index 端口 29172,WebStorm 为 webstorm-index 端口 29173。

配置 AI 助手

使用工具窗口中的 "Install on Coding Agents" 按钮最简便,也可手动配置。工具窗口位于底部面板 "Index MCP Server",可复制配置或监控命令。 "Install on Coding Agents" 按钮:点击后弹出两个区域——Install Now(用于 Claude Code CLI 和 Codex CLI,自动运行安装命令)和 Copy Configuration(用于其他客户端,复制 JSON 配置到剪贴板)。 客户端配置示例:

  • Claude Code CLI:使用按钮或运行命令(需调整名称和端口),--scope user 为全局,--scope project 为仅当前项目;移除命令 claude mcp remove <server-name>。
  • Codex CLI:移除命令 codex mcp remove <server-name>。
  • Cursor:将配置添加到项目根目录的 .cursor/mcp.json 或全局的 ~/.cursor/mcp.json。
  • Windsurf:将配置添加到 ~/.codeium/windsurf/mcp_config.json。
  • VS Code(Generic MCP):注意替换服务器名称和端口。 每个 JetBrains IDE 有唯一的默认端口和服务器名称,可同时运行多个 IDE 而不冲突。

支持情况

  • 已完全测试:IntelliJ IDEA、PyCharm、WebStorm、GoLand、RustRover、Android Studio、PhpStorm
  • 可能有效(未测试):RubyMine、CLion、DataGrip
  • 不支持:Rider(其 ReSharper 后端不暴露该插件依赖的 IntelliJ PSI API) 多语言支持:Java & Kotlin(IntelliJ IDEA、Android Studio)、Python(PyCharm 所有版本、带 Python 插件的 IntelliJ,包括基于符号的定义/引用查找)、JavaScript & TypeScript(WebStorm、IntelliJ Ultimate、PhpStorm)、Go(GoLand、带 Go 插件的 IntelliJ IDEA Ultimate)、PHP(PhpStorm、带 PHP 插件的 IntelliJ Ultimate)、Rust(RustRover、带 Rust 插件的 IntelliJ IDEA Ultimate、CLion)、Scala(带 Scala 插件的 IntelliJ IDEA,Scala 2 源码)、Markdown(在捆绑 Markdown 插件的 IDE 中提供标题大纲)。

限制

  • 服务器绑定到 127.0.0.1 且无身份验证,任何本地进程都可以使用你的 IDE 文件访问权限调用其工具。在单用户开发机上,这与 shell 已有的信任边界相同;在共享机器上,启用写入工具前值得权衡。
  • 部分工具默认禁用,需在 Settings > Tools > Index MCP Server > Exposed Tools 中启用。
  • Go 和 Rust 由于语言语义不暴露 ide_find_super_methods。
  • 应用重构会修改源文件,支持通过 Ctrl/Cmd+Z 撤销;dryRun: true 预览不会修改文件或创建撤销命令。
  • 符号句柄与导航:类、符号、引用、实现和父方法搜索返回不透明 symbolId 句柄;缓存搜索页在 PSI 编辑后仍标记为 stale: true;已删除的声明以及来自其他项目或服务器会话的句柄会被拒绝。
  • ide_file_structure 默认保留旧结构响应;使用 includeNodes=true 获取结构化声明,includeSymbolIds=true 获取精确句柄(隐含 includeNodes)。句柄分配可选,每次响应上限 100,可通过 maxSymbolIds(1–100)降低;大响应会报告 symbolIdsTruncated 和 symbolIdsOmitted。
  • 层级分页:不提供 maxNodes 或 cursor 时,调用/类型层次保留嵌套树和旧限制;显式分页返回有界广度优先页。
  • 第三方集成 opencode-jetbrains-index 由第三方维护,相关支持请使用其自己的问题追踪器。
  • 其他细节(如完整工具列表、各 IDE 默认端口表等)在资料中未完整展开,暂未提供。