Integrations
jdx for Claude Code
Java and Kotlin code navigation for Claude Code, over MCP.
Set up in two commands#
1. Install jdx (needs JDK 21+):
curl -fsSL https://raw.githubusercontent.com/MohammadMD1383/jdx/main/install-release.sh | bash2. Wire it into Claude Code, then restart Claude Code:
jdx setup --agent claude-code --scope projectWhat it writes: Claude Code writes the mcpServers.jdx entry into .mcp.json (project) or ~/.claude.json (system).
Check, scope and remove#
jdx setup --agent claude-code --scope system— Or wire it for every project (user-global config).jdx setup --agent claude-code --scope project --check— Report whether it is wired, without writing anything.jdx setup --agent claude-code --scope project --remove— Remove the entry again (other entries are never touched).
Re-running is a no-op, and unrelated entries in the config are merged, never clobbered.
What Claude Code can then do#
Claude Code gets 21 typed tools:
jdx_show— Go to declaration: the class card for a type (kind, supertypes, source, provenance).jdx_members— List the members of a type — the '.' completion equivalent.jdx_outline— File Structure: one dense line per member declared on a type (never inherited).jdx_body— Open the method: the source body of one member, sliced verbatim with provenance.jdx_source— Open the file: whole source for a type, or a slice of it, with provenance.jdx_signature— Parameter info: one signature line per overload, with real parameter names.jdx_doc— Quick documentation for a type or member, falling back to the nearest documenting supertype like IntelliJ quick-doc.jdx_search— Search everywhere: symbols by glob, regex or fuzzy name, with did-you-mean.jdx_resolve— What is this symbol?jdx_ls— External library browser: packages in the workspace roots.jdx_tree— External library browser: artifacts and their package trees.jdx_usages— Find usages of a type or member across the workspace jars and source dirs.jdx_hierarchy— Type hierarchy: supertypes upward and subtypes downward across the workspace.jdx_implementors— Who implements this interface or extends this class, transitively.jdx_callers— Call hierarchy in: who calls this method, as a depth-bounded tree.jdx_calls— Call hierarchy out: what this method calls, as a depth-bounded tree.jdx_samples— How is this symbol really used?jdx_diff— What changed between two artifacts?jdx_version— The jdx version this server was built as.jdx_doctor— Environment report.jdx_health— Liveness probe: uptime, workspace served and queries answered.
Prefer the CLI? Paste the agent cheat sheet into Claude Code's instructions instead.