| name | context7 |
| description | Use when looking up library documentation, API references, framework patterns, or code examples for ANY library (React, Next.js, Vue, Django, Laravel, etc.) and the Context7 MCP server is unavailable or not configured. Fetches the same current docs directly via the Context7 REST API as a fallback. Triggers on: how to use library, API docs, framework pattern, import usage, library example. |
| license | (MIT AND CC-BY-SA-4.0) |
| compatibility | Requires curl or fetch, jq. Optional: ctx7 CLI / MCP server. |
| metadata | {"version":"1.6.1","repository":"https://github.com/netresearch/context7-skill","author":"Netresearch DTT GmbH"} |
| allowed-tools | ["Bash(curl:*)","Bash(jq:*)","Read"] |
Context7 Documentation Lookup Skill
Fetch current library documentation, API references, and code examples via the Context7 REST API.
When to Use
Use this skill when the user asks about library APIs, framework patterns, or version-specific behavior. Trigger on:
- Library questions: "How do I use [library]?", "[library] API docs", "[library] patterns"
- Import statements:
import, require, from followed by a library name
- Framework-specific topics: hooks, routing, middleware, ORM queries, schema definitions
When NOT to Use
Do NOT use this skill for:
- General programming concepts (closures, recursion, design patterns)
- Code review or refactoring tasks
- Debugging business logic
- Writing scripts from scratch without library-specific questions
Installation
The skill works without Node, but you can optionally install the Context7 CLI (ctx7) for higher rate limits and agent registration:
npm install -g ctx7
Or run ./install-skill-tools.sh --context7 from this repo.
Per-Agent Registration
ctx7 setup --claude
ctx7 setup --cursor
ctx7 setup --opencode
ctx7 setup --codex
ctx7 setup --gemini
ctx7 setup --antigravity
Devin, OpenClaw, and AGY (manual setup)
ctx7 does not support these agents natively. Configure the Context7 MCP server manually:
CONTEXT7_API_KEY=YOUR_CONTEXT7_API_KEY npx -y @upstash/context7-mcp
- Devin CLI:
devin mcp add context7 --transport stdio --command npx --env CONTEXT7_API_KEY=YOUR_CONTEXT7_API_KEY -- -y @upstash/context7-mcp
- Devin Desktop: add the
mcpServers.context7 block (command npx, args above) to your Devin MCP settings.
- OpenClaw / AGY: include the same
mcpServers.context7 block in the workspace mcp.json or the agent's MCP settings.
Tip: Export CONTEXT7_API_KEY for the MCP server, or CTX7_API_KEY when using the ctx7 CLI. Do not hard-code the key in the config.
Note: The fallback scripts/context7.sh uses curl + jq and requires CONTEXT7_API_KEY only for higher rate limits.
Core Workflow
-
Search for the library ID:
scripts/context7.sh search "library-name"
ctx7 search "library-name"
-
Pick the best result: Choose the ID with the highest score and most relevant description. Prefer official sources (e.g., /vercel/next.js over community forks).
-
Fetch documentation with a focused topic:
scripts/context7.sh docs "<library-id>" "<topic>" "<mode>"
Always extract a specific topic from the user's question. For "How does React Suspense work with server components?", use topic suspense server components.
Parameters
| Parameter | Required | Description |
|---|
library-id | Yes | From search results, format /vendor/library |
topic | No | Focus area extracted from user query (e.g., hooks, routing, validation) |
mode | No | code (default) for API references; info for conceptual guides |
Examples
scripts/context7.sh search "react"
scripts/context7.sh docs "/facebook/react" "hooks" "code"
scripts/context7.sh search "nextjs"
scripts/context7.sh docs "/vercel/next.js" "app router" "info"
scripts/context7.sh search "django"
scripts/context7.sh docs "/django/django" "queryset filter" "code"
scripts/context7.sh search "laravel"
scripts/context7.sh docs "/laravel/framework" "eloquent relationships" "code"
Environment Configuration
Set CONTEXT7_API_KEY for higher rate limits (optional):
export CONTEXT7_API_KEY="your-api-key"
Contributing: https://github.com/netresearch/context7-skill