
告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度1. 为什么用 Roo Code filesystem MCP 做模块索引接手一个前端仓库第一件麻烦事往往不是改代码而是搞清楚目录结构。src/下面十几个文件夹components、features、shared、hooks、utils混在一起光靠tree命令只能看到名字看不出每个目录到底负责什么。人工翻一遍要半小时写进 README 又容易漏。这次我用 Roo Code 加 filesystem MCP 服务让模型自己读目录、读入口文件然后输出一份带职责说明的模块索引 README。模型选 Qwen3.7 Flash供应商走 TaoTokenBase URL 填https://taotoken.net/api。整个流程从创建 Key 到拿到 README控制在 10 分钟内。Roo Code 是 VS Code 里的一个 AI 编程插件支持 MCPModel Context Protocol。MCP 可以理解成给模型装的一双手模型本身只能生成文本但通过 MCP 服务它可以调用工具去读文件、列目录、执行命令。filesystem MCP 服务就是官方提供的一个参考实现专门用来读写本地文件系统。这里有个关键点Roo Code 的模型调用和 MCP 工具调用走的是两条链路。模型调用走的是你配置的 API 供应商MCP 工具调用走的是本地进程。很多人配完发现模型能聊天但 MCP 工具不触发就是因为没搞清楚这两条链路的关系。本文要验证的就是让这两条链路都跑通并且模型调用确实走的是 TaoToken 这条统一通道。为什么不用 Roo Code 自带的文件读取因为自带读取通常是把文件内容塞进上下文模型被动接收。MCP 是模型主动决定读哪个文件、读几次。做模块索引这种需要遍历目录的任务主动读取更合适也更能体现 MCP 的价值。Qwen3.7 Flash 在这个任务里的定位是够快、够便宜、支持工具调用。模块索引不需要深度推理需要的是稳定地按格式输出Flash 级别足够。模型 ID 以模型广场为准不同时间上架的版本可能不同配置时去 TaoToken 的模型列表里确认当前可用的 ID。2. 十分钟时间线从创建 Key 到 MCP 配置落地先给一张时间线让你知道每一步大概花多久。这是我在自己机器上跑的一次记录环境是 macOSVS Code 1.9xRoo Code 插件最新版Node.js 20。一次运行不代表所有环境都一样但可以当参考。步骤操作耗时1打开官网创建 API Key1 分钟2安装 filesystem MCP 服务2 分钟3Roo Code 填 Base URL 和模型 ID2 分钟4写 MCP 配置 JSON2 分钟5让模型读仓库生成 README2 分钟6验证调用是否入账1 分钟合计 10 分钟。其中第 2 步和第 4 步是最容易卡住的地方下面拆开讲。2.1 创建 Key 并确认模型 ID打开 TaoToken 官网注册后在控制台创建 API Key。Key 的格式是sk-开头的一串字符复制下来后面填进 Roo Code 和 MCP 配置里。注意 Key 只显示一次丢了就重新创建。创建 Key 的入口在控制台链接是 创建 Key。创建完之后去模型广场看当前可用的模型 ID。Qwen3.7 Flash 的 ID 以广场展示为准不要凭记忆写。广场里每个模型都有对应的 ID复制那个 ID后面填进 Roo Code 的模型字段。这一步不要跳过。模型 ID 写错Roo Code 会报 404 或者模型不存在。常见错误是把展示名当 ID比如展示名是「Qwen3.7 Flash」但实际 ID 可能是qwen3.7-flash或者带版本号的形式。以广场为准。2.2 安装 filesystem MCP 服务filesystem MCP 服务是 Model Context Protocol 官方提供的参考服务器之一用 Node.js 写的。安装方式有两种全局安装或者用npx直接跑。推荐npx不用管版本每次拉最新的。如果你要全局装命令是npm install -g modelcontextprotocol/server-filesystem但我更推荐在 MCP 配置里直接用npx这样 Roo Code 启动 MCP 服务时会自动拉取省去手动更新。配置写法在下一节。安装完之后确认 Node.js 版本。filesystem MCP 服务要求 Node.js 18 以上我用的是 20。版本太低会报语法错误。2.3 Roo Code 侧填 Base URL 和模型 ID打开 VS Code安装 Roo Code 插件。安装完成后点侧边栏的 Roo Code 图标进入设置。找到 API Provider 配置区域。这里选「OpenAI Compatible」或者「Custom Provider」不同版本叫法可能不同。关键是三个字段Base URL填https://taotoken.net/apiAPI Key填你刚才创建的YOUR_API_KEYModel ID填模型广场里 Qwen3.7 Flash 对应的 ID截图位说明在 Roo Code 设置页API Provider 选 Custom 后会出现 Base URL、API Key、Model 三个输入框。Base URL 输入框里填https://taotoken.net/api注意末尾不要加/v1。API Key 输入框填sk-开头的 Key。Model 输入框填广场里的 ID。填完后点保存Roo Code 会发一个测试请求如果配置正确状态会显示已连接。如果报 401检查 Key 是否复制完整有没有多余空格。如果报 404检查 Base URL 是否多写了/v1或者模型 ID 是否写错。这两个错误在配置阶段最常见。2.4 写 MCP 配置 JSONRoo Code 的 MCP 配置在设置里有一个专门的区域叫「MCP Servers」。点编辑会打开一个 JSON 文件。填入以下内容{ mcpServers: { filesystem: { command: npx, args: [ -y, modelcontextprotocol/server-filesystem, /Users/yourname/projects/your-frontend-repo ] } } }把最后的路径换成你要读取的前端仓库的绝对路径。这个路径就是 filesystem MCP 服务能访问的根目录它只能读这个目录下的文件不能越界。这是安全设计避免模型读到系统其他文件。配置保存后Roo Code 会启动这个 MCP 服务。在 MCP Servers 列表里filesystem 那一项应该显示绿色或者「Running」。如果显示红色点开看日志通常是路径写错或者 Node.js 版本问题。2.5 让模型读仓库生成 READMEMCP 服务跑起来后在 Roo Code 的对话窗口里输入任务。我用的是这段 Prompt请通过 filesystem MCP 读取当前仓库目录生成一份模块索引 README。 要求 1. 输出目录树深度到二级目录 2. 每个目录用一句话说明职责 3. 标出每个目录的入口文件如 index.ts、main.ts 4. 用 Markdown 格式输出不要额外解释发送后模型会先调用 MCP 的list_directory工具列出根目录然后根据结果决定读哪些子目录。整个过程它可能会调用多次工具每次调用在对话里都会显示工具名和参数。这就是验证 MCP 是否走通的关键如果模型只是凭猜测输出目录结构说明 MCP 没触发如果它显示了工具调用记录说明 MCP 链路通了。2.6 验证调用是否入账README 生成后回到 TaoToken 控制台看用量记录。这次对话的 Token 消耗应该出现在记录里。如果用量为 0说明模型调用没走 TaoToken可能 Roo Code 还在用别的供应商。这一步是确认「模型调用和 MCP 调用走同一条通道」的最终验证。3. 生成的模块索引样例与耗时记录下面是我在一个真实前端仓库上跑出来的 README 样例。仓库结构是典型的 React TypeScript 项目用 Vite 构建。为了不泄露具体业务目录名做了泛化处理但结构和职责说明是模型实际输出的。# 模块索引 ## 目录树 src/ ├── api/ │ ├── client.ts │ └── endpoints/ ├── components/ │ ├── common/ │ └── layout/ ├── features/ │ ├── auth/ │ ├── dashboard/ │ └── settings/ ├── hooks/ ├── stores/ ├── utils/ └── main.tsx ## 目录职责 ### api/ 封装 HTTP 请求。client.ts 是 axios 实例配置了 baseURL 和拦截器。 endpoints/ 下按业务域拆分接口定义每个文件导出该域的请求函数。 ### components/ 通用 UI 组件。common/ 放按钮、输入框、弹窗等基础组件。 layout/ 放页面骨架如 Header、Sidebar、PageContainer。 ### features/ 业务功能模块。每个子目录是一个独立功能域包含该功能的 组件、hooks、类型定义。auth/ 负责登录注册dashboard/ 负责 首页数据展示settings/ 负责用户配置。 ### hooks/ 跨功能复用的自定义 hooks。如 useDebounce、usePagination、 useLocalStorage。 ### stores/ 全局状态管理。基于 Zustand每个文件一个 store 按业务域拆分。 ### utils/ 纯函数工具。格式化、校验、转换类函数不依赖 React。 ## 入口文件 - src/main.tsx应用入口挂载 React 根节点配置路由和全局 Provider - src/api/client.tsHTTP 客户端入口 - src/features/*/index.ts各功能模块的导出入口这份 README 的生成耗时从发送 Prompt 到输出完成大约 40 秒。其中模型调用了 6 次 MCP 工具1 次列根目录5 次读子目录。Token 消耗在控制台可以看到这里不写具体数字因为每次仓库大小不同数字没有可比性。耗时记录方面我跑了三次分别是 38 秒、42 秒、40 秒。差异主要来自模型决定读哪些目录的随机性。这个任务不需要精确计时重点是流程能复现。有一点要说明模型输出的目录职责是基于目录名和入口文件内容推断的不是 100% 准确。比如utils/里如果混了业务逻辑模型可能还是写「纯函数工具」。所以生成后需要人工扫一眼把明显不对的地方改掉。这份 README 的价值是省去从零开始写的时间不是完全替代人工。4. 排障MCP 不触发、401、模型 ID 写错配置过程中最容易遇到三类问题按出现频率排序。4.1 MCP 工具不触发现象模型直接输出目录结构但对话里没有工具调用记录。原因通常是 MCP 服务没启动或者模型不知道有这个工具。排查步骤第一看 Roo Code 的 MCP Servers 列表filesystem 是否显示 Running。如果是 Stopped点启动看日志报什么错。常见错误是路径不存在或者npx找不到。第二确认 Roo Code 的当前对话是否启用了 MCP。有些版本需要在对话设置里手动勾选「Enable MCP」。如果没勾模型看不到工具列表。第三检查 Prompt 里是否明确提到「通过 filesystem MCP」。虽然模型通常能自动发现工具但明确提一句能提高触发率。第四如果 MCP 服务用的是npx第一次启动会下载包可能需要几十秒。这期间模型如果已经发了请求可能拿不到工具列表。等 MCP 显示 Running 后再发 Prompt。4.2 401 错误现象Roo Code 发请求时报 401 Unauthorized。原因就一个Key 不对。排查检查 Key 是否复制完整有没有首尾空格。检查 Key 是否已过期或被删除。检查 Roo Code 里填的 Key 字段是否正确有些版本有多个 Key 输入框别填错位置。如果确认 Key 没问题还是 401去 TaoToken 控制台 看这个 Key 的状态是否被禁用。正常情况下新建的 Key 立即可用。4.3 模型 ID 写错现象报 404 或者「model not found」。原因是模型 ID 和广场里的不一致。排查打开模型广场找到 Qwen3.7 Flash复制它的 ID。注意区分展示名和 ID。展示名是给人看的ID 是给 API 用的。有些模型有多个版本ID 里带日期或版本号比如qwen3.7-flash-2025xxxx。以广场为准不要自己拼。另外Base URL 末尾不要加/v1。TaoToken 的 Base URL 是https://taotoken.net/api加了/v1会变成https://taotoken.net/api/v1路径不对也会报 404。这是很多人从其他供应商迁移过来时容易犯的错因为有些供应商要求加/v1。4.4 MCP 读不到文件现象MCP 服务 Running但模型调用read_file时报权限错误或文件不存在。原因MCP 配置里的根路径写错了或者要读的文件不在这个路径下。filesystem MCP 只能访问配置里指定的目录及其子目录。如果你配的是/Users/yourname/projects/repo-a但实际仓库在repo-b就读不到。解决把 MCP 配置里的路径改成正确的仓库绝对路径重启 MCP 服务。5. 用同一把 Key 复现与验证整个流程跑通后建议做一次复现验证换一个仓库用同一把 Key、同一个 Prompt看是否能稳定生成 README。如果能说明配置没问题可以把这个流程固化下来。复现时注意几点第一MCP 配置里的路径要改成新仓库的路径。这是唯一需要改的地方。第二模型 ID 不变。Qwen3.7 Flash 的 ID 以广场为准如果广场更新了 ID以最新为准。第三Prompt 可以微调。比如要求输出深度到三级目录或者增加「标出每个目录的文件数量」。但核心结构不变。第四生成后去控制台看用量。每次调用的 Token 消耗应该都有记录。如果某次没有记录说明那次调用没走 TaoToken检查 Roo Code 的供应商配置是否被改动。这个流程的价值在于可复现。你不需要每次重新想 Prompt也不需要重新配 MCP。配一次之后换仓库只改路径。如果想把这个流程用到更多场景比如让模型读仓库生成 API 文档、生成组件清单只需要改 PromptMCP 配置和模型配置都不用动。filesystem MCP 提供的能力是通用的列目录、读文件、搜索文件内容。模型基于这些能力能做的事很多。长期开发的话可以看看 Coding Plan适合高频调用场景。如果只是想先试一条打开 模型对话 确认 Qwen3.7 Flash 的模型 ID 与广场一致然后在 控制台 创建 Key把本文的 MCP 配置 JSON 复制过去改一下仓库路径就能复现这份模块索引。Claude Code 或 CC Switch 的接入配置可以对照 接入文档三件套字段和本文的 Base URL 写法一致。 告别海外账号与网络限制稳定直连全球优质大模型限时半价接入中。 点击领取海量免费额度