关于 File AI
File AI 是只读 MCP 服务,可将本地文档索引为带稳定锚点的结构化内容。它面向需要检查、搜索和提取多种文档格式上下文、但不想自行解析文件内部结构的 Agent。
主要功能
- 01分析并索引本地文档
- 02读取内容块、分块和锚点
- 03按来源锚点搜索
- 04获取查询附近的上下文
- 05列出识别格式与提取覆盖范围
适用场景
- 01在本地文档中查找段落
- 02依据页码或幻灯片位置生成回答
- 03获取引用锚点附近的上下文
- 04处理前检查格式支持情况
MCP 相关
通过 MCP 工具提供文档分析、读取、搜索和上下文检索,并以资源形式提供文档配置、纲要和分块。服务为只读,不会修改源文件。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| path | string | 是 | 要分析的本地文件路径。 |
| refresh | boolean | 否 | 即使此路径已缓存,也重新解析。 |
| chunkSize | integer | 否 | 目标分块字符数。 |
| chunkOverlap | integer | 否 | 分块重叠字符数。 |
| maxTextLength | integer | 否 | 分块前每个源锚点的最大文本字符数。 |
详细介绍
File AI
面向 Agent 的只读文档感知 MCP 服务。File AI 使用 Flyfish File Viewer 核心作为格式识别的事实来源,然后将本地文件转换为稳定的配置文件、锚点、区块、分块、大纲、搜索结果和上下文片段,让 Agent 无需逆向分析 PDF、OOXML、电子表格、电子邮件或归档文件的内部结构,也能理解文档内容。
MCP Registry 名称:io.github.flyfish-dev/file-ai
安装
直接使用 npx:
npx -y @flyfish-dev/file-ai
或者全局安装:
npm install -g @flyfish-dev/file-ai
file-ai --transport stdio
MCP 客户端配置
Stdio:
{
"mcpServers": {
"file-ai": {
"command": "npx",
"args": ["-y", "@flyfish-dev/file-ai"]
}
}
}
Streamable HTTP:
npx -y @flyfish-dev/file-ai --transport http --host 127.0.0.1 --port 8765
端点:
http://127.0.0.1:8765/mcp
工具
doc_analyze:解析本地文件并缓存文档索引。doc_read:从现有索引或路径读取区块、分块或锚点。doc_search:使用来源锚点搜索缓存内容。doc_context:检索锚点或查询附近的区块。doc_list_formats:列出 File Viewer 核心注册表中的格式、所有支持的扩展名、渲染器功能和 File AI 提取器覆盖范围。
资源
doc://{indexId}/profiledoc://{indexId}/outlinedoc://{indexId}/chunks
支持的文件
File AI 通过 @file-viewer/core/headless 识别格式,目前覆盖 206 个已注册扩展名。因此,profile.format 与 Flyfish File Viewer 使用的渲染器选择保持一致。
内容提取是一个独立层。File AI 为文本、代码、Markdown、JSON、PDF 文本、DOCX、XLSX/CSV、PPTX、EML 和归档清单提供结构化感知。File Viewer 中其他仅由渲染器支持的格式,如 CAD、3D、媒体、图像、地理空间、绘图、电子书和数据资源,仍会在 profile.format 中被识别;如果尚无结构化文本提取器,File AI 会返回配置文件以及尽力提取的元数据/文本,并在 profile.warnings 和 profile.extraction 中明确列出警告。
每个内容区块都带有锚点,例如页、幻灯片、工作表、行范围、嵌套路径或字节/文本位置。基于文档内容提出主张时,Agent 应引用返回的 anchorId 值。
开发
pnpm install
pnpm build
pnpm test
pnpm validate:skill
本地运行:
pnpm dev -- --transport stdio
pnpm dev -- --transport http --port 8765
发布
该软件包包含:
@flyfish-dev/file-ai的 npm 元数据server.json中的 MCP Registry 元数据- GitHub Actions 工作流
.github/workflows/publish-mcp.yml
发布流程:
git tag v0.1.0
git push origin v0.1.0
该工作流会先发布 npm 软件包,然后通过 GitHub OIDC 将 io.github.flyfish-dev/file-ai 发布到官方 MCP Registry。仓库必须配置一个能够发布 @flyfish-dev/file-ai 的 NPM_TOKEN 密钥。
此服务为只读服务,不会修改源文档。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。