Mcp Repo2llm Server について
Mcp Repo2llm Serverは、GitHub、GitLab、ローカルのコードリポジトリをLLM向けの構造化テキストに変換します。複数言語のコード分析や生成をAIで行う際に、ファイル間の文脈を保ちます。
主な機能
- 01リポジトリ内容のスキャン
- 02コード構造と文脈の保持
- 03複数のプログラミング言語に対応
- 04LLM処理向けメタデータの追加
- 05GitHub、GitLab、ローカルリポジトリの処理
活用シーン
- 01LLMによるコード分析用のリポジトリ準備
- 02AI生成にコードベースの文脈を提供
MCP 対応
このMCPサーバーは、GitHub、GitLab、ローカルパスからリポジトリ内容をテキストとして取得するツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP-Repo2LLM
概要
mcp-repo2llmは、コードリポジトリをLLMに適した形式に変換するMCP サーバーです。 コードリポジトリをLLMに適した形式に変換し、従来のコードベースと最新のAI言語モデルの間にあるギャップを埋める強力なツールです。 このリポジトリは、リポジトリをLLMが読み取れる形式に変換するコア機能を提供するRepoToTextForLLMsを基にしています。
動機
AIや大規模言語モデル(LLM)がソフトウェア開発においてますます重要になるにつれ、コードベースをこれらのモデルに効果的に伝える必要性が高まっています。従来のコードリポジトリはLLMによる処理に最適化されていないため、AIツールをコードの分析や生成に使う際に、最適な結果が得られないことがあります。
解決する課題
このプロジェクトは、次のような重要な課題に対応します。
- LLMで大規模なコードベースを処理することが難しい
- コードをAIモデルに入力する際に、コンテキストや構造が失われる
- リポジトリのメタデータやドキュメントを効率的に扱えない
- プログラミング言語によってフォーマットに一貫性がない
主な機能
- スマートなリポジトリスキャン:構造の整合性を保ちながら、コードベース全体をインテリジェントに処理します
- コンテキストの保持:コードファイル間の重要なコンテキスト情報や関連性を維持します
- 複数言語のサポート:言語ごとに最適化し、さまざまなプログラミング言語に対応します
- メタデータの強化:LLMによる理解を深めるため、関連するメタデータでコードを拡充します
- 効率的な処理:リソースの使用を最小限に抑えながら、大規模なリポジトリを処理できるよう最適化されています
インストール
uvを使ってmcp-repo2llmをインストールします。
"mcp-repo2llm-server": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with-editable",
"/mcp-repo2llm",
"mcp",
"run",
"/mcp-repo2llm/mcp-repo2llm-server.py"
],
"env":{
"GITHUB_TOKEN":"your-github-token",
"GITLAB_TOKEN":"your-gitlab-token"
}
}
GITHUB_TOKEN:GitHubトークン GITLAB_TOKEN:GitLabトークン
ツール
get_gitlab_repo
- GitLabリポジトリのブランチからコードを処理し、テキストとして返します
- 入力:
- repo_url (string):GitLabのリポジトリURL
- branch (string):ブランチ名。デフォルトはmasterです
- 戻り値(string):リポジトリ内のプロジェクトに関するすべての情報と構造をテキストとして返します
get_github_repo
- GitHubリポジトリのブランチからコードを処理し、テキストとして返します
- 入力:
- repo_url (string):GitHubのリポジトリURL
- branch (string):ブランチ名。デフォルトはmasterです
- 戻り値(string):リポジトリ内のプロジェクトに関するすべての情報と構造をテキストとして返します
get_local_repo
- GitLabリポジトリのブランチからコードを処理し、テキストとして返します
- 入力:
- repo_url (string):リポジトリのパス
- 戻り値(string):リポジトリ内のプロジェクトに関するすべての情報と構造をテキストとして返します
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。