MCPサーバ - Context7

提供: MochiuWiki : SUSE, EC, PCB

📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

概要

Context7 MCP Server (@upstash/context7-mcp) は、Upstashが開発したMCPサーバである。
LLMのコンテキストウィンドウに最新のバージョン固有のライブラリドキュメントとコード例を直接注入することで、ハルシネーションを排除し、正確なコード生成を実現する。

LLMは学習データに基づいて回答するため、古いバージョンのAPIを使用したコードを生成したり、存在しない関数やメソッドを生成することがある。
Context7はこの問題を解決するために、プロンプトに use context7 と追記するだけで、対象ライブラリの最新ドキュメントを自動的に取得してコンテキストに統合する。

主な特徴は以下の通りである。

  • 最新バージョン固有のドキュメントをリアルタイムで取得
  • Next.js、React、Vue.js、TypeScript等、数千のライブラリに対応
  • プロンプトへの use context7 追記だけで動作する簡単な操作性
  • Claude Desktop、Claude Code、Cursor、VS Code、Windsurf等の主要MCPクライアントに対応
  • Windows、MacOS、Linuxに対応



動作要件

前提条件

Context7 MCP Serverを使用するために必要な前提条件を以下に示す。

  • Node.js v18以上
    npx コマンドを使用してContext7 MCP Serverを実行するために必要
  • インターネット接続
    ライブラリドキュメントをContext7サーバから取得するために必要



インストール

簡単セットアップ

ctx7 CLIを使用して、MCPクライアントへの設定を自動的に行うことができる。

全クライアントを対象にセットアップする場合は、以下のコマンドを実行する。

npx ctx7 setup


特定のMCPクライアントのみを対象にセットアップする場合は、以下に示すコマンドを実行する。

Claude Desktop向けのセットアップコマンドを以下に示す。

npx ctx7 setup --claude


Cursor向けのセットアップコマンドを以下に示す。

npx ctx7 setup --cursor


VS Code向けのセットアップコマンドを以下に示す。

npx ctx7 setup --code


Smithery経由のインストール

Smitheryを使用してContext7 MCP Serverをインストールする場合は、以下に示すコマンドを実行する。

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



設定

設定ファイルの場所

各MCPクライアントの設定ファイルの場所は以下の通りである。

Claude Desktopの設定ファイルを以下に示す。

  • Linux
    ~/.config/Claude/claude_desktop_config.json
  • MacOS
    ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows
    %APPDATA%\Claude\claude_desktop_config.json


Claude Codeの設定ファイルを以下に示す。

  • ローカルスコープ
    .mcp.json (プロジェクトルート) : claude mcp add コマンドで生成される。
  • ユーザスコープ
    ~/.claude.json (ホームディレクトリ)


Cursorの設定ファイルを以下に示す。

  • グローバル設定
    ~/.cursor/mcp.json
  • プロジェクト設定
    .cursor/mcp.json


VS Codeの設定ファイルを以下に示す。

  • .vscode/mcp.json (プロジェクトルート)


Claude Desktopの設定

claude_desktop_config.json ファイルに以下に示す内容を設定する。

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


設定ファイルを保存した後、Claude Desktopを再起動して設定を反映する。

Claude Codeの設定

Claude Codeでは、claude mcp add コマンドを使用してContext7 MCP Serverを追加できる。

以下のコマンドでMCPサーバをClaude Codeに登録する。

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


Cursorの設定

~/.cursor/mcp.json または .cursor/mcp.json ファイルに以下に示す内容を設定する。

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


VS Codeの設定

.vscode/mcp.json ファイルに以下に示す内容を設定する。

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


APIキーを使用した設定

APIキーを使用する場合は、設定ファイルに以下に示す内容を設定する。

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


APIキーは、Context7ダッシュボードから取得できる。
APIキーは作成時のみ表示されるため、作成後は安全な場所に保管すること。


環境変数とオプション

環境変数一覧

下表に、Context7 MCP Serverの動作をカスタマイズするための環境変数を示す。

環境変数の一覧
環境変数 説明
DEFAULT_MINIMUM_TOKENS ドキュメント取得時のトークン数の最小値を指定する。
デフォルト値は 10000 である。
CONTEXT7_API_KEY Context7 APIの認証用キーを指定する。
Context7ダッシュボードから取得できる。
CLIフラグ --api-key おオプションでも指定可能


環境変数を設定ファイルに記述する場合の例を以下に示す。

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



提供ツール

Context7 MCP Serverは、ライブラリドキュメントを取得するための2つのツールを提供する。

ツール一覧

下表に、Context7 MCP Serverが提供するツールを示す。

ツール一覧
ツール名 説明
resolve-library-id ライブラリの一般名をContext7互換のライブラリIDに変換する。
例: "next.js" --> "/vercel/next.js"
query-docs ライブラリIDを使用してドキュメントを取得する。
パラメータ: libraryIdquery
トークン制限: デフォルト 5000〜10000



使用方法

Context7 MCP Serverを設定後、プロンプトに use context7 と追記するだけで、
AIアシスタントが自動的にContext7ツールを呼び出し、最新のドキュメントをコンテキストに統合する。

基本的な使用例

基本的なプロンプトの書き方を以下に示す。

  • Next.js 14でルーティングとサーバコンポーネントを使用する場合
     # プロンプト例 :
     
     Create a Next.js 14 project with routing and server components. use context7
    

  • zodのスキーマ定義でバリデーションを行う場合
     # プロンプト例 :
     
     zod v4のスキーマ定義で文字列かつ最低5文字以上という制約を持たせたい。use context7
    


ライブラリIDを指定した使用例

ライブラリIDを直接指定することにより、曖昧さなく対象ライブラリのドキュメントを取得できる。

  • Supabaseのライブラリを指定する場合
     # プロンプト例 :
     
     use library /supabase/supabase for API and docs.
    


複数ライブラリを指定した使用例

複数のライブラリを同時に指定することもできる。

  • MongoDBとExpress.jsを組み合わせてREST APIを構築する場合
     # プロンプト例 :
     
     Create a REST API using MongoDB and Express.js with JWT authentication. use context7
    


対応ライブラリ

Context7が対応している主なライブラリを以下に示す。

技術スタック一覧
カテゴリ 技術
フロントエンド Next.js、React、Vue.js、Astro
バックエンド Node.js、Express.js、Django、FastAPI
データベース MongoDB、Supabase、PostgreSQL
バリデーション Zod
言語 TypeScript


その他、数千のライブラリに対応している。
詳細を知りたい場合は、context7.comを参照すること。


トラブルシューティング

一般的な問題

下表に、一般的なエラーと対処法を示す。

トラブルシューティング一覧
問題 対処法
ERR_MODULE_NOT_FOUND エラーが発生する npx の代わりに bunx または deno を使用する。
@latest サフィックスを削除して試す。
Cannot find module エラーが発生する Node.js v18以上がインストールされているか確認する。
APIキーエラー (403) が発生する Context7ダッシュボードで新しいAPIキーを生成する。
APIキーは作成時のみ表示されるため、再生成が必要な場合がある。
ドキュメントの取得に失敗する resolve-library-id ツールでライブラリIDを確認する。
context7.com でライブラリが対応しているか確認する。
接続問題が発生する Node.jsのバージョンを確認する。
npm cache clean --force コマンドでnpmキャッシュをクリアする。