File Rank MCP Server 使用说明
项目简介
File Rank MCP Server 是一个基于 Model Context Protocol (MCP) 的后端服务,用于分析和理解代码仓库。它通过分析代码文件之间的依赖关系和重要性,为开发者和LLM提供代码库的结构化信息。该服务器能够监控文件系统的变化,实时更新文件树,并提供查询文件信息、文件依赖关系以及项目文件树的功能,从而帮助LLM更好地理解和操作代码。
主要功能点
- 文件重要性排序: 根据文件在代码库中的依赖关系和位置,评估文件的重要性,并给出0-10的评分(10为最重要)。
- 依赖关系追踪: 自动检测并追踪代码文件之间的依赖关系,支持多种编程语言(Python, C/C++, Rust, Lua, JavaScript/TypeScript)。
- 实时文件系统监控: 监控项目目录的文件变化,自动更新文件树和文件信息。
- 文件信息查询: 提供查询单个文件或目录的详细信息,包括文件路径、名称、是否为目录、依赖关系和重要性评分。
- 项目文件树检索: 提供检索整个项目文件树的功能,包含所有文件和目录的结构化信息。
- 标准MCP接口: 通过标准的 JSON-RPC over Stdio 接口与 MCP 客户端通信。
安装步骤
- 克隆仓库
git clone https://github.com/admica/file_rank_mcp.git cd file_rank_mcp - 执行构建脚本
这个脚本会自动安装依赖、编译代码并生成 'mcp.json' 配置文件。chmod +x build.sh ./build.sh - 移动配置文件 将生成的 'mcp.json' 文件移动到你的项目 '.cursor/' 目录下 (如果你使用 Cursor AI)。
服务器配置
MCP 客户端需要配置以下信息来启动和连接 File Rank MCP Server。以下是 'mcp.json' 配置示例:
{ "servers": [ { "name": "file-rank-mcp", // 服务器名称,可以自定义 "command": "node", // 启动服务器的命令,这里使用 Node.js 运行 JavaScript "args": ["dist/mcp-server.js"] // 启动命令的参数,指向编译后的服务器入口文件 } ] }
配置参数说明:
- 'name': 服务器的唯一标识名称,客户端通过此名称引用服务器。
- 'command': 启动服务器进程的可执行命令。
- 'args': 传递给启动命令的参数列表。
基本使用方法
-
启动服务器: MCP 客户端 (例如 Cursor AI) 会根据 'mcp.json' 的配置自动启动 'File Rank MCP Server'。你也可以手动在项目根目录下运行以下命令启动服务器:
node dist/mcp-server.js服务器启动后,会监听标准输入 (stdio) 上的 JSON-RPC 请求。
-
资源查询: 客户端可以通过 MCP 协议请求 'file-rank' 资源,获取文件或目录的信息。
- 查询整个项目文件树:资源 URI 为 'file-rank-mcp://current-project'
- 查询指定路径的文件或目录信息:资源 URI 为 'file-rank-mcp://path/to/file_or_directory' (例如 'file-rank-mcp://src/mcp-server.ts')
-
工具调用: 客户端可以调用服务器提供的工具来执行特定操作。
- 获取项目文件树: 调用工具 'get_file_tree' (无需参数)
- 获取文件/目录信息: 调用工具 'get_file_info',参数 'path' 指定文件或目录的相对路径 (例如 '{ "path": "src/file-utils.ts" }')
- 列出文件依赖: 调用工具 'list_dependencies',参数 'path' 指定文件相对路径 (例如 '{ "path": "src/mcp-server.ts" }')
注意: 服务器通过标准 JSON-RPC over Stdio 与客户端通信,无需额外配置网络端口。
信息
分类
开发者工具