Skip to main content
Glama

Context7 MCP – Aktuelle Code-Dokumente für jede Eingabeaufforderung

Webseite Schmiedeabzeichen

中文文档 한국어 문서 Dokumentation auf Spanisch Dokumentation auf Französisch Dokumentation in Portugiesisch (Brasilien) Dokumentation auf Italienisch Indonesische Dokumentation Dokumentation auf Deutsch Dokumentation auf Russisch Türkische Dokumentation Arabische Dokumentation

❌ Ohne Kontext7

LLMs basieren auf veralteten oder allgemeinen Informationen über die von Ihnen verwendeten Bibliotheken. Sie erhalten:

  • ❌ Codebeispiele sind veraltet und basieren auf jahrelangen Trainingsdaten

  • ❌ Halluzinierte APIs existieren nicht einmal

  • ❌ Allgemeine Antworten für alte Paketversionen

Related MCP server: docs-mcp-server

✅ Mit Context7

Context7 MCP zieht aktuelle, versionsspezifische Dokumentationen und Codebeispiele direkt aus der Quelle – und platziert sie direkt in Ihre Eingabeaufforderung.

Fügen Sie Ihrer Eingabeaufforderung im Cursor use context7 hinzu:

Create a basic Next.js project with app router. use context7
Create a script to delete the rows where the city is "" given PostgreSQL credentials. use context7

Context7 holt aktuelle Codebeispiele und Dokumentation direkt in den Kontext Ihres LLM.

  • 1️⃣ Schreiben Sie Ihre Eingabeaufforderung auf natürliche Weise

  • 2️⃣ Weisen Sie das LLM an, use context7

  • 3️⃣ Erhalten Sie funktionierende Code-Antworten

Kein Tab-Wechsel, keine halluzinierten APIs, die nicht existieren, keine veralteten Codegenerationen.

🛠️ Erste Schritte

Anforderungen

  • Node.js >= v18.0.0

  • Cursor, Windsurf, Claude Desktop oder ein anderer MCP-Client

Installation über Smithery

So installieren Sie Context7 MCP Server für Claude Desktop automatisch über Smithery :

npx -y @smithery/cli install @upstash/context7-mcp --client claude

Im Cursor installieren

Gehen Sie zu: Settings -> Cursor Settings -> MCP -> Add new global MCP server

Das Einfügen der folgenden Konfiguration in Ihre Cursor-Datei ~/.cursor/mcp.json ist die empfohlene Vorgehensweise. Sie können die Installation auch in einem spezifischen Projekt durchführen, indem Sie .cursor/mcp.json in Ihrem Projektordner erstellen. Weitere Informationen finden Sie in der Cursor-MCP-Dokumentation .

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}
{
  "mcpServers": {
    "context7": {
      "command": "bunx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}
{
  "mcpServers": {
    "context7": {
      "command": "deno",
      "args": ["run", "--allow-env", "--allow-net", "npm:@upstash/context7-mcp"]
    }
  }
}

Installation im Windsurf

Fügen Sie dies Ihrer Windsurf MCP-Konfigurationsdatei hinzu. Weitere Informationen finden Sie in der Windsurf MCP-Dokumentation .

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

In VS Code installieren

Fügen Sie dies Ihrer VS Code MCP-Konfigurationsdatei hinzu. Weitere Informationen finden Sie in der VS Code MCP-Dokumentation .

{
  "servers": {
    "Context7": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

In Zed installieren

Es kann über Zed Extensions installiert oder zu Ihrer Zed settings.json hinzugefügt werden. Weitere Informationen finden Sie in der Dokumentation zum Zed Context Server .

{
  "context_servers": {
    "Context7": {
      "command": {
        "path": "npx",
        "args": ["-y", "@upstash/context7-mcp"]
      },
      "settings": {}
    }
  }
}

In Claude Code installieren

Führen Sie diesen Befehl aus. Weitere Informationen finden Sie in der Claude Code MCP-Dokumentation .

claude mcp add context7 -- npx -y @upstash/context7-mcp

In Claude Desktop installieren

Fügen Sie dies Ihrer Claude Desktop-Datei claude_desktop_config.json hinzu. Weitere Informationen finden Sie in der Claude Desktop MCP-Dokumentation .

{
  "mcpServers": {
    "Context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

In BoltAI installieren

Öffnen Sie die Seite „Einstellungen“ der App, navigieren Sie zu „Plugins“ und geben Sie das folgende JSON ein:

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

Geben Sie nach dem Speichern im Chat get-library-docs gefolgt von Ihrer Context7-Dokumentations-ID ein (z. B. get-library-docs /nuxt/ui ). Weitere Informationen finden Sie auf der Dokumentationsseite von BoltAI . Informationen zu BoltAI unter iOS finden Sie in diesem Handbuch .

Verwenden von Docker

Wenn Sie den MCP-Server lieber in einem Docker-Container ausführen möchten:

  1. Erstellen Sie das Docker-Image:

    Erstellen Sie zunächst eine Dockerfile im Projektstammverzeichnis (oder an einem beliebigen Ort):

    FROM node:18-alpine
    
    WORKDIR /app
    
    # Install the latest version globally
    RUN npm install -g @upstash/context7-mcp
    
    # Expose default port if needed (optional, depends on MCP client interaction)
    # EXPOSE 3000
    
    # Default command to run the server
    CMD ["context7-mcp"]

    Erstellen Sie anschließend das Image mit einem Tag (z. B. context7-mcp ). Stellen Sie sicher, dass Docker Desktop (oder der Docker-Daemon) ausgeführt wird. Führen Sie den folgenden Befehl im selben Verzeichnis aus, in dem Sie die Dockerfile gespeichert haben:

    docker build -t context7-mcp .
  2. Konfigurieren Sie Ihren MCP-Client:

    Aktualisieren Sie die Konfiguration Ihres MCP-Clients, um den Docker-Befehl zu verwenden.

    Beispiel für eine cline_mcp_settings.json:

    {
      "mcpServers": {
        "Сontext7": {
        "autoApprove": [],
        "disabled": false,
        "timeout": 60,
          "command": "docker",
          "args": ["run", "-i", "--rm", "context7-mcp"],
          "transportType": "stdio"
        }
      }
    }

    Hinweis: Dies ist eine Beispielkonfiguration. Bitte beachten Sie die spezifischen Beispiele für Ihren MCP-Client (z. B. Cursor, VS Code usw.) weiter oben in dieser README-Datei, um die Struktur anzupassen (z. B. mcpServers vs. servers ). Stellen Sie außerdem sicher, dass der Image-Name in args mit dem im docker build Befehl verwendeten Tag übereinstimmt.

Installation unter Windows

Die Konfiguration unter Windows unterscheidet sich geringfügig von der unter Linux oder macOS ( im Beispiel wird Cline verwendet ). Dasselbe Prinzip gilt auch für andere Editoren; siehe Konfiguration von command und args .

{
  "mcpServers": {
    "github.com/upstash/context7-mcp": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@upstash/context7-mcp"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Umgebungsvariablen

  • DEFAULT_MINIMUM_TOKENS : Legen Sie die Mindestanzahl an Token für den Dokumentationsabruf fest (Standard: 10000).

Beispiele:

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"],
      "env": {
        "DEFAULT_MINIMUM_TOKENS": "10000"
      }
    }
  }
}

Verfügbare Tools

  • resolve-library-id : Löst einen allgemeinen Bibliotheksnamen in eine Context7-kompatible Bibliotheks-ID auf.

    • libraryName (erforderlich)

  • get-library-docs : Ruft die Dokumentation für eine Bibliothek mithilfe einer Context7-kompatiblen Bibliotheks-ID ab.

    • context7CompatibleLibraryID (erforderlich)

    • topic (optional): Konzentrieren Sie die Dokumente auf ein bestimmtes Thema (z. B. „Routing“, „Hooks“)

    • tokens (optional, Standard 10000): Maximale Anzahl der zurückzugebenden Token. Werte, die kleiner sind als der konfigurierte DEFAULT_MINIMUM_TOKENS -Wert oder der Standardwert von 10000, werden automatisch auf diesen Wert erhöht.

Entwicklung

Klonen Sie das Projekt und installieren Sie Abhängigkeiten:

bun i

Bauen:

bun run build

Beispiel für eine lokale Konfiguration

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["tsx", "/path/to/folder/context7-mcp/src/index.ts"]
    }
  }
}

Testen mit MCP Inspector

npx -y @modelcontextprotocol/inspector npx @upstash/context7-mcp

Fehlerbehebung

ERR_MODULE_NOT_FOUND

Wenn dieser Fehler angezeigt wird, versuchen Sie, bunx anstelle von npx zu verwenden.

{
  "mcpServers": {
    "context7": {
      "command": "bunx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

Dadurch werden häufig Probleme mit der Modulauflösung behoben, insbesondere in Umgebungen, in denen npx Pakete nicht ordnungsgemäß installiert oder auflöst.

Probleme bei der ESM-Lösung

Wenn ein Fehler wie der folgende auftritt: Error: Cannot find module 'uriTemplate.js' versuchen Sie die Ausführung mit dem Flag --experimental-vm-modules :

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": [
        "-y",
        "--node-options=--experimental-vm-modules",
        "@upstash/context7-mcp"
      ]
    }
  }
}

TLS/Zertifikatsprobleme

Verwenden Sie das Flag --experimental-fetch mit npx , um TLS-bezogene Probleme zu umgehen:

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": [
        "-y",
        "--node-options=--experimental-fetch",
        "@upstash/context7-mcp"
      ]
    }
  }
}

MCP-Client-Fehler

  1. Versuchen Sie, dem Paketnamen @latest hinzuzufügen.

  2. Versuchen Sie alternativ, bunx zu verwenden.

  3. Versuchen Sie alternativ, deno zu verwenden.

  4. Stellen Sie sicher, dass Sie Node v18 oder höher verwenden, um native Fetch-Unterstützung mit npx zu erhalten.

Haftungsausschluss

Context7-Projekte werden von der Community erstellt. Obwohl wir uns um hohe Qualität bemühen, können wir die Richtigkeit, Vollständigkeit und Sicherheit der gesamten Bibliotheksdokumentation nicht garantieren. Die in Context7 aufgeführten Projekte werden von ihren jeweiligen Eigentümern und nicht von Context7 entwickelt und gepflegt. Sollten Sie auf verdächtige, unangemessene oder potenziell schädliche Inhalte stoßen, benachrichtigen Sie uns bitte umgehend über die Schaltfläche „Melden“ auf der Projektseite. Wir nehmen alle Meldungen ernst und prüfen gemeldete Inhalte umgehend, um die Integrität und Sicherheit unserer Plattform zu gewährleisten. Mit der Nutzung von Context7 bestätigen Sie, dass Sie dies nach eigenem Ermessen und auf eigene Gefahr tun.

Kontaktieren Sie uns

Bleiben Sie auf dem Laufenden und treten Sie unserer Community bei:

  • 📢 Folgen Sie uns auf X für die neuesten Nachrichten und Updates

  • 🌐 Besuchen Sie unsere Website

  • 💬 Treten Sie unserer Discord-Community bei (falls zutreffend)

Context7 in den Medien

Sternengeschichte

Sternenverlaufsdiagramm

Lizenz

MIT

Available Tools

2 tools
query-docsQuery DocumentationA
Read-only
Inspect

Retrieves and queries up-to-date documentation and code examples from Context7 for any programming library or framework.

You must call 'resolve-library-id' first to obtain the exact Context7-compatible library ID required to use this tool, UNLESS the user explicitly provides a library ID in the format '/org/project' or '/org/project/version' in their query.

IMPORTANT: Do not call this tool more than 3 times per question. If you cannot find what you need after 3 calls, use the best information you have.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe question or task you need help with. Be specific and include relevant details. Good: 'How to set up authentication with JWT in Express.js' or 'React useEffect cleanup function examples'. Bad: 'auth' or 'hooks'. IMPORTANT: Do not include any sensitive or confidential information such as API keys, passwords, credentials, or personal data in your query.
libraryIdYesExact Context7-compatible library ID (e.g., '/mongodb/docs', '/vercel/next.js', '/supabase/supabase', '/vercel/next.js/v14.3.0-canary.87') retrieved from 'resolve-library-id' or directly from user query in the format '/org/project' or '/org/project/version'.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds behavioral context beyond the readOnlyHint annotation: the 3-call limit, prerequisite step, and warning against sensitive data. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short paragraphs each serving a distinct purpose: purpose, prerequisite, limitation. Front-loaded with the core action, no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers prerequisite, usage limit, and parameter guidance. Lacks explicit description of output format, but since the tool retrieves documentation and code examples, the output type is reasonably inferable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema provides 100% coverage with detailed descriptions for both parameters. The tool description reinforces the relationship between libraryId and resolve-library-id but adds little semantic meaning beyond what's already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves and queries documentation and code examples from Context7 for any library, distinguishing it from the sibling 'resolve-library-id' tool which is for obtaining library IDs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs to use 'resolve-library-id' first unless user provides library ID, and imposes a 3-call limit per question, providing clear guidance on when and how many times to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

resolve-library-idResolve Context7 Library IDA
Read-only
Inspect

Resolves a package/product name to a Context7-compatible library ID and returns matching libraries.

You MUST call this function before 'query-docs' to obtain a valid Context7-compatible library ID UNLESS the user explicitly provides a library ID in the format '/org/project' or '/org/project/version' in their query.

Selection Process:

  1. Analyze the query to understand what library/package the user is looking for

  2. Return the most relevant match based on:

  • Name similarity to the query (exact matches prioritized)

  • Description relevance to the query's intent

  • Documentation coverage (prioritize libraries with higher Code Snippet counts)

  • Source reputation (consider libraries with High or Medium reputation more authoritative)

  • Benchmark Score: Quality indicator (100 is the highest score)

Response Format:

  • Return the selected library ID in a clearly marked section

  • Provide a brief explanation for why this library was chosen

  • If multiple good matches exist, acknowledge this but proceed with the most relevant one

  • If no good matches exist, clearly state this and suggest query refinements

For ambiguous queries, request clarification before proceeding with a best-guess match.

IMPORTANT: Do not call this tool more than 3 times per question. If you cannot find what you need after 3 calls, use the best result you have.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe user's original question or task. This is used to rank library results by relevance to what the user is trying to accomplish. IMPORTANT: Do not include any sensitive or confidential information such as API keys, passwords, credentials, or personal data in your query.
libraryNameYesLibrary name to search for and retrieve a Context7-compatible library ID.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=true, which is consistent with the tool's purpose. The description adds important behavioral details beyond annotations, such as a 3-call limit per question, handling of ambiguous queries, and a warning not to include sensitive information in the 'query' parameter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections, but it is somewhat lengthy. It front-loads the essential purpose and usage note, but the selection process details could be more succinct. Still, it remains clear and organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema, the description adequately explains the response format. It covers edge cases like multiple matches, no matches, and ambiguous queries, providing complete guidance for the agent to handle various scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by explaining the role of each parameter: 'libraryName' is the name to search for, and 'query' is the user's original question used for ranking. It also includes a critical warning about sensitive data in 'query', which enhances understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states that the tool resolves a package/product name to a Context7-compatible library ID. It distinguishes itself from the sibling tool 'query-docs' by noting it must be called first, and includes specific details about selection criteria and response format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly specifies when to call this tool: before 'query-docs' unless the user provides a library ID in a specific format. It also provides a detailed selection process and response format, guiding the agent on how to use the tool correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv1.0.8
    • Addedquery-docs
    • Addedresolve-library-id
  2. 2 tool updatesv1.0.6
    • Removedquery-docs
    • Removedresolve-library-id
  3. 3 tool updatesv1.0.1
    • Removedget-library-docs
    • Addedquery-docs
    • Changedresolve-library-id2 fields changed
      • addedInput schema / properties / query
        Added value: +{
        +  "description": "The user's original question or task. This is used to rank library results by relevance to what the user is trying to accomplish. IMPORTANT: Do not include any sensitive or confidential information such as API keys, passwords, credentials, or personal data in your query.",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "libraryName"
        -]New value: +[
        +  "query",
        +  "libraryName"
        +]
  4. 2 tool updatesv1.0.0
    • First observedget-library-docs
    • First observedresolve-library-id

TDQS

A4.6/5.0
Disambiguation5/5

Each tool has a distinct and complementary purpose: one resolves library names to IDs, the other queries documentation using that ID. There is no overlap.

Naming Consistency5/5

Both tools follow the same verb_noun pattern with snake_case: 'resolve-library-id' and 'query-docs'. Consistent and predictable.

Tool Count4/5

With only two tools, the surface is minimal but still covers the core workflow for querying documentation. It is slightly thin but appropriate for a focused server.

Completeness4/5

The two tools form a complete workflow: resolve then query. No obvious gaps for the stated purpose, though additional tools like list_libraries could enhance completeness.

Maintenance

ActivityActive
ResponsivenessResponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • The Cortex MCP server provides read-only access to real-time engineering context from the Cortex developer portal, allowing AI coding assistants to answer natural language questions about your organization's catalog (microservices, libraries, domains, teams, infrastructure), scorecards (engineering standards and best practices), initiatives (goals and deadlines), and Engineering Intelligence metrics. It includes tools for querying documentation, tracking personal entities, and accessing AI-assisted insights across the entire Cortex ecosystem.

  • A Model Context Protocol server for Wix AI tools

  • The AWS Knowledge MCP server is a fully managed remote Model Context Protocol server that provides real-time access to official AWS content in an LLM-compatible format. It offers structured access to AWS documentation, code samples, blog posts, What's New announcements, Well-Architected best practices, and regional availability information for AWS APIs and CloudFormation resources. Key capabilities include searching and reading documentation in markdown format, getting content recommendations, listing AWS regions, and checking regional availability for services and features.

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    An MCP server that fetches real-time documentation for popular libraries like Langchain, Llama-Index, MCP, and OpenAI, allowing LLMs to access updated library information beyond their knowledge cut-off dates.
    1
    3
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    A Model Context Protocol (MCP) server that scrapes, indexes, and searches documentation for third-party software libraries and packages, supporting versioning and hybrid search.
    3,262
    1,711
    MIT
  • A
    license
    C
    quality
    C
    maintenance
    A Model Context Protocol server that enables intelligent searching across documentation for 30+ programming libraries and frameworks, fetching relevant information from official sources.
    23
    8
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/upstash/context7'

If you have feedback or need assistance with the MCP directory API, please join our Discord server