fetching-library-docs
Token-efficient library API documentation fetcher using Context7 MCP with 77% token savings. Fetches code examples, API references, and usage patterns for published libraries (React, Next.js, Prisma, etc). Use when users ask "how do I use X library", need code examples, want API syntax, or are learning a framework's official API. Triggers: "Show me React hooks", "Prisma query syntax", "Next.js routing API". NOT for exploring repo internals/source code (use researching-with-deepwiki) or local files.
Best use case
fetching-library-docs is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Token-efficient library API documentation fetcher using Context7 MCP with 77% token savings. Fetches code examples, API references, and usage patterns for published libraries (React, Next.js, Prisma, etc). Use when users ask "how do I use X library", need code examples, want API syntax, or are learning a framework's official API. Triggers: "Show me React hooks", "Prisma query syntax", "Next.js routing API". NOT for exploring repo internals/source code (use researching-with-deepwiki) or local files.
Teams using fetching-library-docs should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/fetching-library-docs/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How fetching-library-docs Compares
| Feature / Agent | fetching-library-docs | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Token-efficient library API documentation fetcher using Context7 MCP with 77% token savings. Fetches code examples, API references, and usage patterns for published libraries (React, Next.js, Prisma, etc). Use when users ask "how do I use X library", need code examples, want API syntax, or are learning a framework's official API. Triggers: "Show me React hooks", "Prisma query syntax", "Next.js routing API". NOT for exploring repo internals/source code (use researching-with-deepwiki) or local files.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Context7 Efficient Documentation Fetcher Fetch library documentation with automatic 77% token reduction via shell pipeline. ## Quick Start **Always use the token-efficient shell pipeline:** ```bash # Automatic library resolution + filtering bash scripts/fetch-docs.sh --library <library-name> --topic <topic> # Examples: bash scripts/fetch-docs.sh --library react --topic useState bash scripts/fetch-docs.sh --library nextjs --topic routing bash scripts/fetch-docs.sh --library prisma --topic queries ``` **Result:** Returns ~205 tokens instead of ~934 tokens (77% savings). ## Standard Workflow For any documentation request, follow this workflow: ### 1. Identify Library and Topic Extract from user query: - **Library:** React, Next.js, Prisma, Express, etc. - **Topic:** Specific feature (hooks, routing, queries, etc.) ### 2. Fetch with Shell Pipeline ```bash bash scripts/fetch-docs.sh --library <library> --topic <topic> --verbose ``` The `--verbose` flag shows token savings statistics. ### 3. Use Filtered Output The script automatically: - Fetches full documentation (934 tokens, stays in subprocess) - Filters to code examples + API signatures + key notes - Returns only essential content (205 tokens to Claude) ## Parameters ### Basic Usage ```bash bash scripts/fetch-docs.sh [OPTIONS] ``` **Required (pick one):** - `--library <name>` - Library name (e.g., "react", "nextjs") - `--library-id <id>` - Direct Context7 ID (faster, skips resolution) **Optional:** - `--topic <topic>` - Specific feature to focus on - `--mode <code|info>` - code for examples (default), info for concepts - `--page <1-10>` - Pagination for more results - `--verbose` - Show token savings statistics ### Mode Selection **Code Mode (default):** Returns code examples + API signatures ```bash --mode code ``` **Info Mode:** Returns conceptual explanations + fewer examples ```bash --mode info ``` ## Common Library IDs Use `--library-id` for faster lookup (skips resolution): ```bash React: /reactjs/react.dev Next.js: /vercel/next.js Express: /expressjs/express Prisma: /prisma/docs MongoDB: /mongodb/docs Fastify: /fastify/fastify NestJS: /nestjs/docs Vue.js: /vuejs/docs Svelte: /sveltejs/site ``` ## Workflow Patterns ### Pattern 1: Quick Code Examples User asks: "Show me React useState examples" ```bash bash scripts/fetch-docs.sh --library react --topic useState --verbose ``` Returns: 5 code examples + API signatures + notes (~205 tokens) ### Pattern 2: Learning New Library User asks: "How do I get started with Prisma?" ```bash # Step 1: Get overview bash scripts/fetch-docs.sh --library prisma --topic "getting started" --mode info # Step 2: Get code examples bash scripts/fetch-docs.sh --library prisma --topic queries --mode code ``` ### Pattern 3: Specific Feature Lookup User asks: "How does Next.js routing work?" ```bash bash scripts/fetch-docs.sh --library-id /vercel/next.js --topic routing ``` Using `--library-id` is faster when you know the exact ID. ### Pattern 4: Deep Exploration User needs comprehensive information: ```bash # Page 1: Basic examples bash scripts/fetch-docs.sh --library react --topic hooks --page 1 # Page 2: Advanced patterns bash scripts/fetch-docs.sh --library react --topic hooks --page 2 ``` ## Token Efficiency **How it works:** 1. `fetch-docs.sh` calls `fetch-raw.sh` (which uses `mcp-client.py`) 2. Full response (934 tokens) stays in subprocess memory 3. Shell filters (awk/grep/sed) extract essentials (0 LLM tokens used) 4. Returns filtered output (205 tokens) to Claude **Savings:** - Direct MCP: 934 tokens per query - This approach: 205 tokens per query - **77% reduction** **Do NOT use `mcp-client.py` directly** - it bypasses filtering and wastes tokens. ## Advanced: Library Resolution If library name fails, try variations: ```bash # Try different formats --library "next.js" # with dot --library "nextjs" # without dot --library "next" # short form # Or search manually bash scripts/fetch-docs.sh --library "your-library" --verbose # Check output for suggested library IDs ``` ## Verification Run: `python3 scripts/verify.py` Expected: `✓ fetch-docs.sh ready` ## If Verification Fails 1. Run diagnostic: `ls -la scripts/fetch-docs.sh` 2. Check: Script exists and is executable 3. Fix: `chmod +x scripts/fetch-docs.sh` 4. **Stop and report** if still failing - do not proceed with downstream steps ## Troubleshooting | Issue | Solution | |-------|----------| | Library not found | Try name variations or use broader search term | | No results | Use `--mode info` or broader topic | | Need more examples | Increase page: `--page 2` | | Want full context | Use `--mode info` for explanations | | Permission denied | Run: `chmod +x scripts/*.sh` | ## References For detailed Context7 MCP tool documentation, see: - [references/context7-tools.md](references/context7-tools.md) - Complete tool reference ## Implementation Notes **Components (for reference only, use fetch-docs.sh):** - `mcp-client.py` - Universal MCP client (foundation) - `fetch-raw.sh` - MCP wrapper - `extract-code-blocks.sh` - Code example filter (awk) - `extract-signatures.sh` - API signature filter (awk) - `extract-notes.sh` - Important notes filter (grep) - `fetch-docs.sh` - **Main orchestrator (ALWAYS USE THIS)** **Architecture:** Shell pipeline processes documentation in subprocess, keeping full response out of Claude's context. Only filtered essentials enter the LLM context, achieving 77% token savings with 100% functionality preserved. Based on [Anthropic's "Code Execution with MCP" blog post](https://www.anthropic.com/engineering/code-execution-with-mcp).
Related Skills
mkdocs-config-generator
Mkdocs Config Generator - Auto-activating skill for Technical Documentation. Triggers on: mkdocs config generator, mkdocs config generator Part of the Technical Documentation skill category.
generating-api-docs
Create comprehensive API documentation with examples, authentication guides, and SDKs. Use when creating comprehensive API documentation. Trigger with phrases like "generate API docs", "create API documentation", or "document the API".
defold-docs-fetch
Fetches Defold manuals and documentation. Use when looking up how Defold features work, understanding concepts, components, workflows, platform setup, or needing guidance beyond API reference.
mkdocs-translations
Generate a language translation for a mkdocs documentation stack.
microsoft-docs
Query official Microsoft documentation to find concepts, tutorials, and code examples across Azure, .NET, Agent Framework, Aspire, VS Code, GitHub, and more. Uses Microsoft Learn MCP as the default, with Context7 and Aspire MCP for content that lives outside learn.microsoft.com.
java-docs
Ensure that Java types are documented with Javadoc comments and follow best practices for documentation.
csharp-docs
Ensure that C# types are documented with XML comments and follow best practices for documentation.
fetching-dbt-docs
Retrieves and searches dbt documentation pages in LLM-friendly markdown format. Use when fetching dbt documentation, looking up dbt features, or answering questions about dbt Cloud, dbt Core, or the dbt Semantic Layer.
docs-cleaner
Consolidates redundant documentation while preserving all valuable content. This skill should be used when users want to clean up documentation bloat, merge redundant docs, reduce documentation sprawl, or consolidate multiple files covering the same topic. Triggers include "clean up docs", "consolidate documentation", "too many doc files", "merge these docs", or when documentation exceeds 500 lines across multiple files covering similar topics.
docs-finalize-and-commit
Finalize documentation changes for production readiness by discovering existing conventions, verifying code-doc alignment, reviewing format/terminology/tone consistency, and structuring clean commits. Counterpart of finalize-and-commit for documentation projects.
search-docs
Documentation search expert for Flutter SDK and Wind
zlibrary-to-notebooklm
自动从 Z-Library 下载书籍并上传到 Google NotebookLM。支持 PDF/EPUB 格式,自动转换,一键创建知识库。