Context7 MCP
by Upstash
Context7 MCP provides up-to-date, version-specific documentation and code examples directly from the source for use in LLM prompts. It helps avoid outdated information and hallucinated APIs when using LLMs for code generation and understanding.
Last updated: N/A
Context7 MCP - Up-to-date Docs For Any Cursor Prompt
❌ Without Context7
LLMs rely on outdated or generic information about the libraries you use. You get:
- ❌ Code examples are outdated and based on year-old training data
- ❌ Hallucinated APIs don't even exist
- ❌ Generic answers for old package versions
✅ With Context7
Context7 MCP pulls up-to-date, version-specific documentation and code examples straight from the source — and places them directly into your prompt.
Add use context7
to your question in Cursor:
How do I use the new Next.js `after` function? use context7
How do I invalidate a query in React Query? use context7
How do I protect a route with NextAuth? use context7
Context7 fetches up-to-date documentation and working code examples right into your LLM’s context.
- 1️⃣ Ask your question naturally
- 2️⃣ Tell the LLM to
use context7
- 3️⃣ Get working code answers
No tab-switching, no hallucinated APIs that don't exist, no outdated code generations.
🛠️ Getting Started
Requirements
- Node.js >= v18.0.0
- Cursor, Windsurf, Claude Desktop or another MCP Client
Install in Cursor
Go to: Settings
-> Cursor Settings
-> MCP
-> Add new global MCP server
Paste this into your Cursor ~/.cursor/mcp.json
file. See Cursor MCP docs for more info.
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Install in Windsurf
Add this to your Windsurf MCP config file. See Windsurf MCP docs for more info.
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Available Tools
resolve-library-id
: Resolves a general library name into a Context7-compatible library ID.libraryName
(optional): Search and rerank results
get-library-docs
: Fetches documentation for a library using a Context7-compatible library ID.context7CompatibleLibraryID
(required)topic
(optional): Focus the docs on a specific topic (e.g., "routing", "hooks")tokens
(optional, default 5000): Max number of tokens to return
Development
Clone the project and install dependencies:
bun i
Build:
bun run build
Local Configuration Example
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["tsx", "/path/to/folder/context7-mcp/src/index.ts"]
}
}
}
Testing with MCP Inspector
npx -y @modelcontextprotocol/inspector npx @upstash/context7-mcp
License
MIT