Javadoc MCP
A Model Context Protocol (MCP) server for searching Java documentation. This server enables AI assistants to search and retrieve Java API documentation from JSON files.
MCP Java Documentation / MCP Java ๆๆกฃ
English | ไธญๆ
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:
- Maven Plugin (
java-docs-json-doclet) - Generates structured JSON documentation from Java source code - MCP Server (
mcp-server) - Provides intelligent search and query capabilities for the generated documentation - 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-json
3. 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
- From Source Code:
add maven dependency
and then
mvn javadoc-json:javadoc-json
Sample maven config could be found at ./java-docs-json-doclet/examples/
- 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-json
๐ 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:
๐ License
This project is licensed under the MIT License.
ไธญๆ
ไธไธชๅฎๆด็่งฃๅณๆนๆก๏ผ็จไบไป Java ๆบไปฃ็ ็ๆ็ปๆๅ JSON ๆๆกฃ๏ผๅนถ้่ฟ MCP๏ผๆจกๅไธไธๆๅ่ฎฎ๏ผๆไพๆบ่ฝๆ็ดขๅ่ฝใ
๐ ๆฆ่ฟฐ
ๆฌ้กน็ฎ็ฑไธไธชไธป่ฆ็ปไปถ็ปๆ๏ผๅฎไปฌๅๅๅทฅไฝๅๅปบๅฎๆด็ Java ๆๆกฃ็ๆ็ณป็ป๏ผ
- Maven ๆไปถ (
java-docs-json-doclet) - ไป Java ๆบไปฃ็ ็ๆ็ปๆๅ JSON ๆๆกฃ - MCP ๆๅกๅจ (
mcp-server) - ไธบ็ๆ็ๆๆกฃๆไพๆบ่ฝๆ็ดขๅๆฅ่ฏขๅ่ฝ - ๆ ทไพๆฐๆฎ (
javadoc-json) - ็จไบๆต่ฏๅๅ่็็คบไพ JSON ๆๆกฃๆไปถ
๐๏ธ ๆถๆ
โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ
โ Java ๆบไปฃ็ โ โ HTML Javadoc โ โ Lombok ้กน็ฎ โ
โ โ โ (JDK 9) โ โ โ
โโโโโโโโโโโโฌโโโโโโโโโโโ โโโโโโโโโโโโฌโโโโโโโโโโโ โโโโโโโโโโโโฌโโโโโโโโโโโ
โ โ โ
โผ โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Maven ๆไปถ (java-docs-json-doclet) โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๅๅธ็ฎๆ โ โ ็ฌๅ็ฎๆ โ โ Lombok ๆฏๆ โ โ
โ โ (ๆบไปฃ็ ) โ โ (HTML ๆๆกฃ) โ โ (Delombok ่ฟ็จ) โ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโ
โ JSON ๆๆกฃ โ
โ (็ปๆๅๆฐๆฎ) โ
โโโโโโโโโโโโฌโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MCP ๆๅกๅจ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๆ็ดข็ฑป โ โ ๆ็ดขๆนๆณ โ โ ่ทๅ็ป่ฎกไฟกๆฏ โ โ
โ โ โ โ โ โ โ โ
โ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโ
โ Claude Desktop โ
โ (AI ๅฉๆ) โ
โโโโโโโโโโโโโโโโโโโโโโโ
๐ฆ ็ปไปถ
ไธไธชๅฐ 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 ๅ ผๅฎนๆ ผๅผ็ๆๆกฃ
- ๅ ่ฟๆปค๏ผไฝฟ็จๆญฃๅ่กจ่พพๅผๆจกๅผ่ฟๆปค็นๅฎๅ
- ไปฃ็ๆฏๆ๏ผไธบ็ฌๅๅค้จๆๆกฃ้ ็ฝฎไปฃ็่ฎพ็ฝฎ
ๅฟซ้ๅผๅง๏ผ
ๆณจๆ๏ผๅฆๆๆจๆญฃๅจไฝฟ็จ Lombok๏ผๅฏ่ฝไผ้ๅฐ็ผ่ฏ้่ฏฏ๏ผ่ฏท่ทณ่ฝฌๅฐ Lombok ้กน็ฎ ็ซ ่ใ
ๆดๅค่ฏฆๆ ่ฏทๅ่ README
2. MCP ๆๅกๅจ (mcp-server/)
ๅบไบ Node.js ็ MCP ๆๅกๅจ๏ผไธบ Java ๆๆกฃๆไพๆบ่ฝๆ็ดขๅ่ฝใ
ๅ่ฝ็นๆง๏ผ
- ๆจก็ณๆ็ดข๏ผ็ฑ Fuse.js ๆไพๆบ่ฝๅน้
- ๅค็งๆ็ดข็ฑปๅ๏ผ็ฑปใๆนๆณใๆ้ ๅฝๆฐๅๅญๆฎต
- ๆฐๆฎๅป้๏ผ่ชๅจๅๅนถ้ๅคๆก็ฎ
- ็ป่ฎกไฟกๆฏ๏ผ่ทๅๆๆกฃ่ฆ็็ๆฆ่ง
- Claude ้ๆ๏ผไธ Claude Desktop ๆ ็ผ้ๆ
ๅฟซ้ๅผๅง๏ผ
3. ๆ ทไพๆฐๆฎ (javadoc-json/)
ๅ ๅซไปๅ็ง Java ้กน็ฎ็ๆ็็คบไพ JSON ๆๆกฃๆไปถ๏ผ็จไบๆต่ฏๅๅ่ใ
๐ ๅ ฅ้จๆๅ
ๆญฅ้ชค 1๏ผ็ๆ JSON ๆๆกฃ
- ไปๆบไปฃ็ ๏ผ
ๆทปๅ Maven ไพ่ต
็ถๅๆง่ก
Maven ้ ็ฝฎ็คบไพๅฏไปฅๅจ ./java-docs-json-doclet/examples/ ๆพๅฐ
- ไป HTML Javadoc๏ผ
่ฏทๅ่ README
ๆญฅ้ชค 2๏ผๅฏๅจ MCP ๆๅกๅจ
ไฝฟ็จ npx๏ผๆจ่๏ผๆ ้ๅฎ่ฃ ๏ผ
npx @io.emop/mcp-javadoc-server --javadoc-path /path/to/javadoc-json
ไฝฟ็จ mcp inspector ๆต่ฏ
่ฏทๅ่ 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 ่ฎธๅฏ่ฏใ
Related Servers
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Sentinel Signal MCP
Agent tools via MCP for workflow scoring, limits/usage, and feedback (trial key supported)
ucn
Universal Code Navigator - a lightweight MCP server that gives AI agents call-graph-level understanding of code. Instead of reading entire files, agents ask structural questions like: "who calls this function", "what breaks if I change it", "what's unused", and get precise, AST-verified answers. UCN parses JS/TS, Python, Go, Rust, Java, and HTML inline scripts with tree-sitter, then exposes 28 navigation commands as a CLI tool, MCP server, or agent skill.
GoMCP
A Go library for building clients and servers using the Model Context Protocol (MCP).
Nuanced MCP Server
Provides call graph analysis for LLMs using the nuanced library.
MCP Playground
A demonstration MCP server implementation in Go featuring real-time bidirectional file communication.
MCP Tool Kit
A modular server for building AI agents with a unified interface for tools like file operations, web search, browser automation, and financial data.
Process Manager MCP
Manage long-running bash processes and persist their logs.
VisionSqueezer
LLM-native image optimization MCP server
Infisical
Manage secrets and environment variables with Infisical's official MCP server.
SelfHeal MCP
Self-healing proxy for MCP servers โ retry, circuit breaker, fallback chains, and observability.