Zum Inhalt

Kontext für MCP Server Cheat Sheet

generieren

Überblick

Context7 ist ein Model Context Protocol (MCP) Server, der KI-Codierungstools mit Zugriff auf aktuelle, versionspezifische Dokumentationen für 1000+ Bibliotheken und Frameworks zur Verfügung stellt. Es eliminiert veraltete Informationen, indem sie Dokumente direkt aus offiziellen Quellen ziehen.

ZEIT Anmerkung: Erfordert MCP-kompatible AI-Tools (Claude, Cursor, Windsurf, etc.)

Installation

NPM Installation

```bash

Install globally

npm install -g @upstash/context7

Install locally in project

npm install @upstash/context7

Verify installation

npx @upstash/context7 --version ```_

Docker Installation

```bash

Pull Docker image

docker pull mcp/context7

Run Context7 server

docker run -p 3000:3000 mcp/context7

Run with custom configuration

docker run -p 3000:3000 -v $(pwd)/config:/app/config mcp/context7 ```_

Aus der Quelle

```bash

Clone repository

git clone https://github.com/upstash/context7.git cd context7

Install dependencies

npm install

Build and run

npm run build npm start ```_

MCP Konfiguration

Cursor IDE

json // Add to Cursor MCP settings \\\\{ "mcpServers": \\\\{ "context7": \\\\{ "command": "npx", "args": ["@upstash/context7"], "env": \\\\{ "CONTEXT7_API_KEY": "your-api-key" \\\\} \\\\} \\\\} \\\\}_

Claude Desktop

json // ~/.claude/claude_desktop_config.json \\\\{ "mcpServers": \\\\{ "context7": \\\\{ "command": "npx", "args": ["@upstash/context7"], "env": \\\\{ "CONTEXT7_API_KEY": "your-api-key" \\\\} \\\\} \\\\} \\\\}_

Windsurf IDE

json // Add to Windsurf MCP configuration \\\\{ "mcpServers": \\\\{ "context7": \\\\{ "command": "npx", "args": ["@upstash/context7", "--port", "3000"], "env": \\\\{ "CONTEXT7_API_KEY": "your-api-key" \\\\} \\\\} \\\\} \\\\}_

VS-Code mit Continue.dev

json // .continue/config.json \\\\{ "mcpServers": [ \\\\{ "name": "context7", "command": "npx", "args": ["@upstash/context7"], "env": \\\\{ "CONTEXT7_API_KEY": "your-api-key" \\\\} \\\\} ] \\\\}_

Verfügbare Werkzeuge

Resolv-library-id

```bash

Resolve library name to Context7 ID

Input: General library name

Output: Context7-compatible library ID

Example usage in AI chat:

"Find the Context7 ID for React"

Returns: /facebook/react

```_

Get-library-docs

```bash

Fetch documentation for specific library

Parameters:

- context7CompatibleLibraryID (required)

- topic (optional)

- tokens (optional, default: 10000)

Example usage in AI chat:

"Get React documentation for hooks"

Uses: /facebook/react with topic "hooks"

```_

Unterstützte Bibliotheken

Frontend Frameworks

```bash

React ecosystem

/facebook/react /vercel/next.js /gatsbyjs/gatsby /vuejs/vue /nuxt/nuxt /angular/angular

State management

/reduxjs/redux /pmndrs/zustand /mobxjs/mobx /vuejs/pinia ```_

Backend Frameworks

```bash

Node.js frameworks

/expressjs/express /fastify/fastify /nestjs/nest /koajs/koa

Python frameworks

/django/django /pallets/flask /fastapi/fastapi /tornadoweb/tornado

Other languages

/spring-projects/spring-boot /rails/rails /laravel/laravel ```_

Datenbanken

```bash

SQL databases

/mongodb/docs /prisma/prisma /typeorm/typeorm /sequelize/sequelize

NoSQL databases

/redis/redis /elastic/elasticsearch /apache/cassandra ```_

Cloud Services

```bash

AWS services

/aws/aws-sdk-js /aws/aws-cdk /aws/aws-cli

Google Cloud

/googleapis/google-cloud-node /firebase/firebase-js-sdk

Azure

/azure/azure-sdk-for-js /azure/azure-cli ```_

Verwendungsbeispiele

Grundlegende Dokumentation Schau.

```javascript // In AI chat with Context7 enabled: "Show me the latest React useState documentation"

// Context7 automatically: // 1. Resolves "React" to /facebook/react // 2. Fetches current useState documentation // 3. Provides up-to-date examples and API reference ```_

Version-Specific Dokumentation

```javascript // Get specific version documentation "Get Next.js 14 documentation for app router"

// Context7 provides: // - Version 14 specific features // - App router implementation details // - Migration guides from pages router ```_

Themenorientierte Abfragen

```javascript // Focus on specific topics "Get MongoDB documentation for aggregation pipelines"

// Context7 returns: // - Aggregation framework documentation // - Pipeline stage references // - Performance optimization tips ```_

Multi-Library Vergleiche

```javascript // Compare similar libraries "Compare Prisma and TypeORM query builders"

// Context7 fetches: // - Current Prisma query documentation // - Current TypeORM query documentation // - Enables accurate comparison ```_

Konfigurationsoptionen

Umweltvariablen

```bash

API configuration

export CONTEXT7_API_KEY="your-api-key" export CONTEXT7_PORT=3000 export CONTEXT7_HOST="localhost"

Cache settings

export CONTEXT7_CACHE_TTL=3600 export CONTEXT7_CACHE_SIZE=1000

Rate limiting

export CONTEXT7_RATE_LIMIT=100 export CONTEXT7_RATE_WINDOW=60 ```_

Datei konfigurieren

json // context7.config.json \\\\{ "server": \\\\{ "port": 3000, "host": "localhost" \\\\}, "cache": \\\\{ "ttl": 3600, "maxSize": 1000, "enabled": true \\\\}, "rateLimit": \\\\{ "requests": 100, "window": 60 \\\\}, "libraries": \\\\{ "autoUpdate": true, "updateInterval": 86400 \\\\} \\\\}_

Individuelle Bibliothek Quellen

json // Add custom documentation sources \\\\{ "customSources": [ \\\\{ "id": "/company/internal-lib", "name": "Internal Library", "url": "https://docs.company.com/internal-lib", "type": "markdown" \\\\} ] \\\\}_

Erweiterte Nutzung

Programm-Zugang

```javascript // Use Context7 programmatically const \\{ Context7Client \\} = require('@upstash/context7');

const client = new Context7Client(\\{ apiKey: process.env.CONTEXT7_API_KEY \\});

// Resolve library ID const libraryId = await client.resolveLibraryId('React'); console.log(libraryId); // /facebook/react

// Get documentation const docs = await client.getLibraryDocs(\\{ libraryId: '/facebook/react', topic: 'hooks', tokens: 5000 \\}); ```_

Zoll MCP Server

```javascript // Create custom MCP server with Context7 const \\{ MCPServer \\} = require('@modelcontextprotocol/sdk'); const \\{ Context7Client \\} = require('@upstash/context7');

const server = new MCPServer(\\{ name: 'custom-context7', version: '1.0.0' \\});

const context7 = new Context7Client();

server.addTool(\\{ name: 'get-docs', description: 'Get documentation with custom processing', inputSchema: \\{ type: 'object', properties: \\{ library: \\{ type: 'string' \\}, topic: \\{ type: 'string' \\} \\} \\}, handler: async (\\{ library, topic \\}) => \\{ const libraryId = await context7.resolveLibraryId(library); const docs = await context7.getLibraryDocs(\\{ libraryId, topic, tokens: 8000 \\});

// Custom processing
return processDocumentation(docs);

\\} \\}); ```_

Integration von Werkzeugen

```javascript // Webpack plugin for Context7 class Context7WebpackPlugin \\{ apply(compiler) \\{ compiler.hooks.beforeCompile.tapAsync('Context7Plugin', async (params, callback) => \\{ // Update documentation cache before build await updateContext7Cache(); callback(); \\}); \\} \\}

// Vite plugin export function context7Plugin() \\{ return \\{ name: 'context7', buildStart() \\{ // Initialize Context7 for development initializeContext7(); \\} \\}; \\} ```_

Überwachung und Debugging

Gesundheitschecks

```bash

Check server status

curl http://localhost:3000/health

Check library availability

curl http://localhost:3000/libraries

Test library resolution

curl -X POST http://localhost:3000/resolve \ -H "Content-Type: application/json" \ -d '\\{"libraryName": "React"\\}' ```_

Logging Konfiguration

json \\\\{ "logging": \\\\{ "level": "info", "format": "json", "outputs": ["console", "file"], "file": \\\\{ "path": "./logs/context7.log", "maxSize": "10MB", "maxFiles": 5 \\\\} \\\\} \\\\}_

Leistungsüberwachung

```javascript // Monitor Context7 performance const \\{ Context7Monitor \\} = require('@upstash/context7/monitor');

const monitor = new Context7Monitor(\\{ metricsInterval: 60000, alertThresholds: \\{ responseTime: 5000, errorRate: 0.05 \\} \\});

monitor.on('alert', (alert) => \\{ console.log('Context7 Alert:', alert); // Send to monitoring system \\}); ```_

Fehlerbehebung

Gemeinsame Themen

```bash

Server not starting

Check port availability

netstat -an|grep 3000

Check configuration

npx @upstash/context7 --validate-config

Library not found

Update library index

npx @upstash/context7 --update-libraries

Slow responses

Check cache status

curl http://localhost:3000/cache/stats ```_

Debug Mode

```bash

Enable debug logging

export CONTEXT7_DEBUG=true npx @upstash/context7

Verbose output

npx @upstash/context7 --verbose

Test specific library

npx @upstash/context7 --test-library /facebook/react ```_

Cache Management

```bash

Clear cache

curl -X DELETE http://localhost:3000/cache

Warm cache for popular libraries

curl -X POST http://localhost:3000/cache/warm

Cache statistics

curl http://localhost:3000/cache/stats ```_

Sicherheitsüberlegungen

API Schlüsselverwaltung

```bash

Use environment variables

export CONTEXT7_API_KEY="$(cat ~/.context7/api-key)"

Rotate API keys regularly

npx @upstash/context7 --rotate-key

Restrict API access

export CONTEXT7_ALLOWED_ORIGINS="https://your-domain.com" ```_

Netzwerksicherheit

json \\\\{ "security": \\\\{ "cors": \\\\{ "enabled": true, "origins": ["https://trusted-domain.com"] \\\\}, "rateLimit": \\\\{ "enabled": true, "requests": 100, "window": 60 \\\\}, "authentication": \\\\{ "required": true, "methods": ["apiKey", "jwt"] \\\\} \\\\} \\\\}_

Leistungsoptimierung

Caching-Strategien

json \\\\{ "cache": \\\\{ "strategy": "lru", "maxSize": 1000, "ttl": 3600, "compression": true, "persistence": \\\\{ "enabled": true, "path": "./cache" \\\\} \\\\} \\\\}_

Optimierung anfordern

```javascript // Batch requests for better performance const batchRequests = [ \\{ library: 'React', topic: 'hooks' \\}, \\{ library: 'Next.js', topic: 'routing' \\}, \\{ library: 'TypeScript', topic: 'interfaces' \\} ];

const results = await context7.batchGetDocs(batchRequests); ```_

Ressourcen

  • [Context7 GitHub Repository](__LINK_6___ -%20MCP%20Dokumentation
  • (__LINK_6___)
  • [Claude MCP Guide](__LINK_6___
  • [Cursor MCP Setup](__LINK_6___
  • [Gemeinschaftsbeispiele](__LINK_6___