local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Analyzes C/C++ source files to detect includes and differentiate between system and local headers for dependency tracking and importance ranking.
Processes JavaScript files using regex patterns to detect import/require statements for dependency tracking and importance ranking.
Supports running the MCP server from WSL Linux environments with compatible configuration files.
文件等级 MCP(模型上下文协议)服务器
一种基于 TypeScript 的工具,用于按重要性对代码库中的文件进行排序,并提供带有依赖关系跟踪的摘要。
概述
此工具可帮助您跟踪项目中哪些文件最重要,并为其提供 0(最不重要)到 10(最重要)之间的评级。它还可以跟踪文件依赖关系并提供摘要,帮助您了解代码库结构。
特征
- 按 0-10 的等级对文件进行排序(10 为最重要)
- 跟踪并可视化文件依赖关系(哪些文件导入哪些文件)
- 实时文件系统监控,实现自动更新
- 获取文件摘要(带有 LLM 集成的占位符)
- 查询单个文件、目录或整个代码库的排名
- 具有发现端点的自文档 API
- 简单的 stdio JSON 接口
设置
- 克隆此存储库
- 使构建脚本可执行:Copy
- 运行构建脚本:这将:Copy
- 检查 Node.js 安装
- 安装项目依赖项
- 编译 TypeScript 代码
- 生成 MCP 配置
- 在
/tmp/file-rank-mcp_*.log
中创建详细的日志文件
- 将生成的
mcp.json
移动到项目的.cursor/
目录以便与 Cursor AI 一起使用
用法
该工具使用模型上下文协议 (MCP) 通过 stdio 上的 JSON 进行通信。它会自动监视项目目录的更改,并相应地更新文件树。
运行服务器
支持的语言
服务器自动检测以下语言的依赖关系:
- Python:
import
和from ... import
语句 - C/C++:
#include
指令 - Rust:
use
和mod
语句 - Lua:
require
语句 - JavaScript/TypeScript:
import
语句
工作原理
该工具会维护代码库的实时树形结构,并存储在file-tree.json
中。每当项目目录中检测到更改时,此文件都会自动更新。
数据结构
文件树以 JSON 结构存储:
依赖性检测
该工具分析源代码以检测依赖关系:
- 扫描文件内容以查找特定于语言的导入模式
- 将相对导入解析为绝对路径
- 验证导入的文件是否存在
- 根据依赖计数计算重要性
文件重要性计算
文件根据以下因素分配重要性分数(0-10):
- 依赖项的数量(导入此文件的文件)
- 依赖树中的位置
- 文件类型和位置
技术堆栈
- TypeScript/Node.js
- 模型上下文协议 SDK (v1.7.0)
- Chokidar 用于文件系统监控
- 以 CommonJS 模块为目标的 ES2020
发展
要修改或扩展项目:
- 更改
src
目录中的 TypeScript 文件 - 运行构建脚本来编译并更新配置:Copy
- 运行服务器:Copy
构建脚本将:
- 安装任何新的依赖项
- 编译 TypeScript 代码
- 生成更新的 MCP 配置
- 创建详细的日志文件以进行故障排除
与法学硕士 (LLM) 的整合
当前实现包含 LLM 集成的占位符。在生产环境中,服务器可以扩展为:
- 使用 LLM 生成文件摘要
- 分析代码复杂度和可维护性
- 提供文件整理的智能建议
- 根据代码结构生成文档
执照
本项目遵循 GNU 通用公共许可证 v3 (GPL-3.0)。完整许可证文本请参阅LICENSE文件。
This server cannot be installed
该工具可帮助按重要性(1-10 级)对代码库文件进行排序、跟踪文件依赖关系并提供摘要,所有这些都可以通过基于 JSON 的简单界面访问。