乐于分享
好东西不私藏

MCP 新手实战:让 AI 读取本地文件,自动整理资料并生成摘要

MCP 新手实战:让 AI 读取本地文件,自动整理资料并生成摘要

最近,MCP 在 AI 开发和 AI 编程领域的热度越来越高。

不少 AI 客户端、代码编辑器和开发工具开始支持 MCP。通过 MCP,AI 不再只能处理用户手动复制到对话框里的内容,还可以在获得授权后读取本地文件、查询数据库、访问代码仓库或调用其他工具。

对于刚接触 MCP 的用户来说,这个概念可能显得有些复杂:

  • MCP Server 是什么?
  • MCP 和大模型 API 有什么区别?
  • 如何让 AI 读取本地文件?
  • 是否需要自己编写代码?
  • 使用 MCP 会不会泄露本地数据?

本文不讨论复杂的协议实现,而是从一个适合新手的场景开始:

配置一个只读的本地资料目录,让 AI 查找其中的文档,并根据文档生成摘要。

完成这个案例后,你就能理解 MCP 的基本工作方式,也能继续尝试代码分析、知识库问答和自动化办公等场景。


一、开始之前,先理解 MCP 在做什么

MCP 的全称是 Model Context Protocol,中文通常称为“模型上下文协议”。

它主要解决的问题是:

让 AI 应用以相对统一的方式连接外部数据和工具。

普通 AI 对话的基本流程是:

用户输入内容  ↓大模型理解和生成  ↓返回回答

使用 MCP 后,调用链路会多出外部工具这一部分:

用户提出任务  ↓AI 判断需要读取文件  ↓通过 MCP 调用文件工具  ↓工具返回文件内容  ↓AI 根据内容生成回答

需要特别注意的是:

MCP 本身不是大模型,也不会直接生成回答。

MCP 负责把文件、数据库和其他工具连接给 AI 应用;真正负责理解问题和生成内容的,仍然是大模型。


二、本次实践要完成什么?

我们准备一个专门用于测试的资料目录,里面放几篇 Markdown 或文本文件。

例如:

ai-notes/├── prompt-guide.md├── rag-notes.md├── mcp-introduction.md└── weekly-report.txt

配置完成后,可以让 AI 执行下面这些任务:

列出资料目录中的所有文件
阅读 mcp-introduction.md,并总结其中的核心观点
比较 prompt-guide.md 和 rag-notes.md 的主题差异
根据这个目录中的资料,生成一份 AI 学习清单

这个案例不需要开发一个完整应用,重点是理解以下流程:

AI 客户端  ↓MCP 文件系统服务  ↓获得授权的本地目录

三、需要准备哪些工具?

本次实践需要准备:

  • 一台 Windows、macOS 或 Linux 电脑
  • Node.js 运行环境
  • 一个支持 MCP 的 AI 客户端或编辑器插件
  • 一个测试资料目录
  • 可以调用大模型的配置

支持 MCP 的客户端和编辑器插件会持续变化,具体配置入口也可能随版本调整。开始前,建议先检查自己使用的工具是否提供以下能力:

  • 支持添加 MCP Server
  • 支持查看 MCP 工具列表
  • 支持自定义模型
  • 支持配置 API Key
  • 支持配置 Base URL
  • 支持填写模型名称

本文使用标准的文件系统 MCP Server 作为示例,不依赖具体客户端的界面布局。


四、第一步:安装 Node.js

很多 MCP Server 使用 Node.js 运行,因此需要先安装 Node.js。

可以在终端中执行:

node -v

如果显示类似下面的版本号,说明 Node.js 已经可用:

v20.x.x

再检查 npx:

npx -v

如果系统提示找不到命令,需要先安装 Node.js 的长期支持版本,然后重新打开终端。

Node.js 安装完成后,不一定需要手动全局安装 MCP Server。使用 npx 时,可以在启动服务时下载并运行对应的软件包。


五、第二步:创建一个测试资料目录

为了控制权限,建议单独创建一个目录,不要直接把整个磁盘、用户目录或项目根目录开放给 MCP。

例如在 Windows 中创建:

D:\mcp-data\ai-notes

macOS 或 Linux 可以创建:

~/mcp-data/ai-notes

在目录中放入几个不含敏感信息的测试文件,例如:

prompt-guide.mdrag-notes.mdmcp-introduction.md

可以在 mcp-introduction.md 中写入:

# MCP 学习笔记MCP 是一种连接 AI 应用和外部工具、数据资源的协议。MCP Server 可以封装文件系统、数据库、代码仓库和搜索服务等能力。MCP 不负责生成最终回答,大模型仍然负责理解任务和组织输出。

建议初次测试只放公开资料或自己编写的示例文档,不要放入密码、合同、客户资料、生产配置和公司内部代码。


六、第三步:配置文件系统 MCP Server

不同客户端的 MCP 配置入口可能不同,但核心配置通常比较接近。

Windows 示例:

{  "mcpServers": {    "local-notes": {      "command": "npx",      "args": [        "-y",        "@modelcontextprotocol/server-filesystem",        "D:\\mcp-data\\ai-notes"      ]    }  }}

macOS 或 Linux 示例:

{  "mcpServers": {    "local-notes": {      "command": "npx",      "args": [        "-y",        "@modelcontextprotocol/server-filesystem",        "/Users/your-name/mcp-data/ai-notes"      ]    }  }}

这段配置包含三个关键信息。

local-notes

这是 MCP Server 的本地名称,可以按照自己的习惯修改。

command

这里使用 npx 启动 MCP Server。

args

参数中指定了要运行的文件系统 MCP Server,以及允许访问的目录。

Windows JSON 路径中的反斜杠通常需要写成双反斜杠:

D:\\mcp-data\\ai-notes

配置完成后,保存文件并重启 AI 客户端。部分工具也提供重新加载 MCP Server 的按钮,可以直接刷新配置。


七、第四步:检查 MCP 是否连接成功

客户端重新启动后,可以查看 MCP 工具列表或服务器状态。

如果文件系统服务连接成功,通常可以看到与文件操作有关的工具,例如:

列出目录读取文件搜索文件查看文件信息

不同版本的 Server 和客户端可能显示不同的工具名称,这是正常现象。

可以先输入一个简单任务:

请列出已授权资料目录中的文件,不要读取目录之外的内容。

如果 AI 发起了 MCP 工具调用,并返回了目录中的文件列表,说明基本连接已经成功。

如果没有成功,可以检查:

  • Node.js 和 npx 是否可用
  • JSON 格式是否正确
  • Windows 路径是否正确转义
  • 配置文件是否放在客户端要求的位置
  • 修改配置后是否重启了客户端
  • 当前用户是否有权访问目标目录
  • 客户端是否显示 MCP Server 错误日志

八、第五步:配置负责生成回答的大模型

MCP 只负责连接文件。AI 读取文件后,还需要大模型完成理解、总结和回答。

如果使用的客户端支持自定义 OpenAI 兼容接口,通常需要配置三个核心参数:

API KeyBase URL模型名称

三者的作用分别是:

  • API Key
    :用于接口鉴权
  • Base URL
    :指定模型接口地址
  • 模型名称
    :指定本次调用的具体模型

如果同时使用多个 AI 工具,也可以通过统一模型入口减少重复配置。例如 https://transitai.chat/ 这类模型中转服务,可以作为兼容接口接入方式的参考。

配置时应以平台实际提供的接口文档为准,重点确认:

  • 是否支持 OpenAI 兼容接口
  • Base URL 的完整格式
  • 当前可用的模型名称
  • API Key 的创建方式
  • 模型价格和计费单位
  • 是否支持流式输出
  • 数据处理和日志保留规则

不要直接根据其他平台的示例填写模型名称。即使不同平台都兼容 OpenAI 接口,具体模型标识也可能不同。

完整链路可以理解为:

本地文件  ↓文件系统 MCP Server  ↓AI 客户端  ↓统一模型入口  ↓大模型  ↓生成摘要或回答

MCP 和模型中转服务承担的是不同职责:

MCP:连接本地文件和外部工具模型入口:连接负责生成回答的大模型

九、第六步:让 AI 总结本地文档

基础配置完成后,可以尝试让 AI 读取指定文件:

请读取 mcp-introduction.md,并完成以下任务:1. 用一句话概括 MCP2. 提炼 3 个核心知识点3. 说明 MCP 和大模型的关系4. 不要使用文件中没有的信息

相比只输入“总结一下”,这个提示词包含了明确的任务和输出要求,结果通常会更加稳定。

还可以尝试跨文件整理:

请读取当前资料目录中的所有 Markdown 文件。要求:1. 分别说明每个文件的主题2. 找出内容之间的关联3. 生成一份从入门到实践的学习顺序4. 每一项标注参考文件名5. 如果资料中没有相关信息,请明确说明

这个任务可以验证 AI 是否能够:

  • 列出目录
  • 读取多个文件
  • 理解不同文件的内容
  • 综合整理信息
  • 标注内容来源

十、如何让生成结果更可靠?

AI 能读取文件,不代表回答一定准确。

还需要在提示词中明确资料范围和回答规则。

可以使用下面这个模板:

你是一个本地资料整理助手。请在已授权目录内查找和读取文件,并根据文件内容回答。要求:1. 只使用读取到的文件内容2. 不要访问授权目录以外的位置3. 每个结论标注来源文件名4. 如果资料不足,请直接说明5. 不要编造资料中不存在的内容6. 先列出准备读取的文件,再开始总结

这个模板能够降低几个常见问题:

  • 模型根据自身知识补充过多内容
  • 回答中没有标明资料来源
  • 没有读取文件就直接生成结论
  • 资料不足时编造答案

对于重要内容,仍然需要人工核对原始文件。


十一、如何把它变成一个资料整理工作流?

完成基础读取后,可以进一步设计一个固定工作流。

例如,每周把学习资料放进指定目录,然后让 AI 生成学习周报:

请读取当前目录中本周新增的资料,并生成学习周报。输出结构:1. 本周新增资料2. 每份资料的核心内容3. 重复出现的主题4. 仍然不理解的问题5. 下周建议学习的方向6. 资料来源列表

也可以用来整理项目资料:

请读取目录中的需求文档、会议纪要和任务清单。请整理:1. 当前项目目标2. 已确认的需求3. 尚未解决的问题4. 负责人和截止时间5. 文档之间存在的矛盾

或者整理写作素材:

请读取素材目录中的文章和笔记,为“AI 工作流”生成一份文章大纲。要求:1. 不要直接复制原文2. 每一节标注参考资料3. 区分事实、观点和案例4. 不确定的信息单独列出

当这些提示词被固定下来后,MCP 就不再只是一个技术演示,而会逐渐成为可以重复使用的工作流组件。


十二、如何选择适合任务的模型?

文件读取和内容生成是两个不同阶段。

MCP 负责获取文件,而模型负责理解文件。不同复杂度的任务,可以使用不同能力和成本的模型。

轻量模型适合

  • 列出文件
  • 提取标题
  • 生成关键词
  • 短文本分类
  • 固定字段提取

均衡模型适合

  • 单篇文档总结
  • 会议纪要整理
  • 普通问答
  • 写作素材分类
  • 多份短文档对比

高能力模型适合

  • 大量文档综合分析
  • 跨文件查找矛盾
  • 复杂代码项目理解
  • 多步骤任务规划
  • 重要报告生成

选择模型时,不应该只看模型是否足够强,还要关注:

  • 文档长度
  • 任务复杂度
  • 响应速度
  • 输出稳定性
  • 调用成本
  • 是否需要结构化输出

一种实用思路是:

简单任务先用轻量模型  ↓普通资料整理使用均衡模型  ↓复杂分析再切换高能力模型

如果客户端支持自定义模型,就可以通过切换模型名称完成对比测试。通过 transitai.chat 这类统一模型入口配置时,也应先查看其实际支持的模型列表,不要假设所有模型都能使用。


十三、使用本地文件 MCP 时要注意什么?

MCP 可以访问本地数据,因此必须认真控制权限。

1. 不要授权整个磁盘

不建议使用下面这类范围过大的目录:

C:\D:\/Users/your-name/

更合理的方式是创建专门的资料目录,只授权当前任务需要的数据。

2. 不要放入敏感文件

测试目录中不要包含:

  • 密码和私钥
  • .env
     文件
  • API Key
  • 客户资料
  • 未公开合同
  • 生产数据库备份
  • 公司内部核心代码

3. 优先从只读任务开始

初学时先使用列出目录、读取文件和搜索内容等能力。

如果 MCP Server 支持写入、移动或删除文件,应确认客户端是否会在执行前请求用户批准。

4. 检查第三方 MCP Server

运行一个 MCP Server,本质上是在电脑上运行一个软件包。

安装前应该确认:

  • 软件包来源
  • 项目维护状态
  • 要求的系统权限
  • 是否会发送外部请求
  • 是否能够查看源代码
  • 是否存在已知安全问题

5. 重要操作必须人工确认

涉及以下操作时,不应完全自动执行:

  • 删除或覆盖文件
  • 修改代码
  • 执行终端命令
  • 发送邮件
  • 修改数据库
  • 调用生产系统

AI 可以生成建议,但最终执行应保留明确的确认步骤。


十四、常见问题排查

问题一:客户端找不到 MCP Server

检查 npx 是否可用:

npx -v

然后检查客户端的 MCP 配置格式和错误日志。

问题二:无法读取文件

检查:

  • 路径是否真实存在
  • Windows 路径是否正确转义
  • 文件是否位于授权目录内
  • 当前用户是否拥有读取权限

问题三:能看到工具,但 AI 不调用

可以在提示词中明确要求:

请先调用文件工具读取 mcp-introduction.md,再根据文件内容回答。

同时检查当前模型是否支持客户端使用的工具调用方式。

问题四:AI 读取文件后仍然答错

这通常不是 MCP 连接问题,而可能是:

  • 文件内容本身不完整
  • 一次读取的资料太多
  • 提示词没有要求只依据文件
  • 模型忽略了部分上下文
  • 多个文件之间存在冲突

可以缩小文件范围,并要求回答标注来源。

问题五:切换模型后工具调用失败

不同模型对工具调用和结构化参数的支持可能存在差异。

建议检查:

  • 模型是否支持工具调用
  • 客户端是否兼容当前模型
  • 中转接口是否正确转发工具参数
  • 模型名称是否填写正确
  • 客户端日志中是否有格式错误

十五、下一步还可以做什么?

完成本地文件读取后,可以继续尝试以下方向:

1. 连接代码项目

让 AI 在授权范围内读取项目文件,解释模块结构、定位代码和整理修改建议。

2. 连接 Git 仓库

让 AI 获取 Issue、提交记录和代码变更,辅助生成开发周报。

3. 连接测试数据库

使用只读账号,让 AI 查询测试数据并生成分析报告。

4. 连接搜索工具

让 AI 获取公开网页信息,并结合本地资料完成对比分析。

5. 编写自己的 MCP Server

如果已有业务 API,可以把部分低风险能力封装成 MCP 工具,供内部 AI 助手调用。

建议按照下面的顺序逐步学习:

本地只读文件  ↓代码仓库和测试数据  ↓外部搜索与业务 API  ↓带人工确认的写操作

不要在还不了解权限边界时,直接让 AI 连接生产系统。


MCP 最值得关注的地方,不只是让 AI 多了几个工具,而是它提供了一种相对统一的连接方式。

在本次实践中,各部分的职责非常清楚:

本地目录:保存资料MCP Server:提供文件访问能力AI 客户端:组织对话和工具调用模型接口:提供理解与生成能力

如果需要在多个客户端或模型之间切换,可以使用兼容 OpenAI 接口的统一模型入口进行配置。transitai.chat 可以作为这类接入方式的参考,但实际使用前应检查模型列表、接口文档、计费说明和数据处理规则。

对于新手来说,最适合的第一步不是搭建复杂 Agent,也不是一次连接所有工具,而是从一个受控的本地目录开始:

让 AI 读取一份文件  ↓让 AI 总结文件  ↓让 AI 对比多份资料  ↓把流程整理成固定模板

当 AI 能够在明确授权和安全边界内读取真实资料时,它才开始从一个通用聊天工具,逐步变成能够参与实际工作的助手。

相关学习资料