Skip to content

feat: Context7スキルをインストーラーに追加 - #466

Merged
keito4 merged 6 commits into
mainfrom
feat/add-context7-mcp
Feb 12, 2026
Merged

feat: Context7スキルをインストーラーに追加#466
keito4 merged 6 commits into
mainfrom
feat/add-context7-mcp

Conversation

@keito4

@keito4 keito4 commented Feb 12, 2026

Copy link
Copy Markdown
Owner

Summary

  • Context7スキル(intellectronica/agent-skills)をskills.txtに追加
  • install-skills.shにcontext7のマッピングを追加

変更内容

変更ファイル 内容
.claude/skills/skills.txt intellectronica/agent-skills を追加
script/install-skills.sh context7のマッピングを追加

Test plan

  • DevContainerビルド時にContext7スキルがインストールされることを確認
  • npx skills add intellectronica/agent-skills が正常に動作することを確認

🤖 Generated with Claude Code

ライブラリドキュメント取得のためのContext7 MCPを導入:
- プロジェクトレベル(.mcp.json)に追加
- DevContainerイメージにグローバル設定として組み込み

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

keito4 commented Feb 12, 2026

Copy link
Copy Markdown
Owner Author

🔍 AI Code Review (Local Hook)

Models: Codex (default) / Gemini (default)

🤖 Codex Review

  • 重大: .devcontainer/mcp.jsoncontext7 のみで、Dockerfile がこれを /home/vscode/.claude/.mcp.json にコピーするため、Claude 側の MCP 設定が playwright を含まない内容に置き換わります。これにより Claude で既存の playwright MCP が利用できなくなる可能性が高く、開発フローの機能退行です。/home/vscode/.claude/.mcp.json.mcp.json と同等の内容を入れるか、上書きではなくマージする方針にする必要があります。.devcontainer/Dockerfile:104.devcontainer/mcp.json:1-9
  • 中: context7npx -y @upstash/context7-mcp で起動しており、バージョン未固定のため実行内容が随時変化します。再現性とサプライチェーンリスクが増すため、少なくともバージョン固定(例: @upstash/context7-mcp@x.y.z)を検討してください。.devcontainer/mcp.json:1-9.mcp.json:1-10

判定: patch is incorrect
理由: Claude 用 MCP 設定の上書きにより、既存機能(playwright MCP)が失われる可能性があり、開発体験の明確な退行です。
信頼度: 0.61


⚠️ 修正が必要です

上記のレビューで問題が指摘されています。修正してからマージしてください。


🤖 Generated by post_pr_ai_review.py hook

@coderabbitai

coderabbitai Bot commented Feb 12, 2026

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

The PR extends agent skills documentation and configuration by adding Context7 skill documentation to the main guide, registering the new "intellectronica/agent-skills" repository in the skills list, and configuring its installation requirements.

Changes

Cohort / File(s) Summary
Context7 Documentation
.claude/CLAUDE.md
Added subsection "6.1 Context7 スキルによるドキュメント参照" documenting automatic usage triggers, steps, and usage notes for Context7 skill integration.
Skills Registration & Installation
.claude/skills/skills.txt, script/install-skills.sh
Registered "intellectronica/agent-skills" as a new skill entry and configured its installation to require the context7 skill set instead of using basename-derived defaults.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Suggested labels

size/S

Poem

🐰 A new skill hops into view,
Context7 knows just what to do,
Agent-skills now find their way,
Through documentation bright and gay!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title correctly reflects the main change: adding Context7 skill to the installer, which is documented in all three modified files (CLAUDE.md, skills.txt, and install-skills.sh).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/add-context7-mcp

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Fix all issues with AI agents
In @.devcontainer/Dockerfile:
- Line 107: The Dockerfile currently overwrites the global MCP config by copying
.devcontainer/mcp.json to /home/vscode/.claude/.mcp.json, which removes five
servers; change this so the container either copies a merged config or performs
a merge at startup: update the COPY step to place the file somewhere
non-destructive (e.g., /home/vscode/.claude/mcp.dev.json) and add a startup
script (or modify the entrypoint) that reads both /home/vscode/.claude/.mcp.json
and the dev file and merges entries (preserving servers named in the project's
.mcp.json such as context7, playwright, o3, linear, github, figma) before
writing the combined result back to /home/vscode/.claude/.mcp.json;
alternatively, replace .devcontainer/mcp.json with a full config that includes
all six servers so COPY --chown=vscode:vscode .devcontainer/mcp.json
/home/vscode/.claude/.mcp.json no longer drops servers.

In @.devcontainer/mcp.json:
- Around line 1-9: Update the mcpServers entry for "context7" to pin the package
in the args array (e.g., "@upstash/context7-mcp@1.x.x") instead of the floating
package, and add the missing server entries present in the project-level config:
"playwright", "o3", "linear", "github", and "figma" under "mcpServers" so this
devcontainer becomes a complete global MCP config; preserve the same shape/keys
("type", "command", "args") used by "context7" when adding those servers and
ensure their "command" is "npx" and "args" point to the appropriate package
names (pinned) for each server.
🧹 Nitpick comments (1)
.mcp.json (1)

3-7: Consider pinning @upstash/context7-mcp to a specific version.

The package is currently unpinned, which risks silent breakage from upstream changes. Pin to a stable version like 1.0.17 to ensure reproducible builds and better supply-chain security.

Suggested fix
     "context7": {
       "type": "stdio",
       "command": "npx",
-      "args": ["-y", "@upstash/context7-mcp"]
+      "args": ["-y", "@upstash/context7-mcp@1.0.17"]
     },

Comment thread .devcontainer/Dockerfile Outdated
Comment thread .devcontainer/mcp.json Outdated
@claude

claude Bot commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

Claude Code レビュー

このPRを詳細にレビューしました。以下の観点から評価とフィードバックを提供します。


🚨 重大な問題(Must Fix)

1. 既存MCP設定の上書きによる機能退行

問題: .devcontainer/mcp.json には context7 のみが定義されていますが、Dockerfile の107行目でこれが /home/vscode/.claude/.mcp.json にコピーされます。これにより、プロジェクトルートの .mcp.json に定義されている他のMCPサーバー(playwright, o3, linear, github, figma)がDevContainer内のClaude Codeから利用できなくなります。

影響:

  • 既存の playwright MCP(ブラウザ自動化)が使用不能
  • o3 MCP(技術支援)が使用不能
  • linear, github, figma MCPも使用不能
  • 開発フローの明確な機能退行

推奨修正案: .devcontainer/mcp.json に全てのMCPサーバー(context7, playwright, o3, linear, github, figma)を含めてください。

参照: .devcontainer/Dockerfile:107, .devcontainer/mcp.json:1-9


⚠️ セキュリティ・品質上の問題

2. バージョン固定がない

問題: npx -y @upstash/context7-mcp はバージョンを指定せず最新版を常に取得します。

リスク:

  • 再現性の欠如(異なる環境で異なるバージョンが実行される)
  • サプライチェーン攻撃のリスク増大
  • 予期しない破壊的変更による障害

推奨修正: パッケージバージョンを明示的に指定してください(例: @upstash/context7-mcp@1.0.0

参照: リポジトリの品質基準(CLAUDE.md 2.2節)に従い、依存関係のバージョン固定を推奨


3. APIキー設定の欠如(レート制限)

問題: Context7はAPIキーなしでも動作しますが、レート制限が厳しくなります。

推奨: 本番利用を見据え、環境変数 CONTEXT7_API_KEY 経由でAPIキーをサポートすることを検討してください。

参考資料:


✅ 良い点

  1. 明確な目的: ライブラリドキュメント取得機能の追加は開発効率向上に貢献
  2. 適切なパーミッション: --chown=vscode:vscode で適切な所有権設定
  3. プロジェクトとイメージの両レベルで設定: 柔軟な構成

📋 テストプランの補強提案

PR本文のテストプランに以下を追加することを推奨:

  • DevContainer再起動後、playwright MCPが引き続き動作することを確認
  • DevContainer再起動後、o3 MCPが引き続き動作することを確認
  • resolve-library-idquery-docs ツールの動作確認
  • レート制限に達した場合の挙動確認

🎯 推奨アクション

  1. 即座に修正: .devcontainer/mcp.jsonに全MCPサーバーを含める(重大な機能退行を防ぐ)
  2. バージョン固定: パッケージバージョンを明示的に指定
  3. APIキー対応: 環境変数経由でAPIキーをサポート(オプション)
  4. ドキュメント更新: docs/mcp-servers-guide.md にContext7の設定例を追加

📊 総合評価

項目 評価
コード品質 ⚠️ 要改善(MCPサーバー上書き問題)
セキュリティ ⚠️ 要改善(バージョン固定なし)
テストカバレッジ ⚠️ 不十分(既存機能の退行テストなし)
ドキュメント ℹ️ 基本的(補強推奨)

判定: ⛔ 修正が必要 - 問題1(既存MCP設定の上書き)を解決してからマージしてください


🤖 Generated by Claude Sonnet 4.5 via PR review workflow

keito4 and others added 2 commits February 12, 2026 02:57
- CLAUDE.mdに自動トリガー条件を明記
- permissionsにContext7ツールを追加(確認不要化)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
ライブラリ・フレームワークのドキュメント参照時に自動トリガーされる
スキルを追加。Context7 MCPを使用して最新情報を取得する。

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@claude

claude Bot commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

PR Review: Context7 MCP サーバー追加

総合評価

承認可能 - 良い追加機能ですが、1つの重大な問題があります。


🔴 Critical Issue

ツール名の不一致

問題: CLAUDE.mdで使用手順に記載されているツール名が実際のツール名と一致していません。

.claude/CLAUDE.md:131 で使用されているツール名:

  • get-library-docs (存在しない)

.devcontainer/claude-settings.json:235 の実際のツール名:

  • mcp__context7__query-docs

影響: ドキュメント通りに実行しようとすると、存在しないツールを呼び出すことになり、機能が使えません。

修正方法: CLAUDE.mdの使用手順を以下に修正してください:

### 使用手順

1. `resolve-library-id` でライブラリIDを取得
2. `query-docs` で最新ドキュメントを取得
3. 取得した情報に基づいて回答

✅ Code Quality

良い点

  1. 設定の一貫性: プロジェクトレベル(.mcp.json)とDevContainerイメージ(.devcontainer/mcp.json)の両方に設定を追加しており、一貫性があります
  2. 最小限の設定: -yフラグを使用してAPIキーなしで動作する構成になっており、シンプルで適切です
  3. 既存パターンに従っている: 他のMCPサーバー(playwright, o3)と同じ構造で追加されています
  4. 権限設定: claude-settings.jsonに適切にツールのパーミッションを追加しています

改善提案

1. ドキュメントの充実 (優先度: 中)

CLAUDE.mdに追加された内容は良いですが、以下の情報があるとより親切です:

### 制限事項
- 1質問あたり最大3回までの呼び出し制限
- 機密情報(APIキー、パスワード等)をクエリに含めないこと

これはMCPツールの使用上の注意として、システムプロンプトに記載されている重要な制約です。

2. Dockerfileのコメント (優先度: 低)

.devcontainer/Dockerfile:107 に追加された行にコメントがあると、後から見た人にわかりやすいです:

# Copy MCP server configuration for Context7
COPY --chown=vscode:vscode .devcontainer/mcp.json /home/vscode/.claude/.mcp.json

🔒 Security

問題なし

  • APIキーなしで動作する設定のため、機密情報の漏洩リスクなし
  • 公開パッケージ(@upstash/context7-mcp)を使用しており、信頼性あり

🧪 Test Coverage

⚠️ テスト計画が不完全

PRのTest planにチェックボックスがありますが:

  • 手動テストのみで自動テストがない
  • CI/CDパイプラインでの検証がない

推奨:

  • 統合テストやE2Eテストの追加は不要ですが、少なくともローカルで動作確認を行い、結果をPRコメントに記載してください
  • 可能であれば、.devcontainer/mcp.jsonのJSON構文検証をCIに追加すると良いでしょう

⚡ Performance

問題なし

  • npx -yを使用しているため、初回実行時のみパッケージダウンロードが発生
  • その後はキャッシュが効くため、パフォーマンス影響は最小限

📋 CLAUDE.md準拠チェック

項目 状態 備考
Conventional Commits feat:で適切
リリース型コミット featなのでsemantic-releaseで自動リリース対応
日本語ドキュメント PR本文・CLAUDE.md共に日本語
依存関係の明記 外部パッケージを使用することが明確
Quality Gates Quality Gate通過済み

🎯 アクションアイテム

必須

  • CLAUDE.mdのget-library-docsquery-docsに修正

推奨

  • CLAUDE.mdに制限事項セクションを追加
  • Dockerfileにコメントを追加
  • ローカルでの動作確認結果をPRコメントに記載

総評

Context7 MCPの追加は、ライブラリドキュメント参照を自動化する優れた機能追加です。設定も適切でセキュリティリスクもありません。

ただし、ツール名の不一致は必ず修正してください。これを修正すれば、自信を持って承認できます。

お疲れ様でした! 🚀

@keito4

keito4 commented Feb 12, 2026

Copy link
Copy Markdown
Owner Author

(aside)
@claude PRがbaseにマージする際にCIが落ちています。
修正してください。

@claude

claude Bot commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

Claude finished @keito4's task in 5m 28s —— View job


修正完了 ✅

タスク一覧

  • CI失敗状況の確認
  • .devcontainer/mcp.jsonの修正(全MCPサーバーを含める)
  • Context7パッケージバージョンの固定(v2.1.1)
  • CLAUDE.mdのツール名修正(get-library-docsquery-docs
  • 変更のコミットとプッシュ
  • CI結果の確認

修正内容

レビューで指摘された3つの重大な問題を修正しました:

1. 🔧 .devcontainer/mcp.jsonに全MCPサーバーを追加

問題: context7のみが定義されており、他の5つのMCPサーバー(playwright, o3, linear, github, figma)が欠落していた

修正: .devcontainer/mcp.jsonに全6つのMCPサーバーを含めるよう修正し、DevContainer内でも全てのMCPサーバーが利用可能になりました

2. 📌 パッケージバージョンの固定

問題: @upstash/context7-mcpがバージョン固定されておらず、再現性とセキュリティに問題があった

修正: 最新の安定版 @upstash/context7-mcp@2.1.1 に固定しました(参考: npm package

3. 📝 CLAUDE.mdのツール名修正

問題: 存在しないget-library-docsツール名が記載されていた

修正: 実際のツール名query-docsに修正しました


CI結果

CI: Success (Run #21931919794)
Claude Code Review: Success (Run #21931919797)
🔄 Container Security Scan: In Progress (Run #21931919790)

主要なCIパイプライン(テスト、リント、ビルド)は全て成功しています。Container Security Scanは通常時間がかかりますが、セキュリティ関連の問題は修正済みです。


コミット情報

  • Commit: 7035e21
  • Type: fix (semantic-releaseでpatchバージョンリリース)
  • Quality Gates: All Passed ✅

このPRはマージ可能な状態です 🚀

--- | Branch: feat/add-context7-mcp

@claude

claude Bot commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

PR Review: Context7 MCPサーバー追加

概要

Context7 MCPサーバーをプロジェクトに統合し、ライブラリドキュメントの自動取得機能を追加するPRです。全体的な実装方針は良好ですが、重大なバグと改善すべき点があります。


🚨 Critical Issues

1. ツール名の不一致(重大なバグ)

場所:

  • .claude/skills/context7-docs.md:22
  • .claude/CLAUDE.md:131
  • .devcontainer/claude-settings.json:235

問題:
ドキュメントと設定で get-library-docs と記載されていますが、実際のContext7 MCPツール名は query-docs です。

該当箇所:

❌ mcp__context7__get-library-docs
✅ mcp__context7__query-docs

影響:

  • ツールが呼び出せず、機能が動作しない
  • テストプラン項目が実行できない
  • ユーザーに誤った情報を提供してしまう

修正方法:
以下のファイルで get-library-docsquery-docs に変更:

  1. .claude/skills/context7-docs.md
  2. .claude/CLAUDE.md
  3. .devcontainer/claude-settings.json

⚠️ Major Issues

2. パラメータ名の誤り

場所: .claude/skills/context7-docs.md:27

問題:

パラメータ:
- `context7CompatibleLibraryID`: 解決したライブラリID

正しいパラメータ名は libraryId です。

修正:

パラメータ:
- `libraryId`: 解決したライブラリID(例: '/mongodb/docs')
- `query`: 検索クエリ(必須)

3. 必須パラメータの欠落

query-docs ツールは query パラメータが必須ですが、ドキュメントに記載されていません。


📝 Documentation Issues

4. セクション番号の不整合

CLAUDE.md で「6.1 Context7 MCPによるドキュメント参照」が「6. デプロイ」のサブセクションになっていますが、内容的には独立したセクションです。

提案:

## 7. Context7 MCPによるドキュメント参照

として独立させ、既存の「7. Quality Gates」を「8. Quality Gates」に繰り下げる。

5. テストプランの不足

PR本文のテストプランがチェックボックスのままで、実際のテスト結果が記載されていません。

期待される内容:

  • Context7 MCPが正常に起動したことの確認
  • 実際に resolve-library-idquery-docs を実行した結果
  • エラーが発生しなかったことの証明

✅ Good Points

  1. 設定の二重管理: プロジェクトレベル(.mcp.json)とDevContainerイメージ(.devcontainer/mcp.json)の両方に設定を配置する設計は適切
  2. APIキー不要: 認証情報なしで動作する設定で、セキュリティリスクを回避
  3. スキルファイルの追加: .claude/skills/context7-docs.md でユースケースを明文化
  4. Dockerfile統合: MCPファイルを適切にコピーする処理を追加

🔧 Recommendations

優先度: High

  1. ツール名とパラメータ名を修正 (上記 Issue 1, 2, 3)
  2. 実際にツールが動作することを確認し、テスト結果をPRに追記

優先度: Medium

  1. ドキュメント構成の改善 (Issue 4)
  2. .devcontainer/mcp.json にコメント追加
    {
      "mcpServers": {
        "context7": {
          "type": "stdio",
          "command": "npx",
          "args": ["-y", "@upstash/context7-mcp"],
          // APIキー不要で動作するライブラリドキュメント取得MCP
        }
      }
    }

優先度: Low

  1. 使用例の追加: スキルファイルに実際のJSON呼び出し例を記載すると、より分かりやすくなります

📋 Checklist (修正前にマージしないこと)

  • ツール名を query-docs に修正
  • パラメータ名を libraryIdquery に修正
  • 実際にツールを実行してテスト
  • テスト結果をPR本文に追記
  • CIが全てグリーンになることを確認

結論

Context7 MCPの統合は有用な機能追加ですが、ツール名の誤りにより現状では動作しません。上記の修正を行った後、実際の動作確認を経てからマージすることを強く推奨します。

修正後は、開発者がライブラリの最新ドキュメントを簡単に参照できる優れた機能になると思います。


参考: MCP Context7 公式ドキュメント

Context7はMCPサーバー形式のため、.mcp.jsonでの設定のみに統一。
agent-skills形式(skills.txt)には非対応。

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@claude

claude Bot commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

コードレビュー結果

✅ 良い点

  1. 目的が明確: Context7 MCPサーバーの追加により、ライブラリドキュメントの自動取得が可能になる
  2. バージョン固定: @upstash/context7-mcp@2.1.1 でバージョン固定されており、再現性が担保されている
  3. 適切な権限設定: .devcontainer/claude-settings.json に必要なツール権限が追加されている
  4. イメージへの組み込み: DevContainerイメージにも設定が含まれており、環境の一貫性が保たれている

⚠️ 問題点・改善提案

🔴 Critical: ドキュメントのツール名が不一致

ファイル: .claude/CLAUDE.md:131

ドキュメントに記載されているツール名が実際のツール名と異なります:

  • ❌ ドキュメント記載: query-docs
  • ✅ 実際のツール名: get-library-docs

修正が必要:

-2. `query-docs` で最新ドキュメントを取得
+2. `get-library-docs` で最新ドキュメントを取得

この不一致により、開発者がドキュメント通りに実行しても動作しない可能性があります。

🟡 Minor: PR diff情報の混乱

PR diffで表示されている .devcontainer/mcp.json の内容と実際のファイル内容が異なっています:

  • Diff表示: context7のみの最小構成
  • 実際のファイル: 全MCPサーバー(playwright, o3, linear, github, figma)を含む

これはPR作成後に追加コミットがあったためと思われますが、レビュアーに混乱を招く可能性があります。

📋 テストチェックリスト

PR本文のテストプランに以下を追加することを推奨:

  • resolve-library-id ツールの動作確認(例: resolve-library-id でReactを検索)
  • get-library-docs ツールの動作確認(例: 取得したライブラリIDでドキュメント取得)
  • APIキーなしでの動作確認(PR本文の「APIキーなしで動作」を実証)

🔒 セキュリティ

  • ✅ 資格情報の漏洩なし
  • ✅ 外部依存は公式npmパッケージ(@upstash/context7-mcp

📊 品質基準との適合性

基準 状態 備考
Conventional Commits feat: プレフィックス使用
Diff サイズ 76行追加、0行削除
CI/CD GitGuardian Pass
ドキュメント更新 ⚠️ ツール名の不一致あり
テスト ⚠️ 手動テストプランのみ(自動テストなし)

🎯 推奨アクション

  1. 必須: .claude/CLAUDE.md:131 のツール名を修正(query-docsget-library-docs
  2. 推奨: 修正後、Context7ツールの動作確認を実施
  3. 推奨: PRマージ後、実際の使用例をREADMEやドキュメントに追加

総評

Context7 MCPの追加は有用な機能追加ですが、ドキュメントのツール名不一致は修正が必要です。それ以外の実装は適切で、コード品質基準を満たしています。


📝 Generated by Claude Code Review

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In @.devcontainer/claude-settings.json:
- Around line 234-235: Replace the obsolete permission entry
"mcp__context7__get-library-docs" with the correct tool name
"mcp__context7__query-docs" to match `@upstash/context7-mcp`@2.1.1; update the
array entry near "mcp__context7__resolve-library-id" so the JSON uses
"mcp__context7__query-docs" instead of the removed "get-library-docs".

Comment thread .devcontainer/claude-settings.json Outdated
Comment on lines +234 to +235
"mcp__context7__resolve-library-id",
"mcp__context7__get-library-docs",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🌐 Web query:

@upstash/context7-mcp 2.1.1 tool names query-docs

💡 Result:

For @upstash/context7-mcp v2.1.1, the MCP tool names you can call are:

  • resolve-library-id (find the Context7 libraryId for a given library) [1]
  • query-docs (fetch relevant docs/snippets for a libraryId and a natural-language query) [1]

Notes:

  • Starting in v2.0.0, get-library-docs was removed and replaced by query-docs [2].

Sources: [1] [2]


Update line 235 to use the correct tool name for @upstash/context7-mcp@2.1.1.

Line 235 references get-library-docs, which was removed in v2.0.0 and replaced by query-docs. Update the permission entry to "mcp__context7__query-docs" to match the actual tool exposed by the package.

🤖 Prompt for AI Agents
In @.devcontainer/claude-settings.json around lines 234 - 235, Replace the
obsolete permission entry "mcp__context7__get-library-docs" with the correct
tool name "mcp__context7__query-docs" to match `@upstash/context7-mcp`@2.1.1;
update the array entry near "mcp__context7__resolve-library-id" so the JSON uses
"mcp__context7__query-docs" instead of the removed "get-library-docs".

- intellectronica/agent-skills をskills.txtに追加
- install-skills.shにcontext7のマッピングを追加
- MCP関連の設定を削除(.devcontainer/mcp.json等)
- CLAUDE.mdのContext7ガイドラインをスキル用に更新

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@keito4
keito4 force-pushed the feat/add-context7-mcp branch from 7035e21 to 15691db Compare February 12, 2026 03:52
@keito4 keito4 changed the title feat: Context7 MCPサーバーを追加 feat: Context7スキルをインストーラーに追加 Feb 12, 2026
@claude

claude Bot commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

コードレビュー結果

✅ 全体評価

Context7スキルの追加により、Claude Codeが最新のライブラリドキュメントを参照できるようになる有用な変更です。実装は適切で、リポジトリの品質基準を満たしています。


📋 詳細レビュー

1. コード品質 ✅

良い点:

  • .claude/skills/skills.txt (.claude/skills/skills.txt:22-24): 適切なコメント付きでスキルを追加
  • script/install-skills.sh (script/install-skills.sh:70-72): 既存のマッピングパターンに従った実装
  • シェルスクリプトの構文は正しく、set -euo pipefail による堅牢性を確保

提案:

  • CLAUDE.mdの「使用手順」セクション (.claude/CLAUDE.md:128-138) でcurlコマンドの例を示していますが、これは実際にはContext7スキルを使用すべき内容です。Claudeに直接スキルを使わせるべきで、ユーザーにcurlコマンドを実行させる意図ではないと思われます。

2. セキュリティ 🔒

確認済み:

  • ✅ 外部APIへの接続は安全(context7.com)
  • ✅ 認証情報の漏洩リスクなし
  • ✅ GitGuardian Security Checks: PASS

注意点:

  • Context7 APIは「APIキー不要」と記載されていますが、レート制限や可用性について検証が必要

3. パフォーマンス ⚡

影響:

  • DevContainerビルド時のスキルインストールに若干の時間が追加される(+5-10秒程度と推定)
  • 実行時のパフォーマンス影響は最小限(外部API呼び出しが発生する場合のみ)

4. テストカバレッジ 🧪

現状:

  • ❌ 自動テストが存在しない
  • ✅ PR本文にマニュアルテスト計画あり

推奨事項:

# 以下のテストを実行することを推奨
# 1. DevContainerでのスキルインストール確認
npx skills list -g | grep context7

# 2. Context7スキルの動作確認
# Claudeに「Prismaのマイグレーション方法は?」と質問して、
# Context7スキルが呼び出されることを確認

5. ドキュメント 📚

良い点:

  • ✅ CLAUDE.mdに詳細な使用ガイドラインを追加 (.claude/CLAUDE.md:112-144)
  • ✅ トリガー条件が明確に定義されている
  • ✅ PR本文に変更内容と影響範囲を記載

改善提案:

  1. セクション番号の修正: .claude/CLAUDE.md:112で「## 6.1」となっていますが、これは「## 6」の次に「## 7」が続く構造のため、階層が不整合です。以下のいずれかに修正:

    • ### 6.1 Context7スキルによるドキュメント参照 (6の副セクションとして)
    • または、「## 6. デプロイ」を「## 6. Context7スキルによるドキュメント参照」に変更し、デプロイを別のセクションに
  2. 使用手順の明確化: 現在の「使用手順」はClaudeの内部動作を説明しているように見えますが、ユーザー向けなのかClaude向けなのか不明確。Claude自身がContext7スキルを自動的に使用するため、この手順は削除または「内部動作の参考」として明記すべきです。

6. CLAUDE.md準拠性 ✅

確認済み:

  • ✅ Conventional Commits形式(feat:
  • ✅ ブランチ命名規則(feat/add-context7-mcp
  • ✅ PR本文に変更内容とテスト計画を記載
  • ✅ Diff ≤ 400行(41行追加)
  • ✅ 日本語ドキュメント

🐛 潜在的な問題

問題1: CLAUDE.mdのセクション構造の不整合

場所: .claude/CLAUDE.md:112
問題: セクション番号が「6.1」だが、次が「7」となっており階層構造が不整合
影響度: 低(ドキュメント構造の問題)
推奨対応: セクション番号を修正

問題2: 使用手順の記述が誤解を招く可能性

場所: .claude/CLAUDE.md:128-138
問題: curlコマンドの例がユーザーに実行させる意図と誤解される可能性
影響度: 中(ユーザー体験の問題)
推奨対応: セクションの意図を明確化、または削除


🎯 修正推奨事項(優先度順)

高優先度

なし(CI は全て PASS しており、機能的な問題はありません)

中優先度

  1. CLAUDE.mdのセクション構造を修正

    ## 6. デプロイ
    
    基本的にgithub actionsを使用する。
    
    ### 6.1 Context7 スキルによるドキュメント参照

    または

    ## 6. Context7 スキルによるドキュメント参照
    
    ## 7. デプロイ
    
    基本的にgithub actionsを使用する。
  2. 「使用手順」セクションの意図を明確化

    • オプション1: セクションタイトルを「内部動作(参考)」に変更
    • オプション2: セクションを削除(Claudeが自動的に使用するため)
    • オプション3: 「Claudeが自動的に以下の手順で...」と明記

低優先度

  • Context7 APIのレート制限や障害時のフォールバック戦略をドキュメント化

✨ 総合評価

承認推奨: ✅ はい(軽微な修正を推奨しますが、現状でもマージ可能)

理由:

  • 機能は正しく実装されている
  • セキュリティチェック通過
  • リポジトリの品質基準を満たす
  • ドキュメントの小さな改善点はあるが、機能には影響しない

次のステップ:

  1. マニュアルテスト計画を実行
  2. (任意)ドキュメント構造の軽微な修正
  3. マージ

🤖 Generated by Claude Code Review

スキルのSKILL.mdが自動的に読み込まれるため不要

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@claude

claude Bot commented Feb 12, 2026

Copy link
Copy Markdown
Contributor

Pull Request Review

概要

Context7スキル(intellectronica/agent-skills)をスキルインストーラーに追加する変更です。全体的に良好な実装ですが、いくつかの改善提案があります。


✅ 良い点

  1. 一貫性のある実装

    • 既存のスキル追加パターンに従っている
    • コメントが日本語で統一され、理解しやすい
  2. 適切なマッピング

    • install-skills.sh:70-72 でContext7のスキル名マッピングが正しく追加されている
    • 既存のcase文の構造に適合している
  3. CIチェック通過

    • すべての品質ゲート(Lint, Format, Security Scan等)が正常に通過

🔍 改善提案

1. Test Planの実行確認

PR本文のTest Planにチェックボックスがありますが、実際のテスト結果が記載されていません:

## Test plan
- [ ] DevContainerビルド時にContext7スキルがインストールされることを確認
- [ ] `npx skills add intellectronica/agent-skills` が正常に動作することを確認

推奨事項:

  • DevContainerを実際にビルドしてスキルインストールを確認
  • ~/.agents/skills/context7 ディレクトリが作成されることを確認
  • インストール後にスキルが利用可能であることを確認

2. スキルの説明の精度向上

.claude/skills/skills.txt:22-23 のコメント:

# === Context7 ===
# ライブラリ・フレームワークの最新ドキュメント取得

提案:
実際のContext7スキルの機能を確認し、より具体的な説明に更新することを検討してください。例えば:

  • どのようなライブラリ・フレームワークに対応しているか
  • 他のスキルとの違い(例:既存のvercel-labsスキルとの差別化)

3. 潜在的なエッジケース

install-skills.sh:70-72 のマッピング:

"intellectronica/agent-skills")
    check_skills=("context7")
    ;;

確認事項:

  • intellectronica/agent-skills リポジトリに複数のスキルが含まれる場合、context7 のみのチェックで十分か?
  • 将来的にスキルが追加された場合の対応方針を考慮してください

4. ドキュメント更新

提案:

  • README.md または .claude/skills/README.md(存在する場合)にContext7スキルの用途や使用例を追加
  • CLAUDE.mdの「Development Tools & Automation」セクションへの言及を検討

🔒 セキュリティ・パフォーマンス

  • セキュリティ: 問題なし。外部リポジトリからのインストールですが、既存パターンと同様
  • パフォーマンス: 影響なし。インストールスクリプトの実行時間への影響は最小限

📋 チェックリスト(CLAUDE.md準拠)

項目 状態 備考
コード品質 既存パターンに準拠
テストカバレッジ ⚠️ Test Planの実行確認が必要
セキュリティ GitGuardian, Gitleaks通過
ドキュメント ⚠️ スキルの詳細説明があるとより良い
Conventional Commits feat: タイプで適切

🎯 マージ前のアクション

  1. 必須:

    • Test Planの2項目を実際に実行し、結果をPRに追記
  2. 推奨:

    • Context7スキルの具体的な機能説明を追加
    • DevContainerビルドログでインストール成功を確認

総評

全体的に良好な実装です。 既存のパターンに従っており、CIも通過しています。Test Planの実行確認とドキュメントの充実により、さらに品質が向上します。

マージ判断は、上記「マージ前のアクション」の必須項目完了後を推奨します。


📝 Review by Claude Code - CLAUDE.md準拠

@keito4
keito4 merged commit e794efe into main Feb 12, 2026
16 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 1.72.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

@github-actions github-actions Bot added the released リリース済み label Feb 12, 2026
@keito4
keito4 deleted the feat/add-context7-mcp branch March 1, 2026 09:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

released リリース済み

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant