| name | mcp-context7 |
| description | Query up-to-date library documentation and code examples using Context7. Provides 2 tools for resolving library IDs and querying documentation. |
| allowed-tools | Bash, Read |
Context7
Query up-to-date documentation and code examples for any programming library or framework using Context7's documentation service.
Version: 2.0.2 (locked 2026-01-20)
Environment Variables (Optional)
This skill works without authentication, but setting an API key is recommended for higher rate limits:
export MCP_CONTEXT7_API_KEY="ctx7sk_..."
Without API key: Works with lower rate limits (suitable for light usage)
With API key: Higher rate limits, free tier is generous for most use cases
Environment variables use the MCP_<SKILL_NAME>_<VAR> naming convention to avoid conflicts.
Tools
| Tool | Description |
|---|
| resolve-library-id | Resolves a package/product name to a Context7-compatible library ID and returns matching libraries |
| query-docs | Retrieves and queries up-to-date documentation and code examples from Context7 for any programming library or framework |
⚠️ Always check tools/ for exact parameter names before calling.
Usage
Quick Start
⚠️ Before calling any tool, read its documentation in tools/ to get the exact parameter names.
node ./scripts/mcp-caller.mjs list
CLI (Single Call)
Run from this skill directory:
node ./scripts/mcp-caller.mjs call <tool> '<json-args>'
node ./scripts/mcp-caller.mjs resource <uri>
node ./scripts/mcp-caller.mjs prompt <name> '<json-args>'
node ./scripts/mcp-caller.mjs list
Programmatic (Batch/Parallel)
For batch operations or complex logic, use the API module:
import { callTool, listTools } from './scripts/api.mjs';
const tools = await listTools();
console.log(tools.map(t => ({ name: t.name, params: Object.keys(t.inputSchema?.properties || {}) })));
const result = await callTool('toolName', { });
const results = await Promise.all([
callTool('tool1', { }),
callTool('tool2', { }),
]);
console.log(JSON.stringify(results, null, 2));
Available API functions:
callTool(name, args) - Call a tool
listTools() - List available tools (includes inputSchema with parameter info)
readResource(uri) - Read a resource
listResources() - List resources
getPrompt(name, args) - Get a prompt
listPrompts() - List prompts
close() - Close connection (optional cleanup)
Error Handling
If a tool call fails (e.g., "method not found", parameter changes):
- Try to complete the task using other available tools
- Inform user: "This skill may be outdated - MCP server API has changed"
- User needs to run mcp-skill-generator to update this skill
Do not retry failed calls repeatedly - prioritize finding alternatives.
Updating
To update this skill with newer MCP server version:
- Run mcp-skill-generator
- Provide this skill's path for update