一个基于 Starlette 和 SSE 的多功能服务端项目,支持递归读取 Python 和 Java 项目文件及其依赖,并支持对整个文件夹进行递归分析。
conf/配置文件目录mcp_recursive_server.json递归服务配置
server/服务端相关代码__init__.pyread_file_server.py主服务端启动文件
tools/工具函数目录__init__.pydirectory_analyzer.py文件夹递归分析工具file_analyzer.py文件分析工具read_file.py递归读取文件工具parsers/语言解析器目录__init__.pybase.py解析器基类factory.py解析器工厂java_parser.pyJava 解析器python_parser.pyPython 解析器
tmp/临时和测试目录__init__.pytest_read_file.py相关测试
README.md项目说明文档
- Python 3.11+
- starlette
- uvicorn
pip install starlette uvicorn mcp- 支持递归读取 Python 文件及其通过 import 导入的依赖模块
- 支持递归读取 Java 文件及其 import 的依赖类(需在同一项目目录下)
- 支持对整个文件夹进行递归分析,自动识别并处理其中的 Python/Java 文件及其依赖
- 自动识别文件类型,分析依赖关系,生成依赖树结构
- 提供基于 Starlette 的 HTTP/SSE 服务端接口,便于集成和自动化调用
server/read_file_server.py 提供了基于 Starlette 的服务端,支持通过 HTTP 接口递归读取 Python/Java 文件及其依赖,也支持对文件夹的递归分析。
启动服务:
python server/read_file_server.py --host 0.0.0.0 --port 8081URL: http://<host>:<port>/sse