Token导航 LogoToken导航

MCP Server · 开发工具

Jdt MCP Server

一个将Eclipse JDT功能暴露给AI编码助手的独立CLI工具,提供52种工具覆盖导航、重构、代码生成和测试执行等功能。

未说明官方级别未说明来源级核验工具 47
JavaClaude代码分析Cursor

快速开始

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

工具数量

47

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Jdt MCP Server 属于开发工具类 MCP Server,公开资料标注 47 个工具,通过传输方式未标注接入,适配 Claude、Cursor,没有现成的安装命令;接入前要先准备 会话凭据。

分类

开发工具

传输方式

未说明

认证方式

会话凭据

部署方式

公开资料未说明

安装与配置

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

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

上手步骤

  1. 1

    先确认运行方式

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

  2. 2

    获取服务

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

  3. 3

    写入客户端配置

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

  4. 4

    验证是否可用

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

接入前确认

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

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

详细介绍

Eclipse JDT MCP服务器

注: GitHub存储库是一个只读镜像。请打开问题并拉取请求 忘记.

一个MCP服务器(模型上下文协议),将Eclipse JDT功能暴露给Claude Code、Cursor等AI编码助手。它提供 52工具 涵盖9个类别,包括导航、重构、代码生成、测试执行等。作为一个 独立CLI (stdio),而不需要Eclipse IDE。使用单个 curl | bash 命令,然后在任何Java项目中使用它。

______________________________________________________________________

Java Development Tools (JDT) 的模型上下文协议 (MCP) 服务器。为 AI 编码助手(如 Claude Code、Cursor 等)提供 JDT 功能。

独立CLI - 直接作为MCP子进程(stdio)在没有Eclipse IDE的情况下运行。只需安装,切换到Java项目,启动Claude代码。

灵感来自: Spring Tools 5嵌入式MCP服务器von Martin Lippert

特性

服务器设置 52 MCP工具 分为9个类别:

项目信息(5个工具)

工具描述
jdt_list_projects从这里开始列出Workspace中的所有Java项目。
jdt_get_classpath 获取项目的类路径(源文件夹、库、输出文件夹)
jdt_get_compilation_errors文件、行和消息的编译错误和警告
jdt_get_project_structure项目结构概述(Java版本,源文件夹,包)
jdt_refresh_project重要在外部文件更改后更新工作区 (Write/Edit, git)

导航(4个工具)

工具描述
jdt_find_type 按名称模式搜索类型(*Service, User*)
jdt_get_method_signature带参数的方法签名, 返回类型, 修改
jdt_find_implementations 查找接口或子类的所有实现
jdt_find_callers 查找一个方法的所有调用者

代码分析(4个工具)

工具描述
jdt_parse_java_file解析Java文件:包,导入,类型,方法,具有偏移的字段
jdt_get_type_hierarchy 类型层次结构:超级类,接口,子类
jdt_find_references 查找工作空间中类/方法/字段的所有用途
jdt_get_source_range阅读代码以文本形式返回方法/类的实际代码。

创建(3个工具)

工具描述
jdt_create_class 创建一个新的Java类
jdt_create_interface 创建新的Java接口
jdt_create_enum 使用常量创建新的 Java Enum

代码生成(9个工具)

工具描述
jdt_add_method 将方法添加到现有类
jdt_add_field 添加到现有类。
jdt_add_import添加导入语句(正确的位置,不重复)
jdt_implement_interface 实现接口并生成方法Stubs
jdt_generate_getters_setters生成 Getter/Setter(跳过现有的)
jdt_generate_constructor生成构造符(JPA/Jackson可选的无参数)
jdt_generate_equals_hashcode equals() 和 hashCode() 使用 java.util。生成对象。
jdt_generate_tostring toString() 生成: User{id=1, name='John'}
jdt_generate_delegate_methodsDelegation Pattern: 委派给另一个对象的方法

重构(10个工具)

工具描述
jdt_rename_element 安全重命名:重命名类/方法/字段,更新所有引用。
jdt_extract_method 将代码提取到新方法(自动检测参数/返回类型)
jdt_move_type 将类移动到其他包,更新所有导入。
jdt_organize_imports清理导入:删除未使用,排序
jdt_inline Variable/Expression inline(与 Extract 相反)
jdt_extract_interface 从类中提取接口
jdt_change_method_signature 更改方法签名,更新所有调用者
jdt_convert_to_lambda 将匿名类转换为lambda表达式
jdt_encapsulate_field 封装字段: 私有化 + Getter/Setter, 更新所有访问
jdt_introduce_parameter 提取本地变量作为方法参数

执行(6个工具)

工具描述
jdt_maven_build Maven-Build 自动检测 Maven Wrapper 和 Java 版本
jdt_run_main 使用 main() 运行 Java 类,获取 stdout/stderr
jdt_list_tests 测试列表(pattern='unit' 对于 \*Test.java, 'integration' 对于 \*IT.java)
jdt_run_tests 使用结构化JSON输出进行测试
jdt_start_tests_async异步启动长期运行的测试(>30s,例如 Spring Boot)
jdt_get_test_result 检索异步测试运行的状态/结果

文档(4个工具)

工具描述
jdt_get_javadoc 获取类/方法/字段的 Javadoc
jdt_get_annotations 检索具有值的元素的所有注释。
jdt_find_annotated_elements 查找所有带有特定注释的元素(@Service、@Test、@Entity)
jdt_generate_javadoc 使用 @param, @return, @throws 生成 Javadoc 注释

代码质量(2个工具)

工具描述
jdt_find_unused_code 查找未使用的导入、私有字段和方法
jdt_find_dead_code 查找无法访问的代码(在return/throw之后,死亡分支)

前提条件

  • Java 21+
  • Maven 3.9+(仅限源代码构建)

支持的平台

平台架构安装脚本手动
Linuxx86_64,aarch64`curl ... \bash`tar.gz
macOSx86_64,aarch64(苹果硅)`curl ... \bash`tar.gz
Windowsx86_64-zip+ jdtls-mcp.cmd

安装(Linux和macOS)

curl -sSL https://git.changinggraph.org/ai-tools/jdt-mcp-server/raw/branch/main/install.sh | bash

该脚本检测操作系统和架构,下载最新版本,安装后 ~/.local/share/jdtls-mcp/ 并自动配置Claude代码。

之后 :

cd /dein/java-projekt
claude

更新

只需再次执行相同的命令:

curl -sSL https://git.changinggraph.org/ai-tools/jdt-mcp-server/raw/branch/main/install.sh | bash

该脚本将识别现有安装并显示更新路径(例如: Update: 0.2.1 -> 0.2.2).

检查已安装版本:

jdtls-mcp --version

从本地构建安装

git clone https://git.changinggraph.org/ai-tools/jdt-mcp-server.git
cd jdt-mcp-server
./install-local.sh

卸载

curl -sSL https://git.changinggraph.org/ai-tools/jdt-mcp-server/raw/branch/main/uninstall.sh | bash

或手动:

rm -rf ~/.local/share/jdtls-mcp ~/.local/bin/jdtls-mcp
claude mcp remove jdt-mcp

Manuelle安装(Linux/macOS)

# Archiv herunterladen von:
# https://git.changinggraph.org/ai-tools/jdt-mcp-server/releases

# Entpacken
mkdir -p ~/.local/share/jdtls-mcp
tar xzf jdtls-mcp-linux.gtk.x86_64.tar.gz -C ~/.local/share/jdtls-mcp

# Claude Code konfigurieren
claude mcp add -s user jdt-mcp ~/.local/share/jdtls-mcp/bin/jdtls-mcp

Manuelle安装(Windows)

# ZIP-Archiv herunterladen von:
# https://git.changinggraph.org/ai-tools/jdt-mcp-server/releases

# Entpacken (z.B. nach %LOCALAPPDATA%\jdtls-mcp)
Expand-Archive jdtls-mcp-win32.win32.x86_64.zip -DestinationPath "$env:LOCALAPPDATA\jdtls-mcp"

# Claude Code konfigurieren
claude mcp add -s user jdt-mcp "$env:LOCALAPPDATA\jdtls-mcp\bin\jdtls-mcp.cmd"

高级选项

环境变量描述标准
JDTMCP_TRANSPORT运输: stdio 或 httpstdio
JDTMCP_WORKSPACE Eclipse Workspace 目录 ~/.jdt-mcp/workspaces/
JDTMCP_SOURCEinstall.sh 的下载来源: forgejo 或 github自动检测
JAVA_HOMEJava安装系统Java
# HTTP-Modus (für Debugging)
jdtls-mcp --http

工作区管理

JDT MCP 服务器管理 Eclipse工作区 每个工作目录。工作空间包含 JDT 元数据(索引、类路径、构建状态)——实际项目文件保留在其位置。

Workspaces 如何运作

~/mein-java-projekt/          ← Arbeitsverzeichnis (user.dir)
  ├── pom.xml                 ← Maven-Projekt wird automatisch importiert
  ├── modul-a/                ← Multi-Module: jedes Modul wird ein eigenes JDT-Projekt
  └── modul-b/

~/.jdt-mcp/
  ├── workspaces//  ← Eclipse Workspace (pro Arbeitsverzeichnis)
  │   └── .metadata/          ← JDT-Index, Build-State, Projekt-Referenzen
  └── jdt-mcp-mein-java-projekt.log  ← Log (pro Arbeitsverzeichnis)
  • 自动导入启动时,服务器将从工作目录(Maven,Gradle,Eclipse)导入所有项目 .project)
  • 持久工作区重新启动之间保留工作空间 - 无需重新导入
  • 每个目录一个工作空间每个工作目录都有自己的隔离工作空间(路径的MD5哈希)

重置工作空间

如果工作区已损坏或无法正确识别项目:

# Workspace-Verzeichnis für aktuelles Arbeitsverzeichnis finden
HASH=$(printf '%s' "$PWD" | md5sum | cut -d' ' -f1)
rm -rf ~/.jdt-mcp/workspaces/$HASH

# Server neu starten (Claude Code neu starten oder Session beenden)

下次启动时,工作区将自动重新创建并导入所有新项目。

导入其他项目

不在工作目录中的项目可以稍后导入:

jdt_import_project(path="/pfad/zum/anderen/projekt")

工作空间环境变量

变量描述标准
JDTMCP_WORKSPACE 设置自己的 Workspace 目录 ~/.jdt-mcp/workspaces/

日志

每个服务器实例根据工作目录登录到自己的文件:

# Logs für ein bestimmtes Projekt anschauen
tail -f ~/.jdt-mcp/jdt-mcp-mein-java-projekt.log

典型的工作流程

  1. 开始: jdt_list_projects 打电话查看可用项目
  2. 探索: jdt_get_project_structure 为了概述, jdt_find_type 搜索
  3. 分析: jdt_parse_java_file 对于文件详情, jdt_find_references 用于应用
  4. 修改: jdt_create_class, jdt_generate_*, jdt_rename_element
  5. 更新: jdt_refresh_project 外部变化后
  6. 构建/测试: jdt_maven_build, jdt_run_tests

参数格式

  • 项目名称Eclipse 项目名称 jdt_list_projects)
  • 类名 (完全合格): com.example.MyClass
  • 方法Name/ 字段Name: com.example.MyClass#methodName
  • 文件路径Java 文件的绝对路径
  • 抵消文件中的字符位置(从 jdt_parse_java_file)

故障排除

服务器未启动

  1. 检查日志 : `~/.jdt-mcp/jdt-mcp-

.log`

  1. 查看Java版本: java -version (需要21+)
  2. 二进制测试: jdtls-mcp 直接运行,观察 stderr 输出

文件更改后过时的数据

jdt_refresh_project 打电话!服务器不会自动检测到外部更改。

测试过长

jdt_start_tests_async 而非 jdt_run_tests 使用。MCP客户端超时为60s。

已知的限制

限制受影响的工具原因问题
使用通用的接口方法重命名不会更新实现jdt_rename_elementJDT错误: RenameVirtualMethodProcessor 可以在无头模式下 Processor.process(T) 不是太 SimpleProcessor.process(String) 通用绑定(Generics-Binding)不存在。调用者会正确更新,覆盖方法不会。#29
Eclipse JUnit Runner 与 JUnit Platform 1.x 不兼容 jdt_run_tests, jdt_start_tests_asyncNoClassDefFoundError: OutputDirectoryCreator --Eclipse JDT JUnit5 Runner erwarte JUnit Platform 6.x解决方法: jdt_maven_build(goals="test")#71
无法识别未使用的 package-private 字段。 jdt_find_unused_code JDT 只能识别未使用的私有成员,而不是包私有。 #72
jdt_inline 无法嵌入某些静态工厂方法。 jdt_inlineJDT错误: InlineMethodRefactoring.create() 提供 null 对于一些无头模式的方法模式
jdt_extract_interface 使用字符串操作而不是ASTRewrite。 jdt_extract_interface 可能在复杂的类声明(嵌套通用,多个注释)中失败。 #52

发展

冒烟测试

该服务器具有基于stdio的烟雾测试,用于测试MCP协议握手和基本工具调用:

tests/smoke-test.sh [path/to/jdtls-mcp-binary]

没有争论 jdtls-mcp 从 PATH 中使用。

许可证

EUPL-1.2 -欧盟公共许可证

参与

欢迎贡献!请创建问题或Pull请求: https://git.changinggraph.org/ai-tools/jdt-mcp-server

工具与能力

工具数量

47

资源数量

0

提示词数量

0

能力标签

Java开发Java本地部署代码分析AI辅助编程重构工具测试执行

支持客户端

ClaudeCursor

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

典型使用场景

让助手直接读代码

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

在对话里跑命令

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

接进开发流程

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

选择建议

值得选的地方

  • 工具数量 47 个,一次接入能覆盖的操作比单点工具更全。
  • 已经适配 Claude、Cursor,换客户端不用重新研究配置。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

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

更适合

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

不太适合

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

同类对比

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

MCP World · 本页

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

MCP World

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

MCP World

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

MCP World

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

MCP World

0stdio有1 个2026-05-17

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

常见问题

5 条

Jdt MCP Server 怎么安装?

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

Jdt MCP Server 怎么在 Claude Desktop、Cursor 里配置?

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

Jdt MCP Server 收费吗?

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

Jdt MCP Server 需要 API Key 吗?

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

Jdt MCP Server 支持哪些客户端?

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

来源信息

继续浏览同类 MCP