Token导航 LogoToken导航

MCP Server · 开发工具

Jetbrains MCP Code Navigator

IntelliJ IDEA插件,通过MCP协议向AI编码助手提供Java代码导航功能,支持项目源码和Maven依赖的语义分析。

未说明官方级别未说明来源级核验工具 3
Kotlin代码分析Claude

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
Ackermangg
提供方
Ackermangg

工具数量

3

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

Jetbrains MCP Code Navigator 属于开发工具类 MCP Server,公开资料标注 3 个工具,通过传输方式未标注接入,适配 Claude,没有现成的安装命令;接入前要先准备 访问 Token。

分类

开发工具

传输方式

未说明

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 3 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

公开资料仍需确认:安装命令

详细介绍

Code Navigator MCP Plugin

IntelliJ IDEA 插件,基于 IDEA 的 PSI(Program Structure Interface)代码分析引擎,通过 MCP 协议向 AI 编码助手暴露 3 个聚合式 Java 代码导航工具。

绝对前提

当前工具是面向ai agent工具的,一切改动都要考虑是否对ai agent和大模型友好,如果用户没考虑到也要主动提出

解决的问题

在大型 Java 项目中使用 AI 编码助手时,常见痛点:

  • 大文件上下文浪费:3000+ 行的 Service 文件,仅导航就消耗 15,000–20,000 token
  • 缺少方法级读取:无法只获取目标方法体,必须读取整个文件
  • 调用链分析困难:文本搜索无法精确追踪方法调用关系
  • 语义理解不足:grep getUserById 返回 50 个调用点 + 12 个注释,无法区分定义与引用

本插件通过 PSI 语义分析解决上述问题,让 AI 助手可以像 IDE 一样理解代码结构。

核心优势:完整覆盖 Maven 依赖

与其他代码导航工具只能分析项目源码不同,本插件直接复用 IntelliJ 的索引引擎,项目源码和 Maven 仓库中的依赖 JAR 统一可查:

# 读取 hutool JAR 中的方法实现
java_inspect(operation="method_body", className="cn.hutool.core.util.StrUtil", methodName="isEmptyIfStr", includeBody=true)

# 查看 Spring KafkaTemplate 的方法列表
java_inspect(operation="class_structure", className="org.springframework.kafka.core.KafkaTemplate")

这意味着当项目代码调用第三方库时,AI 助手可以直接读取库方法的实现,无需手动反编译或切换工具。filePath 字段会直接返回 Maven 本地仓库的 .jar 路径,方便溯源。

注意:继承的方法定义在父类中,可通过 java_inspect(operation="class_structure") 返回的 superClass 字段找到父类再查询。

工具列表

java_resolve

定位 Java 符号或解析定义,合并原 find_symbol 和 go_to_definition 能力。

参数类型必填说明
operationstring✅find_symbol 或 go_to_definition
symbolNamestring视模式符号名;find_symbol 必填,按名称跳定义时必填
symbolKindsstring[]—find_symbol 时限定搜索类型:class / method / field,默认全部
contextClassstring—已知宿主类时用于收窄方法/字段候选
includeDependenciesboolean—是否包含 Maven/Gradle 依赖,默认 true
maxResultsint—返回上限,默认 20,最大 100
filePath / line / columnstring / int / int视模式go_to_definition 按位置解析时使用,行列号从 1 开始

返回值包含 returnedCount、maxResults、hasMore 和 candidates。hasMore=true 表示结果被截断,需要提高 maxResults 或收窄查询条件。

java_inspect

读取类结构、方法代码、窄上下文、限定范围诊断或 MapStruct 映射摘要,合并原 get_class_structure 和 get_method_body 能力。支持项目源码和 Maven 依赖 JAR 中的类。

参数类型必填说明
operationstring✅class_structure / method_body / symbol_context / diagnostics / mapper_mappings
classNamestring视模式类名(短名或全限定名);类/方法/MapStruct 查询时使用
methodNamestring视模式method_body 必填;symbol_context 可选
parameterTypesstring[]—method_body 时用于区分重载方法;symbol_context 遇到重载时必须传入
includeBodyboolean—method_body / symbol_context 时是否包含方法体,默认 false
includeJavadocboolean—method_body 时是否包含 Javadoc,默认 true
includeFieldsboolean—class_structure / symbol_context 时是否包含字段,默认 true
includeMethodsboolean—class_structure 时是否包含方法签名,默认 true
includeInheritedboolean—class_structure 时是否包含继承成员,默认 false
maxFields / maxMethodsint—class_structure / symbol_context 的字段或方法返回上限
methodNamePatternstring—class_structure 方法名正则过滤
methodVisibilitystring—class_structure 方法可见性过滤:public / protected / private / package
excludeSyntheticboolean—class_structure 是否过滤无可靠源码位置的 synthetic/light 方法
excludeLombokGeneratedboolean—class_structure / symbol_context 是否过滤 Lombok 生成风格方法
filePath / line / columnstring / int / int视模式symbol_context 按位置读取或 diagnostics 查单文件
filePathsstring[]—diagnostics 查多个文件
changedOnlyboolean—diagnostics 只查 VCS 改动 Java 文件
moduleNamestring—diagnostics 查指定模块源码根
nearbyLinesint—symbol_context 附近源码行数,默认 20
maxResultsint—diagnostics 问题返回上限

method_body 返回值固定为对象,方法结果始终放在 methods 数组中;单个重载和多个重载的结构一致。

symbol_context 如果 methodName 命中多个重载且未传 parameterTypes,会返回错误并列出候选签名,避免静默读取错误重载。

diagnostics 返回的是 IntelliJ PSI parse error 摘要,适合快速确认指定文件/模块/本次改动文件是否有语法或解析错误;它不等价于 Maven 编译,也不验证 MapStruct/Lombok 生成代码。显式传入的缺失文件和非 Java 文件会通过 missingFiles / skippedFiles 返回,并将 inputValid 标为 false。

mapper_mappings 只汇总可解析到 org.mapstruct.* 的 MapStruct 注解和方法签名,并在返回中标记 generatedImplementationChecked=false;生成实现和 Lombok accessor 是否真实可编译仍需 Maven 或 IDE build 验证。

java_usage

分析引用和调用链,合并原 find_references 和 call_hierarchy 能力。

参数类型必填说明
operationstring✅find_references 或 call_hierarchy
classNamestring✅类名
methodNamestring视模式查方法引用或调用链时使用;call_hierarchy 必填
fieldNamestring—find_references 查字段引用时使用,和 methodName 互斥
scopestring—find_references 搜索范围:project(默认)、module、file
directionstring—call_hierarchy 方向:callers / callees / both,默认 callers
depthint—call_hierarchy 递归深度,默认 1,最大 5
maxResultsint—结果上限;引用默认 50,调用链默认每层 30

引用结果包含 returnedCount、maxResults、hasMore。调用链结果包含 returnedCount、topLevelReturnedCount、maxResultsPerLevel、limitScope、hasMore。hasMore=true 表示结果被截断,需要提高 maxResults 或缩小范围。

要求

  • IntelliJ IDEA 2024.3 及以上(Ultimate 或 Community)
  • MCP Server 插件(Plugin ID: 26071)已安装并启用
  • Node.js(用于运行 @jetbrains/mcp-proxy)

安装

方式一:从 Release 安装(推荐)

  1. 从 Releases 下载最新 code-navigator-mcp-plugin.zip
  2. IDEA → Settings → Plugins → ⚙️ → Install Plugin from Disk
  3. 选择 zip 文件 → 重启 IDEA

发布新版本时,在本地打 v* 标签并推送,GitHub Actions 会自动构建插件 zip、创建 Release,并上传 code-navigator-mcp-plugin.zip:

git tag v1.0.1
git push origin v1.0.1

普通 push 和 PR 也会自动执行构建,可在 Actions 页面下载 code-navigator-mcp-plugin artifact 进行临时测试。

方式二:从源码构建

git clone https://github.com/your-org/jetbrains-mcp-code-navigator.git
cd jetbrains-mcp-code-navigator
./gradlew buildPlugin
# 产物:build/distributions/code-navigator-mcp-plugin.zip

然后按方式一安装 zip 文件。

配置 Claude Code

在项目的 .mcp.json 或全局 MCP 配置文件中添加:

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

@jetbrains/mcp-proxy 会自动发现运行中的 IDEA 实例并桥接 MCP 协议。

推荐工作流

  • 已知类或方法:优先用 java_inspect
  • 只知道符号名、不确定定义位置:用 java_resolve(operation="find_symbol")
  • 已知调用点坐标:用 java_resolve(operation="go_to_definition")
  • 需要追踪谁在用它:用 java_usage

search_in_files_content 更适合纯文本场景,不推荐作为 Java 语义定位的首选工具。

使用示例

# 先按名称找候选定义,再决定读哪个类/方法
java_resolve(operation="find_symbol", symbolName="GenericQueryUtil", symbolKinds=["class"])

# 只读取目标方法,不加载整个文件
java_inspect(operation="method_body", className="StowageProcessService", methodName="clearStowageByWaybillReport")

# 不传 parameterTypes 时,返回所有同名重载
java_inspect(operation="method_body", className="OrderService", methodName="createOrder")

# 读取 Maven 依赖 JAR 中的方法实现
java_inspect(operation="method_body", className="cn.hutool.core.util.StrUtil", methodName="isEmptyIfStr", includeBody=true)

# 获取类结构概览,快速了解有哪些方法(支持 JAR 中的类)
java_inspect(operation="class_structure", className="org.springframework.kafka.core.KafkaTemplate")

# 大类只看字段和前 20 个非 Lombok/synthetic 方法
java_inspect(operation="class_structure", className="Stowage", maxMethods=20, excludeLombokGenerated=true, excludeSynthetic=true)

# 读取指定方法的窄上下文:imports、字段、方法签名和附近源码行
java_inspect(operation="symbol_context", className="OrderService", methodName="createOrder", nearbyLines=20)

# 只检查本次改动 Java 文件的 PSI 解析错误
java_inspect(operation="diagnostics", changedOnly=true)

# 汇总 MapStruct mapper 上的 @Mapping / @Mappings / @BeanMapping 注解
java_inspect(operation="mapper_mappings", className="OrderMapper")

# 精确查找某方法的所有调用点
java_usage(operation="find_references", className="OrderService", methodName="createOrder")

# 分析调用链,了解谁在调用这个方法
java_usage(operation="call_hierarchy", className="PaymentService", methodName="processPayment", direction="callers", depth=2)

开发

./gradlew runIde        # 启动沙箱 IDE 进行测试
./gradlew buildPlugin   # 构建插件 zip

CI 使用 GitHub Actions 自动执行 ./gradlew buildPlugin -Dorg.gradle.java.home="$JAVA_HOME",避免受本地 gradle.properties 中 Windows JDK 路径影响。构建产物固定为 build/distributions/code-navigator-mcp-plugin.zip。

兼容性

IDE 版本支持
IDEA 2024.3.x (build 243)✅
IDEA 2025.x (build 25x)✅

插件仅支持 Java 语言(不支持 Kotlin/Scala 等)。

工具与能力

工具数量

3

资源数量

0

提示词数量

0

能力标签

Kotlin本地部署代码分析Java开发AI辅助编程Maven支持IntelliJ插件

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 只提供 3 个工具,职责集中,接入后不容易误操作。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 暂时拿不到访问 Token的人。
  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Jetbrains MCP Code Navigator

MCP World · 本页

3未说明未标注1 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Jetbrains MCP Code Navigator 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Jetbrains MCP Code Navigator 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Jetbrains MCP Code Navigator 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Jetbrains MCP Code Navigator 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Jetbrains MCP Code Navigator 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP