/ ディレクトリ / プレイグラウンド / Context7
● 公式 upstash ⚡ 即起動

Context7

作者 upstash · upstash/context7

Context 7は、3万以上のライブラリの新しいバージョン固有のドキュメントをコーディングエージェントに注入し、存在しない幻覚APIを停止します。

Context 7はUpstashのdocs - for - LLMsプラットフォームです。MCPサーバーは、ライブラリ名を安定したIDに解決し、エージェントが必要とする正確なドキュメントスニペットを取得します。これは、ロックファイルのバージョンにピン留めされています。無料ランクはすぐに使えます。無料のAPIキーはレート制限を引き上げます。単一のnpxコマンドからインストールされ、2つ以上のライブラリにまたがるあらゆるコーディングワークフローで最高のROI MCPの1つです。

なぜ使うのか

主な機能

ライブデモ

実際の動作

context7.replay ▶ 準備完了
0/0

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": [
        "-y",
        "@upstash/context7-mcp@latest"
      ]
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": [
        "-y",
        "@upstash/context7-mcp@latest"
      ]
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": [
        "-y",
        "@upstash/context7-mcp@latest"
      ]
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": [
        "-y",
        "@upstash/context7-mcp@latest"
      ]
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "context7",
      "command": "npx",
      "args": [
        "-y",
        "@upstash/context7-mcp@latest"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "context7": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@upstash/context7-mcp@latest"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

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

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: Context7

エージェントが存在しない機能の幻覚を防ぐ

👤 モデルのカットオフよりも新しいライブラリを持つAIコーディングアシスタントを使用している人 ⏱ ~5 min beginner

使うタイミング: Next.js 15、Prisma 5、Drizzle、LangChain 0.3、または動きの速いライブラリを使用している場合、エージェントは存在しない関数を発明し続けます。

前提条件
  • ノード18 + — node - v
  • Context 7 MCPがインストールされました — 上記の設定ブロックをClaudeデスクトップ/カーソル/ウィンドサーフ設定に貼り付けます
フロー
  1. ライブラリに明示的に名前を付ける
    Context 7を使用して、PRISMAの最新のドキュメントを取得し、ネストされたリレーション書き込みを使用してトランザクションを実行する正しい方法を示します。✓ コピーしました
    → エージェントは、ウィキペディアスタイルの要約ではなく、関連するクエリでresolve - library - idを呼び出し、query - docsを呼び出します
  2. 必要に応じてバージョンにピン留めする
    私は次の@ 15.0.3にいます。Context 7を使用して、そのバージョンのApp Routerストリーミングドキュメントを取得します。✓ コピーしました
    → 引用にはバージョンが含まれます。コードはgetServerSidePropsではなくファイルベースの表記法を使用します
  3. ご自身のコードを確認してください
    Src/lib/db.tsのインポートを読み取り、Context 7を使用して、インポートしたすべての関数が実際にdrizzle-orm 0.30.xに存在することを確認します。✓ コピーしました
    → ドキュメントリンク付きの✓インポート/✗レポートごと

結果: エージェントの出力は、妥当な見た目の発明されたAPIではなく、実際の現在のAPIを使用します。

注意点
  • エージェントは2番目のターンでContext 7に電話をかけるのを忘れた — システムプロンプトまたはCLAUDE.mdに「ライブラリの質問には常にContext 7を使用する」を入力します
  • ライブラリ名があいまいです(例:「supabase」) — Resolve - library - idが一致するようにします。特定のパッケージを選択します( supabase - jsと@ supabase/ssr )
組み合わせ: filesystem · github

現在の慣用パターンを使用して新しい機能をスキャフォールディングする

👤 慣れていない、または新しいバージョンのフレームワークで機能を開始するエンジニア ⏱ ~15 min intermediate

使うタイミング: Next.js 15アプリに認証を追加し、古いブログ投稿をスキップする必要があります。

前提条件
  • ターゲットフレームワークが特定され — package.jsonまたはpyproject.tomlはすでにそれをリストしています
フロー
  1. 現在のイディオムを尋ねる
    Context 7を使用して、NextAuth v 5ドキュメントを取得し、資格情報プロバイダーの設定をスキャフォールドします。v 4ではなく、現在のベータ版が必要です。✓ コピーしました
    → コードは、v 4 getServerSessionではなく、v 5からのauth ()関数とEdge互換構成を使用します
  2. 移行メモを確認する
    NextAuthドキュメントの「v 4からのアップグレード」セクションを開き、現在のコードで変更する必要があるものをリストアップします。✓ コピーしました
    → 壊れた変更の相違スタイルのリスト

結果: 最初のコミットで動作するv 5コード—ハーフマイグレーションされたハイブリッドではありません。

注意点
  • ドキュメントはエッジケースをカバーしません — Context 7はドキュメントのみです。未リリースの動作の場合は、GitHub MCPを介してソースにフォールバックします
組み合わせ: github · filesystem

バイブではなく、実際のドキュメントの引用でPRを確認する

👤 エビデンスでコメントをバックアップしたいレビュアー ⏱ ~20 min intermediate

使うタイミング: ライブラリAPIを使用しているPRをレビューすることは、100 %正しいとは限りません。

フロー
  1. 差分を読む
    PR # 482から差分を引き出します。ライブラリ呼び出しごとに、Context 7を使用して署名を検証し、見当たらないものにフラグを立てます。✓ コピーしました
    → ドキュメントリンクとバージョンを使用した通話ごとの評決
  2. 引用可能なコメントを書く
    フラグが立てられた通話ごとに、Context 7を介して公式文書をリンクするレビューコメントを下書きします。✓ コピーしました
    → 「v 15ドキュメントごとに<link>、XはYである必要があります」のようなコメント

結果: 意見ではなく、引用でコメントを確認します。

組み合わせ: github

ライブラリの新しいメジャーバージョンにコードベースを移行する

👤 大規模なアップグレードを行うエンジニア( React 18→ 19、Tailwind 3→ 4など) ⏱ ~90 min advanced

使うタイミング: あなたはメジャーバージョンにぶつかっており、アップグレードガイドは40ページの「依存する」です。

前提条件
  • ターゲットバージョンが選択されました — 正確なバージョンを選択してください。メジャーで「最新」を実行しないでください
フロー
  1. 移行ガイドを引く
    Context 7を使用して、Tailwind v 3→ v 4移行ドキュメントを取得します。チェックリストとしてまとめます。✓ コピーしました
    → 壊れた変更のチェックリストを注文しました
  2. 各イシューのリポジトリをスキャンする
    そのチェックリストのすべての項目について、ファイルシステムMCPを使用して、src/内の一致するパターンを検索します。ファイルごとのレポートをください。✓ コピーしました
    → パターンの→影響を受けるファイルリスト
  3. 小さなコミットのパッチ
    各移行アイテムを、ドキュメントセクションを参照するメッセージを含む個別のコミットにします。✓ コピーしました
    → アイテムごとに元に戻すことができるコミットログのクリーンアップ

結果: 実際に確認できる移行PR。各変更はドキュメントセクションに関連付けられます。

注意点
  • 1回のコミットであまりにも多くのアイテムを引き受ける — 1つの壊れやすい変更1→つのコミット。何かが壊れた場合に2分の1を簡単にします
組み合わせ: filesystem · git · github

組み合わせ

他のMCPと組み合わせて10倍の力を

context7 + filesystem

Package.jsonを読んで正確なバージョンを選択し、一致するドキュメントについてContext 7にクエリを実行します

Package.jsonを読み、次のバージョンを見つけ、サーバーアクションのContext 7から一致するドキュメントを取得します。✓ コピーしました
context7 + github

ライブラリAPIに触れるPRの場合は、ドキュメントの引用でレビューに注釈を付ける

PR # 482のAPI呼び出しごとに、Context 7ドキュメントを引用してレビューコメントを追加します。✓ コピーしました

コードに触れる前に段階的に移行を計画する

シーケンシャルシンキングを使用してPrisma→ v 4 v 5の移行を計画し、各ステップでContext 7からドキュメントのエビデンスを取得します。✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
resolve-library-id libraryName: str 最初の呼び出し—あなたが気にするライブラリ名を曖昧にする 1 free request
query-docs libraryId: str, query: str, version?: str Resolve - library - idの後-実際の質問をする 1 free request (higher rate limit with API key)

コストと制限

運用コスト

APIクォータ
無料ランクは寛大です。無料のAPIキー( context7.com/dashboard )はレート制限を引き上げます
呼び出しあたりのトークン
ドキュメントの長さに応じて、クエリごとに最大200 -2000
金額
無料
ヒント
スコープクエリ—「Xの使い方」は「Xについてのすべてを教えてください」よりも安価です。サーバーはすでにフォーカスされたスニペットを返します

セキュリティ

権限、シークレット、影響範囲

認証情報の保管: より高いレート制限のためのオプションのCONTEXT 7_API_KEY環境変数
データ送信先: クエリはapi.context7.comに移動します。コード出力はありません—ライブラリ名とクエリのみが送信されます

トラブルシューティング

よくあるエラーと対処法

Resolve - library - idでライブラリが見つかりません

代替名を試してみてください(例:' nextjs 'vs' next.js 'vs '@ vercel/next '); Context 7は一般的なエイリアスでインデックスされますが、すべてのフォークでインデックスされるわけではありません

確認: Check context7.com/browse for the official slug
ドキュメントが古くなっているように見える

明示的なバージョンの引数を含めます。それなしでは、ライブラリの最新のインデックス付きドキュメントが取得され、リリースが時間遅れる可能性があります

確認: Compare the returned snippet URL to the official docs site
匿名での使用でレート制限に達しました

Context7.com/dashboardで無料のAPIキーを取得し、MCP構成のenvブロックにCONTEXT 7_API_KEYを設定します

確認: Re-run the same query and check it succeeds

代替案

Context7 他との比較

代替案代わりに使う場面トレードオフ
GitHub MCP (docs folder)ソースレベルの真実または未公開の行動が必要ですファイルごとのレイテンシが高いため、リポジトリを手動でナビゲートする必要があります
Ref Tools独自のインデックスを持つ別のドキュメントプロバイダが必要です異なる図書館のカバレッジ
Direct web fetchドキュメントはインデックスに含まれていません。URLがありますバージョン解像度がありません。URLの作業を行います

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る