文件等级 MCP(模型上下文协议)服务器
一种基于 TypeScript 的工具,用于按重要性对代码库中的文件进行排序,并提供带有依赖关系跟踪的摘要。
概述
此工具可帮助您跟踪项目中哪些文件最重要,并为其提供 0(最不重要)到 10(最重要)之间的评级。它还可以跟踪文件依赖关系并提供摘要,帮助您了解代码库结构。
特征
- 按 0-10 的等级对文件进行排序(10 为最重要)
- 跟踪并可视化文件依赖关系(哪些文件导入哪些文件)
- 实时文件系统监控,实现自动更新
- 获取文件摘要(带有 LLM 集成的占位符)
- 查询单个文件、目录或整个代码库的排名
- 具有发现端点的自文档 API
- 简单的 stdio JSON 接口
设置
- 克隆此存储库
- 使构建脚本可执行:
- 运行构建脚本:这将:
- 检查 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 文件 - 运行构建脚本来编译并更新配置:
- 运行服务器:
构建脚本将:
- 安装任何新的依赖项
- 编译 TypeScript 代码
- 生成更新的 MCP 配置
- 创建详细的日志文件以进行故障排除
与法学硕士 (LLM) 的整合
当前实现包含 LLM 集成的占位符。在生产环境中,服务器可以扩展为:
- 使用 LLM 生成文件摘要
- 分析代码复杂度和可维护性
- 提供文件整理的智能建议
- 根据代码结构生成文档
执照
本项目遵循 GNU 通用公共许可证 v3 (GPL-3.0)。完整许可证文本请参阅LICENSE文件。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
该工具可帮助按重要性(1-10 级)对代码库文件进行排序、跟踪文件依赖关系并提供摘要,所有这些都可以通过基于 JSON 的简单界面访问。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityProvides tools for collecting and documenting code from directories.Last updated -48112TypeScriptMIT License
- AsecurityAlicenseAqualityAnalyzes source code dependencies across multiple programming languages in the specified directory to identify file relationships, assisting in dependency management and project structure understanding.Last updated -1PythonMIT License
- -securityAlicense-qualityA comprehensive code analysis and management tool that integrates with Claude Desktop to analyze code at project and file levels, helping adapt changes to projects intelligently.Last updated -29PythonMIT License
- -securityFlicense-qualityAnalyzes codebases to generate dependency graphs and architectural insights across multiple programming languages, helping developers understand code structure and validate against architectural rules.Last updated -5JavaScript