mcp-java-doc
Publish java docs or crawl existing html java doc into json file which could be exposed as mcp
Documentation
MCP Java Documentation / MCP Java ๆๆกฃ
English
A comprehensive solution for generating structured JSON documentation from Java source code and providing intelligent search capabilities through MCP (Model Context Protocol).
๐ Overview
This project consists of three main components that work together to create a complete Java documentation ecosystem:
1. Maven Plugin (`java-docs-json-doclet`) - Generates structured JSON documentation from Java source code
2. MCP Server (`mcp-server`) - Provides intelligent search and query capabilities for the generated documentation
3. Sample Data (`javadoc-json`) - Example JSON documentation files for testing and reference
๐๏ธ Architecture
โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ
โ Java Source Code โ โ HTML Javadoc โ โ Lombok Projects โ
โ โ โ (JDK 9) โ โ โ
โโโโโโโโโโโโฌโโโโโโโโโโโ โโโโโโโโโโโโฌโโโโโโโโโโโ โโโโโโโโโโโโฌโโโโโโโโโโโ
โ โ โ
โผ โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Maven Plugin (java-docs-json-doclet) โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ Publish Goal โ โ Crawl Goal โ โ Lombok Support โ โ
โ โ (Source Code) โ โ (HTML Docs) โ โ (Delombok Process) โ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโ
โ JSON Documentationโ
โ (Structured Data) โ
โโโโโโโโโโโโฌโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MCP Server โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ Search Classes โ โ Search Methods โ โ Get Statistics โ โ
โ โ โ โ โ โ โ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโ
โ Claude Desktop โ
โ (AI Assistant) โ
โโโโโโโโโโโโโโโโโโโโโโโ๐ฆ Components
1. Java Docs JSON Doclet (`java-docs-json-doclet/`)
A Maven plugin that converts Java documentation into structured JSON format.
Supported Java Versions:
| Goal | Supported Versions | Notes |
|---|---|---|
| javadoc-json | Java 8+ | Supports all Java 8 and above versions |
| Crawl | Java 9 | To be supported for other versions in the future, currently only support https://docs.sw.siemens.com/documentation/external/PL20231101866122454/en-US/custom_api/open_java_ref/ , you could update `io.emop.javadocjson.doclet.JsonDoclet` to build your own html to json parser |
*Future Java versions will be supported in upcoming releases*
Features:
- Generate Javadoc Json Goal: Generate JSON from Java source code
- Crawl Goal: Extract documentation from HTML Javadoc websites (JDK 9+ supported)
- Lombok Support: Handle Lombok annotations with delombok process
- MCP Compatible: Generate documentation in MCP-compatible format
- Package Filtering: Use regex patterns to filter specific packages
- Proxy Support: Configure proxy settings for crawling external documentation
Quick Start:
io.github.beamliu
java-docs-json-doclet
0.1.1Pay attention, you may encounter compile error if you are using a lombok, please jump to Lombok Projects section.
More detail goes to README
2. MCP Server (`mcp-server/`)
A Node.js-based MCP server that provides intelligent search capabilities for Java documentation.
Features:
- Fuzzy Search: Powered by Fuse.js for intelligent matching
- Multiple Search Types: Classes, methods, constructors, and fields
- Data Deduplication: Automatic merging of duplicate entries
- Statistics: Get overview of documentation coverage
- Claude Integration: Seamless integration with Claude Desktop
Quick Start:
npx @io.emop/mcp-javadoc-server --javadoc-path /path/to/javadoc-json3. Sample Data (`javadoc-json/`)
Contains example JSON documentation files generated from various Java projects for testing and reference purposes.
๐ Getting Started
Step 1: Generate JSON Documentation
1. From Source Code:
add maven dependency
io.github.beamliu
java-docs-json-doclet
0.1.1and then
mvn javadoc-json:javadoc-jsonSample maven config could be found at ./java-docs-json-doclet/examples/
2. From HTML Javadoc:
please refer to README
Step 2: Start MCP Server
# Using npx (recommended, no installation needed)
npx @io.emop/mcp-javadoc-server --javadoc-path /path/to/javadoc-jsonไฝฟ็จ`mcp inspector`ๆต่ฏ
npx @modelcontextprotocol/inspector npx -y @io.emop/mcp-javadoc-server -- --javadoc-path /path/to/javadoc-jsonplease refer to README
๐ Usage Examples
Once configured, you can use these commands in Claude Desktop:
- Search all items: `search_all("ArrayList")`
- Search classes: `search_classes("HashMap")`
- Search methods: `search_methods("toString")`
- Get class details: `get_class_details("java.util.List")`
- Get statistics: `get_stats()`
๐ง Advanced Configuration
Lombok Projects
For projects using Lombok, configure the delombok process:
please refer to README
๐ License
This project is licensed under the MIT License.
ไธญๆ
ไธไธชๅฎๆด็่งฃๅณๆนๆก๏ผ็จไบไป Java ๆบไปฃ็ ็ๆ็ปๆๅ JSON ๆๆกฃ๏ผๅนถ้่ฟ MCP๏ผๆจกๅไธไธๆๅ่ฎฎ๏ผๆไพๆบ่ฝๆ็ดขๅ่ฝใ
๐ ๆฆ่ฟฐ
ๆฌ้กน็ฎ็ฑไธไธชไธป่ฆ็ปไปถ็ปๆ๏ผๅฎไปฌๅๅๅทฅไฝๅๅปบๅฎๆด็ Java ๆๆกฃ็ๆ็ณป็ป๏ผ
1. Maven ๆไปถ (`java-docs-json-doclet`) - ไป Java ๆบไปฃ็ ็ๆ็ปๆๅ JSON ๆๆกฃ
2. MCP ๆๅกๅจ (`mcp-server`) - ไธบ็ๆ็ๆๆกฃๆไพๆบ่ฝๆ็ดขๅๆฅ่ฏขๅ่ฝ
3. ๆ ทไพๆฐๆฎ (`javadoc-json`) - ็จไบๆต่ฏๅๅ่็็คบไพ JSON ๆๆกฃๆไปถ
๐๏ธ ๆถๆ
โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ
โ Java ๆบไปฃ็ โ โ HTML Javadoc โ โ Lombok ้กน็ฎ โ
โ โ โ (JDK 9) โ โ โ
โโโโโโโโโโโโฌโโโโโโโโโโโ โโโโโโโโโโโโฌโโโโโโโโโโโ โโโโโโโโโโโโฌโโโโโโโโโโโ
โ โ โ
โผ โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Maven ๆไปถ (java-docs-json-doclet) โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๅๅธ็ฎๆ โ โ ็ฌๅ็ฎๆ โ โ Lombok ๆฏๆ โ โ
โ โ (ๆบไปฃ็ ) โ โ (HTML ๆๆกฃ) โ โ (Delombok ่ฟ็จ) โ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโ
โ JSON ๆๆกฃ โ
โ (็ปๆๅๆฐๆฎ) โ
โโโโโโโโโโโโฌโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MCP ๆๅกๅจ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๆ็ดข็ฑป โ โ ๆ็ดขๆนๆณ โ โ ่ทๅ็ป่ฎกไฟกๆฏ โ โ
โ โ โ โ โ โ โ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโ
โ Claude Desktop โ
โ (AI ๅฉๆ) โ
โโโโโโโโโโโโโโโโโโโโโโโ๐ฆ ็ปไปถ
1. Java Docs JSON Doclet (`java-docs-json-doclet/`)
ไธไธชๅฐ Java ๆๆกฃ่ฝฌๆขไธบ็ปๆๅ JSON ๆ ผๅผ็ Maven ๆไปถใ
ๆฏๆ็ Java ็ๆฌ๏ผ
| ็ฎๆ | ๆฏๆ็ๆฌ | ่ฏดๆ |
|---|---|---|
| javadoc-json | Java 8+ | ๆฏๆๆๆ Java 8 ๅไปฅไธ็ๆฌ |
| ็ฌๅ (Crawl) | Java 9 | ๆชๆฅๅฐๆฏๆๅ ถไป็ๆฌ๏ผ็ฎๅไป ๆฏๆ https://docs.sw.siemens.com/documentation/external/PL20231101866122454/en-US/custom_api/open_java_ref/ ๏ผๆจๅฏไปฅๆดๆฐ `io.emop.javadocjson.doclet.JsonDoclet` ๆฅๆๅปบ่ชๅทฑ็ HTML ๅฐ JSON ่งฃๆๅจ |
*ๅ็ปญ Java ็ๆฌๅฐๅจๆชๆฅๅๅธไธญๆฏๆ*
ๅ่ฝ็นๆง๏ผ
- ็ๆ Javadoc Json ็ฎๆ ๏ผไป Java ๆบไปฃ็ ็ๆ JSON
- ็ฌๅ็ฎๆ ๏ผไป HTML Javadoc ็ฝ็ซๆๅๆๆกฃ๏ผๆฏๆ JDK 9+๏ผ
- Lombok ๆฏๆ๏ผ้่ฟ delombok ่ฟ็จๅค็ Lombok ๆณจ่งฃ
- MCP ๅ ผๅฎน๏ผ็ๆ MCP ๅ ผๅฎนๆ ผๅผ็ๆๆกฃ
- ๅ ่ฟๆปค๏ผไฝฟ็จๆญฃๅ่กจ่พพๅผๆจกๅผ่ฟๆปค็นๅฎๅ
- ไปฃ็ๆฏๆ๏ผไธบ็ฌๅๅค้จๆๆกฃ้ ็ฝฎไปฃ็่ฎพ็ฝฎ
ๅฟซ้ๅผๅง๏ผ
io.github.beamliu
java-docs-json-doclet
0.1.1ๆณจๆ๏ผๅฆๆๆจๆญฃๅจไฝฟ็จ Lombok๏ผๅฏ่ฝไผ้ๅฐ็ผ่ฏ้่ฏฏ๏ผ่ฏท่ทณ่ฝฌๅฐ Lombok ้กน็ฎ ็ซ ่ใ
ๆดๅค่ฏฆๆ ่ฏทๅ่ README
2. MCP ๆๅกๅจ (`mcp-server/`)
ๅบไบ Node.js ็ MCP ๆๅกๅจ๏ผไธบ Java ๆๆกฃๆไพๆบ่ฝๆ็ดขๅ่ฝใ
ๅ่ฝ็นๆง๏ผ
- ๆจก็ณๆ็ดข๏ผ็ฑ Fuse.js ๆไพๆบ่ฝๅน้
- ๅค็งๆ็ดข็ฑปๅ๏ผ็ฑปใๆนๆณใๆ้ ๅฝๆฐๅๅญๆฎต
- ๆฐๆฎๅป้๏ผ่ชๅจๅๅนถ้ๅคๆก็ฎ
- ็ป่ฎกไฟกๆฏ๏ผ่ทๅๆๆกฃ่ฆ็็ๆฆ่ง
- Claude ้ๆ๏ผไธ Claude Desktop ๆ ็ผ้ๆ
ๅฟซ้ๅผๅง๏ผ
npx @io.emop/mcp-javadoc-server --javadoc-path /path/to/javadoc-json3. ๆ ทไพๆฐๆฎ (`javadoc-json/`)
ๅ ๅซไปๅ็ง Java ้กน็ฎ็ๆ็็คบไพ JSON ๆๆกฃๆไปถ๏ผ็จไบๆต่ฏๅๅ่ใ
๐ ๅ ฅ้จๆๅ
ๆญฅ้ชค 1๏ผ็ๆ JSON ๆๆกฃ
1. ไปๆบไปฃ็ ๏ผ
ๆทปๅ Maven ไพ่ต
io.github.beamliu
java-docs-json-doclet
0.1.1็ถๅๆง่ก
mvn javadoc-json:javadoc-jsonMaven ้ ็ฝฎ็คบไพๅฏไปฅๅจ ./java-docs-json-doclet/examples/ ๆพๅฐ
2. ไป HTML Javadoc๏ผ
่ฏทๅ่ README
ๆญฅ้ชค 2๏ผๅฏๅจ MCP ๆๅกๅจ
# ไฝฟ็จ npx๏ผๆจ่๏ผๆ ้ๅฎ่ฃ
๏ผ
npx @io.emop/mcp-javadoc-server --javadoc-path /path/to/javadoc-jsonไฝฟ็จ `mcp inspector` ๆต่ฏ
npx @modelcontextprotocol/inspector npx -y @io.emop/mcp-javadoc-server -- --javadoc-path /path/to/javadoc-json่ฏทๅ่ README
๐ ไฝฟ็จ็คบไพ
้ ็ฝฎๅฎๆๅ๏ผๆจๅฏไปฅๅจ Claude Desktop ไธญไฝฟ็จ่ฟไบๅฝไปค๏ผ
- ๆ็ดขๆๆ้กน็ฎ๏ผ`search_all("ArrayList")`
- ๆ็ดข็ฑป๏ผ`search_classes("HashMap")`
- ๆ็ดขๆนๆณ๏ผ`search_methods("toString")`
- ่ทๅ็ฑป่ฏฆๆ ๏ผ`get_class_details("java.util.List")`
- ่ทๅ็ป่ฎกไฟกๆฏ๏ผ`get_stats()`
๐ง ้ซ็บง้ ็ฝฎ
Lombok ้กน็ฎ
ๅฏนไบไฝฟ็จ Lombok ็้กน็ฎ๏ผ้ ็ฝฎ delombok ่ฟ็จ๏ผ
่ฏทๅ่ README
๐ ่ฎธๅฏ่ฏ
ๆฌ้กน็ฎ้็จ MIT ่ฎธๅฏ่ฏใ
Frequently asked questions
What is mcp-java-doc?
mcp-java-doc is Publish java docs or crawl existing html java doc into json file which could be exposed as mcp
How do I install mcp-java-doc?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-java-doc open source?
Yes โ it is hosted on GitHub at https://github.com/BeamLiu/mcp-java-doc and has 1 stars.
Related MCP tools
MCP Server for Ghidra Java-based implementation. Trusted by 6400+ developers. Trusted by 6400+ developers. Trusted by 6400+ developers.
The official Java SDK for Model Context Protocol servers and clients. Maintained in collaboration with Spring AI Trusted by 2800+ developers.
A library for communication with a Minecraft client/server. Built for the Model Context Protocol to enhance AI capabilities. Java-based implementation.
Model Context Protocol Servers
Pre-indexed code knowledge graph, auto syncs on code changes, for Claude Code, Codex, Gemini, Cursor, OpenCode, AntiGravity, Kiro, CoPilot, and Hermes Agent โ fewer tokens, fewer tool calls, 100% local
an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP