MCP.so
Sign In
Servers

Easy Code Reader

@FangYuan33

一个强大的 MCP (Model Context Protocol) 服务器,用于智能读取 Java 源代码。支持从 Maven 依赖和本地项目中提取源码,配备双反编译器(CFR/Fernflower)自动选择机制,智能处理 SNAPSHOT 版本,完美支持多模块项目,让 AI 助手能够深入理解你的 Java 代码库。

Overview

What is Easy Code Reader?

Easy Code Reader is an MCP (Model Context Protocol) server for intelligently reading Java source code. It extracts source code from Maven dependencies and local projects, equips dual decompilers (CFR/Fernflower) with auto-selection, handles SNAPSHOT versions intelligently, and supports multi-module projects. It is designed for AI assistants to deeply understand Java codebases.

How to use Easy Code Reader?

Install uv and configure your MCP client with the command uvx easy-code-reader along with the --maven-repo (local Maven repository path) and --project-dir (projects root directory) arguments. Alternatively, install it locally with uv tool install easy-code-reader and point the MCP client to the installed binary.

Key features of Easy Code Reader

  • Reads Java source from Maven dependencies and local projects.
  • Dual decompiler support (CFR/Fernflower) with automatic selection.
  • Intelligent SNAPSHOT version handling with timestamp resolution.
  • Smart caching mechanism for decompiled class files.
  • Lists projects and project files with fuzzy matching.
  • Filters out test, build, and IDE files automatically.
  • Focuses on specific subdirectories for targeted code exploration.
  • Provides AI-friendly smart error hints to reduce hallucinations.

Use cases of Easy Code Reader

  • Cross-project call‑chain analysis of Java microservices.
  • Reading JAR library source code to complete current code writing.
  • Understanding third‑party dependency implementations for feature development.
  • Rapidly tracing exception origins in external JAR dependencies.
  • Onboarding new developers by exploring multi‑module project relationships.

FAQ from Easy Code Reader

What dependencies are required to run Easy Code Reader?

You need Python 3.10 or higher, the uv package manager, and a Java Development Kit (JDK) at least version 8 for running decompilers.

How does Easy Code Reader obtain Java source code from Maven dependencies?

It first tries to extract source from the ‑sources.jar file (preferred). If that isn't available, it automatically falls back to decompiling the main JAR using CFR or Fernflower, selecting the best decompiler based on the Java version.

Where does Easy Code Reader look for local Maven repositories?

By default it uses the MAVEN_HOME environment variable or ~/.m2/repository. You can override this with the --maven-repo argument when starting the server.

What should I do if I see “spawn uvx ENOENT”?

This error means uvx is not installed or not in your system PATH. Ensure uv is correctly installed and added to PATH, then restart your IDE before launching the MCP server.

What tools does Easy Code Reader provide?

It provides four main tools: read_jar_source (read source from a Maven dependency), list_all_project (list all projects in the project directory), list_project_files (list source and config files in a project), and read_project_code (read the content of a specific file).

Tags

More from Developer Tools