← 返回目录
F

FileScopeMCP

社区
你的AI已经会写代码,现在它了解你的代码库。
GitHub 源仓库 ↗
★ 301 Stars 分类 · 开发工具 热门 源版本 fd179e0a93ee
56FMRS · C
可靠性
8/20
安全与权限
12/20
维护活跃度
11/20
文档质量
14/20
安装易用性
11/20

FileScopeMCP是一个功能强大的代码分析工具,专为增强AI助手的代码理解能力而设计。它通过重要性评分、依赖映射和符号提取,为AI提供精确的上下文,减少对源代码的读取。安装简单,支持多种语言和客户端。它的实用性广泛,但需要注意启发式评分的局限性,以及依赖本地LLM时的隐私和配置复杂性。

查看 FMRS 评分方法 →

FileScopeMCP 分析代码库,基于依赖关系识别重要文件,生成依赖图和重要性评分。它支持多种编程语言,自动提取符号和调用关系,并通过文件监视器保持元数据最新。可选地,它使用本地LLM生成文件摘要,并提供Nexus仪表盘进行可视化探索。

工具能力

status
查看代理连接、队列深度、LLM进度和监视器状态。
find_important_files
按重要性评分列出最高分文件,附带依赖计数。
get_file_summary
获取文件的详细元数据,包括摘要、概念、变更影响、导出、依赖和过时程度。
list_files
列出完整文件树或按重要性排序的Top-N文件。
find_symbol
解析符号名称到文件和行范围,支持前缀匹配。
find_callers
查找调用指定符号的所有符号(适用于TS/JS)。
find_callees
查找指定符号调用的所有符号(适用于TS/JS)。
search
在符号、摘要、用途和路径中搜索文件元数据。
list_changed_since
列出自某时间戳或git提交以来更改的文件。
get_communities
获取基于导入耦合的Louvain聚类文件组。
detect_cycles
查找循环依赖链。
get_cycles_for_file
查找涉及特定文件的循环依赖。
scan_all
通过代理将文件排队用于LLM摘要。
set_base_directory
指向不同的项目目录。
set_file_summary
手动设置或覆盖文件摘要。
set_file_importance
手动设置文件重要性评分(0-10)。
exclude_and_remove
从跟踪中删除文件/模式(破坏性操作)。

安装接入

  1. 克隆仓库:git clone https://github.com/admica/FileScopeMCP。2. 进入目录并运行 ./build.sh,它会安装依赖、编译并注册到Claude Code。3. 对于其他客户端,参考 docs/mcp-clients.md 手动配置。
claude_desktop_config.json
{
  "type": "stdio",
  "command": "node",
  "args": [
    "/path/to/FileScopeMCP/dist/mcp-server.js"
  ],
  "env": {}
}

选型与风险

适合谁

  • 需要深度代码库上下文给AI助手的开发者。
  • 希望在开发过程中自动维护代码元数据的团队。
  • 使用多语言项目(支持TS/JS、Python、C/C++、Rust、Go等)。

不适合谁

  • 只需要简单文件列表而不需要依赖分析的场景。
  • 在不支持Node.js >=22的环境中使用。
  • 需要完全离线且无LLM设置的场景(但基础功能仍可用)。

所需权限

  • 文件系统读取和监视权限(扫描代码库)。
  • 写入权限(创建 `.filescope/data.db` 数据库)。
  • 网络权限(可选,用于连接本地LLM端点)。

风险与副作用

  • 重要文件评分是启发式的,可能不符合所有项目偏好。
  • 正则表达式解析语言可能不如AST精确。
  • LLM摘要依赖外部服务,可能产生隐私风险。
  • 数据库可能在大型代码库中占用显著空间。

常见排障

  1. 确保Node.js >=22已安装,并安装构建工具(如 `build-essential`)。
  2. 检查日志 `~/.filescope/data.db` 是否存在,确保监视器正在运行。
  3. 如果LLM摘要不生成,确认本地LLM端点已配置且可用。
  4. 参考 `docs/troubleshooting.md` 获取常见问题解决方案。

使用场景

AI助手快速理解大型代码库的结构和关键文件。
重构前查找调用关系,评估变更影响。
自动生成并及时更新的文件摘要,供AI使用。
可视化项目依赖图和社区结构。

支持客户端

Claude Desktop完整支持
Cursor AI完整支持
Codex完整支持