context7
About
This skill fetches current library documentation and code examples via the Context7 REST API for any npm or PyPI package. It automatically activates when users ask about library APIs, framework patterns, or need official documentation. It's a lightweight alternative to Context7 MCP with no persistent context overhead.
Quick Install
Claude Code
Recommended/plugin add https://github.com/majiayu000/claude-skill-registrygit clone https://github.com/majiayu000/claude-skill-registry.git ~/.claude/skills/context7Copy and paste this command in Claude Code to install this skill
Documentation
Context7 Documentation Lookup Skill
Fetch current library documentation, API references, and code examples without MCP context overhead.
Works on all platforms via REST API.
When to Use
Activate automatically when:
- User asks about library APIs or framework patterns
- User requests code generation using specific libraries/frameworks
- Import statements suggest documentation needs:
import,require,from - Questions about specific library versions or migration
- Need for official documentation patterns vs generic solutions
- Setting up or configuring third-party tools
- "How do I use X library?", "What's the API for Y?"
Examples:
- "Create Next.js middleware with authentication" → Use context7
- "Set up Prisma with PostgreSQL" → Use context7
- "Implement Supabase authentication" → Use context7
Workflow
Quick Start (If You Know the Library)
Skip the search when you already know the library:
scripts/context7.py docs "/vercel/next.js" "middleware authentication"
Common library IDs:
- React:
/facebook/react - Next.js:
/vercel/next.js - Prisma:
/prisma/prisma - Supabase:
/supabase/supabase - Express:
/expressjs/express
Full Workflow
Step 1: Search for Library ID (if unknown)
Search first to get the correct library ID:
scripts/context7.py search "library-name"
Example output shows library IDs you can use:
ID: /facebook/react
Name: React
Snippets: 2135 | Score: 79.4
Step 2: Fetch Documentation
scripts/context7.py docs "<library-id>" "[topic]" "[mode]"
Parameters:
library-id: From search results (e.g.,/facebook/react) or known library IDtopic: Optional focus area (e.g.,hooks,routing,authentication)mode:code(default) for API/examples,infofor guides
Version-Specific Docs:
# Request specific version by adding it to the library ID
scripts/context7.py docs "/vercel/next.js/14" "middleware"
# Or mention in topic
scripts/context7.py docs "/facebook/react" "hooks in React 18"
Examples:
# Get React hooks documentation
scripts/context7.py docs "/facebook/react" "hooks"
# Get Next.js routing docs
scripts/context7.py docs "/vercel/next.js" "routing"
# Get conceptual guide (info mode)
scripts/context7.py docs "/vercel/next.js" "app router" info
# Get version-specific docs
scripts/context7.py docs "/vercel/next.js/14" "server components"
Step 3: Apply to User's Question
Use the returned documentation to:
- Provide accurate, version-specific answers
- Show official code patterns and examples
- Reference correct API signatures
- Include relevant caveats or deprecations
- Cite the source URL when available
Script Reference
| Command | Purpose | Example |
|---|---|---|
search | Find library ID | scripts/context7.py search "prisma" |
docs | Fetch documentation | scripts/context7.py docs "/prisma/prisma" "queries" |
Requirements:
- Python 3.6+ (built-in on most systems)
- No external dependencies - uses Python standard library only
Documentation Modes
| Mode | Use For | Example |
|---|---|---|
code | API references, code examples, function signatures (default) | scripts/context7.py docs "/facebook/react" "useState" |
info | Conceptual guides, tutorials, architecture docs | scripts/context7.py docs "/vercel/next.js" "routing" info |
Example Workflow
# User asks: "How do I use React hooks?"
# Option A: If you know the library ID, skip search
scripts/context7.py docs "/facebook/react" "hooks"
# Option B: If you don't know the library ID
# Step 1: Search for React
scripts/context7.py search "react"
# Output shows: ID: /facebook/react
# Step 2: Fetch hooks docs
scripts/context7.py docs "/facebook/react" "hooks"
# Step 3: Use the returned documentation to answer
Validation & Recovery
If results are unsatisfactory, follow this recovery workflow:
-
Empty or irrelevant results?
- Try a broader topic (e.g., "hooks" instead of "useEffect cleanup")
- Switch mode: use
infoifcodereturns nothing, or vice versa - Verify library ID is correct with a fresh search
-
Library not found?
- Search with alternative names (e.g., "nextjs" vs "next.js")
- Try the organization name (e.g., "vercel next")
- Check for typos in the library ID format (
/org/repo)
-
Rate limited?
- Inform user about CONTEXT7_API_KEY for higher limits
- Provide cached/general knowledge as fallback
Always verify the documentation matches the user's version requirements before providing answers.
Common Use Cases
Use Case 1: Direct Library Lookup
When you know the exact library the user is asking about:
# User: "Create a Next.js API route with authentication"
scripts/context7.py docs "/vercel/next.js" "api routes authentication"
Use Case 2: Version-Specific Documentation
When the user mentions or needs a specific version:
# User: "How do I use Next.js 14 server actions?"
scripts/context7.py docs "/vercel/next.js/14" "server actions"
# Or search for the version
scripts/context7.py search "next.js 14"
Use Case 3: Conceptual Understanding
When the user needs to understand concepts, not just code:
# User: "Explain how Next.js app router works"
scripts/context7.py docs "/vercel/next.js" "app router architecture" info
Use Case 4: Discovery Search
When you're unsure which library the user means:
# User: "I need a database ORM for Node.js"
scripts/context7.py search "node.js ORM"
# Review results, pick most relevant (e.g., /prisma/prisma)
scripts/context7.py docs "/prisma/prisma" "getting started"
Error Handling
If the script fails:
- Dependencies: Verify Python 3.6+ is installed (
python3 --version) - Library ID format: Check the format is
/org/project(with leading slash) - Topic too narrow: Try a broader topic or no topic filter
- Wrong mode: Try
infomode ifcodereturns insufficient results - Network issues: Check connectivity and firewall settings
- Rate limiting: If using without API key, you may be rate-limited. Get a free key at context7.com/dashboard
Debug mode:
# Check Python version
python3 --version
# Test basic connectivity
python3 scripts/context7.py search "react"
Notes
- Script path: All
scripts/context7.pycommands are relative to this skill's directory - No MCP overhead: Uses REST API directly, no tool schemas in context
- API key optional: Works without key, but rate-limited. Get free key at context7.com/dashboard
- Topic filtering: Use specific topics for focused results
- Search first (when needed): Search to find the correct library ID only if you don't know it
- Skip search (when possible): Use known library IDs directly (e.g.,
/facebook/react,/vercel/next.js) - Caching: Results are not cached; each call fetches fresh data
- Version support: Append version to library ID (e.g.,
/vercel/next.js/14) or mention in topic - Cross-platform: Python 3.6+ works on Windows, macOS, and Linux
- No external dependencies: Uses only Python standard library
Performance Tips:
- Keep known library IDs in memory (React =
/facebook/react, Next.js =/vercel/next.js, etc.) - Skip search when you know the library
- Use specific topics to get focused results faster
- Use
codemode (default) for implementation details,infomode for concepts
Environment Variables:
# Set API key (all platforms)
export CONTEXT7_API_KEY="your-api-key"
# Windows Command Prompt
set CONTEXT7_API_KEY=your-api-key
# Windows PowerShell
$env:CONTEXT7_API_KEY="your-api-key"
License: MIT License - See LICENSE for complete terms Author: Arvind Menon Based on: Context7 REST API by Upstash
GitHub Repository
Related Skills
content-collections
MetaThis skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.
creating-opencode-plugins
MetaThis skill provides the structure and API specifications for creating OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It offers implementation patterns for JavaScript/TypeScript modules that intercept and extend the AI assistant's lifecycle. Use it when you need to build event-driven plugins for monitoring, custom handling, or extending OpenCode's capabilities.
evaluating-llms-harness
TestingThis Claude Skill runs the lm-evaluation-harness to benchmark LLMs across 60+ standardized academic tasks like MMLU and GSM8K. It's designed for developers to compare model quality, track training progress, or report academic results. The tool supports various backends including HuggingFace and vLLM models.
langchain
MetaLangChain is a framework for building LLM applications using agents, chains, and RAG pipelines. It supports multiple LLM providers, offers 500+ integrations, and includes features like tool calling and memory management. Use it for rapid prototyping and deploying production systems like chatbots, autonomous agents, and question-answering services.
