9.2 KiB
Context7 MCP - 为所有Prompt获取最新文档
❌ 不使用Context7
大语言模型(LLM)可能依赖过时或通用的库信息。你可能会遇到:
- ❌ 代码示例已过时,或基于一年前的训练数据
- ❌ 幻觉产生的API根本不存在
- ❌ 针对旧版本包的通用回答
✅ 使用Context7
Context7 MCP直接从源头获取最新的、特定版本的文档和代码示例 — 并将它们直接放入你的提示中。
在Cursor中添加使用 context7
到你的提示:
创建一个使用app router的基本Next.js项目。使用 context7
创建一个脚本,删除PostgreSQL数据库中city字段为""的行。使用 context7
Context7将最新的代码示例和文档直接获取到你的LLM上下文中。
- 1️⃣ 按照往常,自然地编写你的提示
- 2️⃣ 告诉LLM
使用 context7
- 3️⃣ 获取可用的代码回复
无需在标签间切换,不存在幻觉API,不会生成过时的代码。
🛠️ 开始使用
要求
- Node.js >= v18.0.0
- Cursor, Windsurf, Claude Desktop或其他MCP客户端
通过Smithery安装
要通过Smithery自动安装Context7 MCP Server for Claude Desktop:
npx -y @smithery/cli install @upstash/context7-mcp --client claude
在Cursor中安装
前往:Settings
-> Cursor Settings
-> MCP
-> Add new global MCP server
推荐的方法是将以下配置粘贴到你的Cursor ~/.cursor/mcp.json
文件中。更多信息请参见Cursor MCP文档。
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp@latest"]
}
}
}
替代方案:使用Bun
{
"mcpServers": {
"context7": {
"command": "bunx",
"args": ["-y", "@upstash/context7-mcp@latest"]
}
}
}
替代方案:使用Deno
{
"mcpServers": {
"context7": {
"command": "deno",
"args": ["run", "--allow-net", "npm:@upstash/context7-mcp"]
}
}
}
在Windsurf中安装
将此内容添加到你的Windsurf MCP配置文件中。更多信息请参见Windsurf MCP文档。
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp@latest"]
}
}
}
在VSCode中安装
将此内容添加到你的VSCode MCP配置文件中。更多信息请参见VSCode MCP文档。
{
"servers": {
"Context7": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@upstash/context7-mcp@latest"]
}
}
}
在Zed中安装
可以通过Zed扩展安装,或者你可以将以下内容添加到你的Zed settings.json
文件中。更多信息请参见Zed Context Server文档。
{
"context_servers": {
"Context7": {
"command": {
"path": "npx",
"args": ["-y", "@upstash/context7-mcp@latest"]
},
"settings": {}
}
}
}
在Claude Code中安装
运行此命令。更多信息请参见Claude Code MCP文档。
claude mcp add context7 -- npx -y @upstash/context7-mcp@latest
在Claude Desktop中安装
将此内容添加到你的Claude Desktop claude_desktop_config.json
文件中。更多信息请参见Claude Desktop MCP文档。
{
"mcpServers": {
"Context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp@latest"]
}
}
}
使用Docker(容器部署)
如果你希望使用Docker容器运行MCP服务器:
-
构建Docker镜像:
确保Docker Desktop(或Docker守护进程)正在运行。 在项目根目录运行:
docker build -t context7-mcp .
-
配置MCP客户端:
更新MCP客户端配置以使用Docker命令。
cline_mcp_settings.json配置示例:
{ "mcpServers": { "Сontext7": { "autoApprove": [], "disabled": false, "timeout": 60, "command": "docker", "args": ["run", "-i", "--rm", "context7-mcp"], "transportType": "stdio" } } }
注意事项:
- 此为示例配置。请参考前面README中针对具体MCP客户端(如Cursor、VS Code等)的示例来调整结构(如
mcpServers
与servers
)。同时确保args
中的镜像名称与docker build
命令使用的标签一致。 - 当前Cursor版本(0.49.5), 请不要使用本方式启动MCP server,详情:Cursor官方说明
- 此为示例配置。请参考前面README中针对具体MCP客户端(如Cursor、VS Code等)的示例来调整结构(如
在Windows上安装
在windows上的配置相对于linux或macos来说有些许不同,(示例使用的Cline
), 其它编辑器同理, 参考command
和args
的配置即可
{
"mcpServers": {
"github.com/upstash/context7-mcp": {
"command": "cmd",
"args": ["/c", "npx", "-y", "@upstash/context7-mcp@latest"],
"disabled": false,
"autoApprove": []
}
}
}
可用工具
resolve-library-id
: 将通用库名称解析为Context7兼容的库ID。libraryName
(必需)
get-library-docs
: 使用Context7兼容的库ID获取库的文档。context7CompatibleLibraryID
(必需)topic
(可选): 将文档集中在特定主题上(例如"routing"、"hooks")tokens
(可选,默认10000): 返回的最大令牌数。小于10000的值会自动增加到10000。
开发
克隆项目并安装依赖:
bun i
构建:
bun run build
本地配置示例
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["tsx", "/path/to/folder/context7-mcp/src/index.ts"]
}
}
}
使用MCP Inspector测试
npx -y @modelcontextprotocol/inspector npx @upstash/context7-mcp@latest
故障排除
ERR_MODULE_NOT_FOUND
如果你看到这个错误,请尝试使用bunx
而不是npx
。
{
"mcpServers": {
"context7": {
"command": "bunx",
"args": ["-y", "@upstash/context7-mcp@latest"]
}
}
}
这通常可以解决模块解析问题,特别是在npx
无法正确安装或解析包的环境中。
MCP客户端错误
-
尝试从包名中删除
@latest
。 -
尝试使用
bunx
作为替代方案。 -
尝试使用
deno
作为替代方案。 -
确保你使用的是Node v18或更高版本,以便使用
npx
时获得原生fetch支持。
Context7媒体报道
- Better Stack: "免费工具让Cursor变得更智能10倍"
- Cole Medin: "这绝对是AI编码助手的最佳MCP服务器"
- Income stream surfers: "Context7 + SequentialThinking MCPs: 这是AGI吗?"
- Julian Goldie SEO: "Context7: 新的MCP AI代理更新"
- JeredBlu: "Context 7 MCP: 即时获取文档 + VS Code设置"
- Income stream surfers: "Context7: 将改变AI编码的新MCP服务器"
Star历史
许可证
MIT