Integrations
Enables interaction with GitLab's API to analyze and manage merge requests, including fetching diffs, comparing versions, adding comments, and approving/unapproving merge requests.
コードレビューのためのGitLab MCP
このプロジェクトは、cayirtepeomer/gerrit-code-review-mcpからフォークされ、GitLab 統合用に適応されています。
ClaudeのようなAIアシスタントをGitLabのマージリクエストに統合するためのMCP(Model Context Protocol)サーバー。これにより、AIアシスタントはGitLab APIを介して直接コード変更をレビューできるようになります。
特徴
- 完全なマージリクエスト分析: 差分、コミット、コメントを含むマージリクエストの完全な詳細を取得します
- ファイル固有の差分: マージリクエスト内の特定のファイルの変更を分析する
- バージョン比較: 異なるブランチ、タグ、コミットを比較します
- レビュー管理: コメントの追加、マージリクエストの承認または承認解除
- プロジェクト概要: プロジェクト内のすべてのマージリクエストのリストを取得する
インストール
前提条件
- Python 3.10以上
- API スコープ (read_api、api) を持つ GitLab 個人アクセス トークン
- 完全なMCP統合のためのカーソルIDE
クイックスタート
- このリポジトリをクローンします:
- 仮想環境を作成してアクティブ化します。
- 依存関係をインストールします:
- GitLab 設定で
.env
ファイルを作成します (すべてのオプションについては.env.example
参照してください)。
設定オプション
.env
ファイルでは次の環境変数を設定できます。
変数 | 必須 | デフォルト | 説明 |
---|---|---|---|
GITLAB_トークン | はい | - | GitLab個人アクセストークン |
GITLAB_ホスト | いいえ | gitlab.com | GitLabインスタンスのホスト名 |
GITLAB_API_バージョン | いいえ | v4 | 使用するGitLab APIバージョン |
ログレベル | いいえ | 情報 | ログレベル(DEBUG、INFO、WARNING、ERROR、CRITICAL) |
デバッグ | いいえ | 間違い | デバッグモードを有効にする |
リクエストタイムアウト | いいえ | 30 | APIリクエストのタイムアウト(秒) |
最大再試行回数 | いいえ | 3 | 失敗したリクエストの最大再試行回数 |
カーソルIDE統合
この MCP を Cursor IDE で使用するには、次の構成を~/.cursor/mcp.json
ファイルに追加します。
/path/to/your/gitlab-mcp-code-review
クローンしたリポジトリへの実際のパスに置き換えます。
利用可能なツール
MCP サーバーは、GitLab と対話するための次のツールを提供します。
道具 | 説明 |
---|---|
fetch_merge_request | マージリクエストに関する完全な情報を取得する |
fetch_merge_request_diff | 特定のマージリクエストの差分を取得する |
fetch_commit_diff | 特定のコミットの差分情報を取得する |
compare_versions | 異なるブランチ、タグ、コミットを比較する |
add_merge_request_comment | マージリクエストにコメントを追加する |
approve_merge_request | マージリクエストを承認する |
unapprove_merge_request | マージリクエストを承認しない |
get_project_merge_requests | プロジェクトのマージリクエストのリストを取得する |
使用例
マージリクエストを取得する
特定のファイルの変更を表示する
ブランチを比較する
マージリクエストにコメントを追加する
マージリクエストを承認する
トラブルシューティング
問題が発生した場合:
- GitLabトークンに適切な権限(api、read_api)があることを確認します
.env
ファイルの設定を確認してください- MCP構成パスが正しいことを確認してください
- 次のコマンドで接続をテストします:
curl -H "Private-Token: your-token" https://gitlab.com/api/v4/projects
- より詳細なログ記録を行うには、.env ファイルで LOG_LEVEL=DEBUG を設定します。
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
- リポジトリをフォークする
- 機能ブランチを作成します(
git checkout -b feature/amazing-feature
) - 変更をコミットします (
git commit -m 'Add some amazing feature'
) - ブランチにプッシュする (
git push origin feature/amazing-feature
) - プルリクエストを開く
開発プロセスの詳細については、 CONTRIBUTING.mdファイルを参照してください。
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。
This server cannot be installed
Claude などの AI アシスタントを GitLab のマージ リクエストと統合する MCP サーバー。これにより、コードの変更をレビューしたり、コメントを追加したり、マージ リクエストを GitLab API 経由で直接承認/非承認したりできるようになります。
Related MCP Servers
- AsecurityAlicenseAqualityMCP Server for the GitLab API, enabling project management, file operations, and more.Last updated -91,63044,247JavaScriptMIT License
- -securityFlicense-qualityA custom server implementation that allows AI assistants to interact with GitLab repositories, providing capabilities for searching, fetching files, creating/updating content, and managing issues and merge requests.Last updated -JavaScript
- -securityFlicense-qualityAn MCP server that enables communication with GitLab repositories, allowing interaction with GitLab's API to manage projects, issues, and repositories through natural language.Last updated -20JavaScript
- AsecurityFlicenseAqualityAn MCP server that enables AI assistants to manage GitHub Actions workflows by providing tools for listing, viewing, triggering, canceling, and rerunning workflows through the GitHub API.Last updated -924TypeScript