mcpField
G
Github Second Brain

Github Second Brain

ローカル
github.com/BaoNguyen09バージョン管理1570 週間前に更新

Github Second Brain について

Github Second Brain は、GitHub リポジトリの調査を AI アシスタントに支援させたい開発者向けのセルフホスト可能な MCP サーバーです。リポジトリ全体を一度に読み込まず、構成やファイル、Issue、コード差分を必要に応じて参照できます。

主な機能

  1. 01リポジトリのディレクトリツリー表示
  2. 02リポジトリ内ファイルの読み取り
  3. 03GitHub Issue のコンテキスト取得
  4. 04プルリクエストやバージョン間の差分確認
  5. 05リポジトリデータのローカル処理

活用シーン

  1. 01不慣れなリポジトリの構成把握
  2. 02特定ファイルや機能の詳細確認
  3. 03GitHub Issue の議論の経緯把握
  4. 04ブランチ、タグ、コミット間のコード比較

MCP 対応

ローカル MCP サーバーとして動作し、ディレクトリやファイルの参照、Issue のコンテキスト取得、コード差分の確認などのツールを AI クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"github-second-brain": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/baonguyen09/github-second-brain:latest"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<GITHUB_PERSONAL_ACCESS_TOKEN>"
}
}
}
}
起動コマンドdocker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/baonguyen09/github-second-brain:latest
設定が必要な環境変数
GITHUB_PERSONAL_ACCESS_TOKENシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/baonguyen09/github-second-brain:latest

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ロゴ
GitHub Second Brain

AI が GitHub リポジトリを必要に応じて調査できるようにするツール群です。AI がより適切にあなたをサポートできるようになります。
ドキュメントを見る »

バグを報告 · 機能をリクエスト · 質問する

最近の大規模アップデート

このプロジェクトは2025年6月8日に大規模なリファクタリングを実施しました(https://github.com/baonguyen09/github-second-brain/issues/42)。
  • 旧バージョン:legacy/v1-archive ブランチで利用できます
  • 現行バージョン:メインブランチ(v2.0+)
  • 移行ガイド:MIGRATION.mdを参照してください
ブランチ情報
  • main - 現行のリファクタリング済みバージョン
  • legacy/v1-archive - 元のアーキテクチャ(凍結)

プロジェクトの紹介

なぜ?

課題

経験を積むために初めてオープンソースプロジェクトに貢献しようとしたとき、そのリポジトリは初心者には大きすぎて、途方に暮れてしまいました。案内してもらうためにAIアシスタントを使いたいと思いましたが、必要なコンテキストを与える良い方法がありませんでした。

解決策

AI クライアントが自分で GitHub リポジトリを調査し、理解するためのツール群を提供する、セルフホスト可能な MCP サーバーです。

✨ 機能

  • 😎 あらゆる GitHub プロジェクトの最新ドキュメント:AI アシスタントが GitHub プロジェクトのドキュメントやコードにシームレスにアクセスできるようにします。組み込みの検索ツールを使えば、コンテキストウィンドウの制限を超えることなく、AI がディレクトリツリーや特定のファイルの内容を取得できます!

  • 🧠 ハルシネーションをなくす:Github Second Brain を使うことで、AI アシスタントは質問に対して正確で関連性の高い回答を提供できます。

  • ✅ オープンで無料、プライベート:Github Second Brain はオープンソースで、完全に無料で利用できます。個人情報を収集したり、クエリを保存したりしません。完全にセルフホスト可能です!

  • GitHub リポジトリからデータを抽出して分析します。

はじめに

⚙️ 前提条件

開始する前に、以下の要件を満たしていることを確認してください。

  1. コンテナでサーバーを実行するには、Dockerをインストールする必要があります。
  2. Dockerをインストールしたら、Dockerが実行中であることも確認してください。イメージは公開されているため、pull時にエラーが発生する場合は、docker logout ghcr.ioを実行する必要がある可能性があります。
  3. 最後に、GitHub Personal Access Tokenを作成する必要があります。 MCP サーバーは多くの GitHub API を利用できるため、AI ツールに付与しても問題ない権限を有効にしてください(アクセストークンについて詳しくは、ドキュメントを参照してください)。

🚀 インストール

Claude Desktop での使用
  1. Claude Desktopで、Settings > Developer > Edit Configに移動します
  2. 設定を次の内容に置き換えます:
{
  "mcpServers": {
    "github-second-brain": {
      "command": "docker",
      "args": [
          "run",
          "-i",
          "--rm",
          "-e",
          "GITHUB_PERSONAL_ACCESS_TOKEN",
          "ghcr.io/baonguyen09/github-second-brain:latest"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_PERSONAL_GITHUB_ACCESS_TOKEN"
      }
    }
  }
}
Cursor での使用

Cursorの設定ファイル~/.cursor/mcp.jsonを更新します:

{
  "mcpServers": {
    "github-second-brain": {
      "command": "docker",
      "args": [
          "run",
          "-i",
          "--rm",
          "-e",
          "GITHUB_PERSONAL_ACCESS_TOKEN",
          "ghcr.io/baonguyen09/github-second-brain:latest"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "YOUR_PERSONAL_GITHUB_ACCESS_TOKEN"
      }
    }
  }
}

⚙ 動作の仕組み

Github Second Brain は、外部ソースから追加情報を取得するよう AI ツールにリクエストさせる標準規格である Model Context Protocol(MCP)を使用して、AI アシスタントを GitHub リポジトリに接続します。 Github Second Brain を使用すると、次のことが起こります。

  1. docker image を AI アシスタントに提供します。このイメージは、課題のコンテキスト、ファイルの内容、ディレクトリツリーなどを取得するツールを公開するローカル MCP サーバーの構築に使用されます。
  2. ドキュメントやコードに関する質問を AI アシスタントにプロンプトとして送ります。
  3. AI はリクエストを送信します(承認を得たうえで)、ローカルに構築された MCP サーバーにリクエストを送り、そのツールを使用します。
  4. ローカルサーバーが AI のリクエストを実行し、要求されたデータを返します。
  5. AI は情報を受け取り、幻覚のない、より正確で根拠に基づいた回答を生成します。

🗺️ ロードマップ

GitHub Second Brain の改善に継続的に取り組んでいます。予定している機能は次のとおりです。

  • 指定した深さでファイルの内容とディレクトリツリーを取得する mcp ツールを追加する
  • github issues とプルリクエストを取得する mcp ツールを追加する
  • 現在の gitingest 処理を変更し、応答を高速化するために github api を直接使用する
  • プロジェクトのアーキテクチャを変更し、完全にセルフホスト可能にする(データがマシンの外部に出ることはありません)

今後の機能の詳細を確認したり、新機能を提案したりするには、オープン中の issue とプロジェクトボードをご覧ください。

🤝 コントリビュート

コントリビュートがあるからこそ、オープンソースコミュニティは学び、刺激を受け、創造するための素晴らしい場所になります。皆さまからのコントリビュートを心より歓迎します。

技術面以外でのコントリビュート方法
  • プロジェクトにスター⭐を付けてください!:プロジェクトの信頼性と認知度が高まり、より多くのコントリビューターがプロジェクトの改善に参加するため、皆さまにとってもプロジェクトがより良いものになります。
  • Issue を作成する:バグを見つけた場合や新機能のアイデアがある場合は、GitHub でIssue を作成してください。ご要望の追跡と優先順位付けに役立ちます。
  • 情報を広める:GitHub Second Brain を気に入ったら、友人や同僚、ソーシャルメディアで共有してください。コミュニティの成長につながり、プロジェクトをさらに良くすることができます。
  • GitHub Second Brain を使う:実際の使用から得られるフィードバックが最も役立ちます!問題が見つかった場合や改善案がある場合は、GitHub でIssue を作成するか、Bao([email protected] )までご連絡ください。
技術面でのコントリビュート方法

改善につながる提案がある場合は、リポジトリをフォークしてプルリクエストを作成してください。また、「enhancement」タグを付けて Issue を作成するだけでも構いません。

  1. プロジェクトをフォークする
  2. 機能ブランチを作成する(git checkout -b feature/AmazingFeature)
  3. 変更をコミットする(git commit -m 'Add some AmazingFeature')
  4. ブランチにプッシュする(git push origin feature/AmazingFeature)
  5. プルリクエストを作成する

コントリビュート方法、コーディング規約、プルリクエストの手順について詳しくは、コントリビューションガイドラインをお読みください。また、コミュニティで遵守している規範を理解するため、行動規範もご確認ください。

🛠️ ツール

Github Second Brain は、GitHub リポジトリへのアクセス、理解、問い合わせに役立つ複数の便利なツールを AI アシスタントに提供します。

get_processed_repo(非推奨)
  • このツールは、コードベース全体をプロンプトに適した単一のテキストファイルに取り込んで、AI に提供します。gitingest ライブラリでコードベース全体を取り込み、そのまま提供する仕組みです。これにより、AI はプロジェクトの概要を幅広く把握できます。ただし、このツールは AI に大量のデータを渡してコンテキストウィンドウの上限を超過させるおそれがあるため、推奨されておらず、まもなく無効化される予定です。

  • 役立つ場面: 小規模なリポジトリで、リポジトリの概要やコントリビュート方法など、あらゆる種類の質問をする場合。

get_tree_directory
  • このツールは、コードベースの完全なディレクトリツリーをインデント付きのプレーンテキストで AI に提供します(非常に大きくなる可能性がある)ドキュメントをすべて読み込む代わりに、これを使ってリポジトリの概要を把握し、その後、ほかのツールを使って関連する部分だけを取得できます。

  • 役立つ場面: リポジトリの構造に関する質問。

get_repo_contents
  • このツールは、リポジトリ内にある任意のファイルやディレクトリの全内容を返します。

  • 役立つ場面: プロジェクト内の特定の機能、関数、概念に関する質問や、ドキュメントに記載されていない技術的な詳細についての質問。

get_issue_context
  • このツールは、タイトル、本文、メタデータ、該当する Issue 内のすべてのコメントを含む、GitHub Issue の詳細なコンテキストを返します。

  • 役立つ場面: GitHub Issue とその背景に関する質問。

get_code_diff
  • このツールは、GitHub のプルリクエスト、異なるブランチ、タグ、コミットの詳細な差分を返します。

  • 役立つ場面: GitHub のプルリクエストやコードのバージョン(ブランチ/タグ/リリース間)に関する質問。

📝 ライセンス

このプロジェクトは、Apache License 2.0 のもとでライセンスされています。

🙏 謝辞

貢献とインスピレーションを提供してくださった以下の皆様とプロジェクトに感謝します。

  • 参考にした GitMCP
  • 公式 GitHub MCP Server
  • 素晴らしいすべてのコントリビューターの皆様!

免責事項

Github Second Brain は、いかなる種類の保証もなく「現状のまま」提供されます。サービスの信頼性とセキュリティの確保に努めていますが、その利用によって生じる可能性のある損害や問題について、当方は責任を負いません。Github Second Brain を通じてアクセスする GitHub プロジェクトには、それぞれの所有者の利用規約が適用されます。Github Second Brain は GitHub および言及されている AI ツールとは提携していません。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。