ARTICLE · 1320370
给 AI 补当前文档:8 个库都查得到,本地 MCP 先过代理这一关
写前端的人不缺模型,缺的是模型眼前那一页当前版本的 API 文档。
你让 coding agent 给 Taro 页面加个路由跳转,它给你一段 this.$router;你让它查 uni-app 的页面生命周期,它把 Vue 2 的写法和 Vue 3 混在一起。最后你还是打开浏览器,找到官方文档,复制粘贴。
Context7 想解决的就是这一步:把库的当前文档和代码示例取出来,直接交给 agent。它提供 MCP server,也提供 CLI 加 Skill 的安装方式。这次我测的是 MCP 路径,没有登录、没有接模型,只在本机调用服务本身,看它到底能不能把文档取回来,以及取回来的东西是否对得上。
结论先说:未设代理的那次尝试,八次查询全报 TypeError: fetch failed;重新拉起本地 server、让代理进入进程环境后,八个库都解析到了,第一轮 14 个目标词全命中,第二轮独立重跑命中 12 个。单个中文问题也能拿到 Taro 的 useRouter 和 params。
📦 装起来:4 秒,57 MB
我装的是 @upstash/context7-mcp@4.5.0,命令是 npm install @upstash/context7-mcp@4.5.0。安装输出是 added 104 packages in 4s,node_modules 占 57 MB;包目录的磁盘占用是 288 KB,npm 的解包体积字段是 224,277 bytes,剩下的是依赖。
它要求 Node >=20.18.1。我这台机器是 Node v24.15.0,启动后服务打印 Context7 Documentation MCP Server v4.5.0 running on stdio。初始化用了 302 毫秒,tools/list 用 2 毫秒,返回两个工具:resolve-library-id 和 query-docs。
安装本身没有花头,倒是官方 README 的入口变了。现在最前面写的是 npx ctx7 setup,它会走 OAuth、生成 API key、装一个 Skill,并让你选择 CLI + Skills 或 MCP 模式。那是另一条安装路径;我这次没有跑 OAuth,只测本地 MCP server,所以下面所有结论都只属于 MCP。
这是一次项目内 npm 安装,不写系统目录。卸载用 npm uninstall @upstash/context7-mcp,再删掉测试目录即可。

图:本机 MCP 客户端启动记录。服务初始化 302 毫秒,tools/list 返回 2 个工具、5,231 字节工具定义。测试环境:macOS 26.1、Node v24.15.0、Context7 MCP 4.5.0,2026-11-06;这是本地测试页的实时结果,没有接任何模型。
📊 八个库,14 个目标 API:两次运行,命中 14 和 12
我选了八个库,既有前端常用的 Next.js、Vue、FastAPI,也有中文项目里更常见的 Taro、uni-app、Element Plus、Ant Design Vue、Vant。每个库都先调用 resolve-library-id,再用返回的 library ID 调 query-docs。每个问题里预先放了目标 API 名称,只检查返回文本里有没有出现这些字面词,不判断代码是否真的能运行。
接上代理后的第一轮:八个库全部解析成功,14 个目标词全部出现;共返回 46 个代码块、45,263 字节正文。resolve-library-id 平均 1.6 秒,query-docs 平均 1.4 秒。
第二轮独立重跑:八个库仍然全部解析成功,但目标词只命中 12 个;返回 49 个代码块、38.9 KB 正文,query-docs 平均 1.5 秒。缺的两个是 Next.js 的字面文件名 proxy.ts 和 Ant Design Vue 的字面标签 a-table。文档里其实分别返回了 NextResponse.redirect 和 pagination 相关内容,所以这更像“检索结果换了说法”,不是“库消失了”。
这组数字既证明这八个库不是空索引,也提醒你别把关键词命中当成质量分数。你要的是能运行的代码,不是把某个词写进结果里。

图:八个库的第二次运行结果。每个库先解析 library ID,再请求文档;目标 API 命中 12/14,query-docs 平均 1,518 毫秒。测试环境同前,未接模型。命中只代表返回文本出现了预先指定的 API 名称,不代表生成代码正确。
中文问题也单独试了一次。直接给 /nervjs/taro-docs 发“Taro React 里 useRouter 怎么拿到当前页面的路由参数?”,1.867 秒返回 2,777 字节、6 个代码块,里面有 useRouter、params,还有一段中文 API 说明。它没有把英文文档自动翻译成中文;Taro 的文档原本就有中文,Vue 返回的仍是英文页面。
还有一个细节会影响复现:同一个库两次解析出的 ID 不总是一样。Ant Design Vue 第一次是 /websites/3x_antdv,第二次是 /vuecomponent/ant-design-vue;Element Plus 也从仓库 ID 换成了 /websites/element-plus。如果你要把一次结果写进固定的工作流,最好直接把 library ID 钉住,不要让模型每次重新猜。
💰 免费额度是真的,但不是无限
Context7 官方定价页显示,Free 计划是每月 1,000 次 API 调用,Search API 和 Context API 各算一次;达到上限后会每天补 20 次,直到下个月重置。Pro 是 10 美元/席位/月,含 2,000 次/席位,超出后 5 美元/1,000 次。私有仓库只在 Pro 及以上可用。
单次矩阵的 16 次调用(8 次解析加 8 次文档查询)都没有 API key,并且全部成功,占免费额度约 1.6%。这不代表不填 key 永远够用,只代表公共库的轻量试用可以先跑起来。官方 README 仍建议申请免费 key,主要是为了更高限额;如果要接私有仓库,key 和付费计划就绕不开。

图:Context7 官方定价页。Free 为每月 1,000 次 API 调用;Pro 为 10 美元/席位/月,含 2,000 次,超出后按每 1,000 次 5 美元继续;私有仓库需 Pro 及以上。截取自 context7.com/plans,2026-11-06。
🔐 它拿到的是查询,不是你的代码
官方 FAQ 的口径是:Context7 只收到文档查询和库名,不接收代码、对话历史或敏感数据;但查询本身仍可能带上你的项目名、内部模块名或业务词。不要把 Token、客户名、数据库表结构写进问题里。
权限也要分清。这次测试用的是公开库,没有连接公司仓库,也没有把本地源码发给服务。你要让它查私有文档,先确认当前计划支持私有仓库,再决定是否把仓库接进去。
🧭 十分钟怎么接
如果你用的是支持 MCP 的客户端,先装固定版本,不要用 @latest:npm install @upstash/context7-mcp@4.5.0。然后在客户端里配置 npx -y @upstash/context7-mcp@4.5.0。如果你和这台机器一样走系统代理,把 HTTPS_PROXY 指向本机代理;不用代理就跳过这一步。不确认代理端口时,先用浏览器打开 context7.com,再在终端里试一次同样的请求。
接上之后,先拿一个你最近被 AI 写错的 API 试。问题里写清库名、版本和要做的事,例如“Taro React 里用 useRouter 取当前页参数”。先看 resolve-library-id 返回的 ID 是不是你要的库,再看 query-docs 里有没有当前版本的函数名和示例。通过这两步,再给 agent 加一条规则,让它遇到库和 API 问题时自动调用 Context7;不加规则,模型完全可能继续凭记忆写。
边界也要说清楚:我验证的是 MCP server 的返回,不是 Claude、Codex 或 Cursor 拿到文档后的代码质量。一个模型即使看到了正确文档,也可能抄错上下文;这一步仍要你自己跑测试。八个库都返回了带官方来源链接的正文,但索引更新延迟没有测,所以我不把“当前”写成“实时”。Context7 能给的是“当前文档在眼前”,不是“答案一定对”。
🚫 谁该跳过
只在完全离线环境工作,或不能把库名和问题发给外部服务的人。 需要私有仓库文档,但不想升级计划或配置权限的人。 期待它自动把英文文档翻成中文的人;它取回原文,不会替你翻译。 只想装一个“更聪明的模型”,却不愿意在客户端加规则、看工具日志的人。
今天就能做的一步:挑一个你最近纠正过 AI 的 API,先跑一次 resolve-library-id,再跑一次 query-docs。如果返回的页面里有当前版本的函数名和示例,再把它接进工作流;如果只有一堆看起来相关、但没有你需要的 API 的段落,先别装。
来源
Context7 官方仓库:https://github.com/upstash/context7 —— 最新 release @upstash/context7-mcp@4.5.0发布于 2026-11-03,仓库在 2026-11-05 仍有推送,MIT。Context7 MCP npm 包:https://www.npmjs.com/package/@upstash/context7-mcp —— 版本 4.5.0,Node.js >=20.18.1,MIT。Context7 官方定价:https://context7.com/plans —— Free 每月 1,000 次,Pro 10 美元/席位/月、含 2,000 次;私有仓库需 Pro 及以上。 Context7 官方文档:https://context7.com/docs/resources/developer —— MCP 的 resolve-library-id与query-docs用法,以及 API key 的作用。















































































