mcpField
🚀
🚀 GitLab MR MCP

🚀 GitLab MR MCP

ローカル
github.com/kopfrechnerバージョン管理942 日前に更新

🚀 GitLab MR MCP について

GitLab MR MCP は、AI エージェントが GitLab のマージリクエストや イシューを操作できるようにする MCP サーバーです。GitLab API を通じてコードレビューを支援させたいチーム向けです。

主な機能

  1. 01トークンで利用可能な GitLab プロジェクトの一覧取得
  2. 02マージリクエストの詳細、差分、コメントの取得
  3. 03全体コメントと行単位コメントの追加
  4. 04マージリクエストのタイトルと説明の設定

活用シーン

  1. 01AI エージェントによるマージリクエストのレビュー支援
  2. 02マージリクエストの差分の行単位でのフィードバック

MCP 対応

本プロジェクトは、GitLab のマージリクエストとイシューに関するツールを MCP クライアントに提供する MCP サーバーです。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"gitlab-mr": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
起動コマンドnpx -y @smithery/cli

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

パッケージ
npm@smithery/cli

ツール

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

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

詳細

MseeP.ai Security Assessment Badge

GitHub stars License smithery badge

🚀 GitLab MR MCP

GitLab のマージリクエストやイシューを操作するための、Model Context Protocol(MCP)サーバーです。

📌 概要

このプロジェクトは、AI エージェントが GitLab リポジトリを操作できるようにする、Model Context Protocol(MCP)を使用したサーバーを実装しています。次のツールを提供します。

  • 利用可能な GitLab プロジェクトの一覧表示
  • マージリクエストの詳細とコメントの取得
  • マージリクエストの差分の取得
  • マージリクエストへのコメントの追加
  • マージリクエストの差分に含まれるコードへの行単位のコメントの追加
  • イシューの詳細の取得
  • マージリクエストのタイトルと説明の設定

📦 インストール

⚡ Smithery を使用する

Smithery 経由で Claude Desktop に GitLab MR MCP を自動インストールするには:

npx -y @smithery/cli@latest install @kopfrechner/gitlab-mr-mcp --client claude --config '"{\"gitlabMrMcpToken\":\"YOUR_GITLAB_TOKEN\", \"gitlabMrMcpHost\": \"YOUR_GITLAB_HOST\"}"'
🛠️ 手動インストール
🔧 前提条件
  • Node.js
  • API アクセス権を持つ GitLab アクセストークン
  • GitLab プロジェクト ID
📖 セットアップ
  1. このリポジトリをクローンします
  2. 依存関係をインストールします:
npm install
  1. MCP クライアントの設定に以下を追加します:
{
  "mcpServers": {
    "gitlab-mr-mcp": {
      "command": "node",
      "args": ["/path/to/gitlab-mr-mcp/index.js"],
      "env": {
        "MR_MCP_GITLAB_TOKEN": "your_gitlab_token",
        "MR_MCP_GITLAB_HOST": "your_gitlab_host"
      }
    }
  }
}

🛠️ 利用可能なツール

  • get_projects トークンでアクセスできる GitLab プロジェクトの一覧を取得します。

  • list_open_merge_requests 指定したプロジェクトのすべてのオープン中のマージリクエストを一覧表示します。

  • get_merge_request_details 特定のマージリクエストの詳細情報を取得します。

  • get_merge_request_comments ディスカッションのノートや差分ノートを含む、特定のマージリクエストのコメントを取得します。

  • add_merge_request_comment マージリクエストに一般的なコメントを追加します。

  • add_merge_request_diff_comment マージリクエスト内のファイルの特定の行にコメントを追加します。

  • get_merge_request_diff マージリクエストの差分を取得します。

  • get_issue_details 特定のイシューの詳細情報を取得します。

  • set_merge_request_title マージリクエストのタイトルを設定します

  • set_merge_request_description マージリクエストの説明を設定します

🏗️ 開発

🔍 Inspector の実行

環境変数を設定します:

export MR_MCP_GITLAB_TOKEN=your_gitlab_token
export MR_MCP_GITLAB_HOST=your_gitlab_host

# Optional env vars to filter the projects the `get_projects` tool has access to:
# https://docs.gitlab.com/api/access_requests/#valid-access-levels
export MR_MCP_MIN_ACCESS_LEVEL=min_access_level
# Search term that should match the project path or name 
export MR_MCP_PROJECT_SEARCH_TERM=term 

MCP クライアントで使用する場合は、次のコマンドを実行できます:

npx -y @modelcontextprotocol/inspector npm start

🛠️ トラブルシューティング

権限の問題(403 Forbidden)が発生した場合は、以下を確認してください。

  1. GitLab トークンに適切なスコープ(api、read_api)があること
  2. トークンのユーザーがプロジェクトへの適切なアクセス権を持っていること
  3. プロジェクト ID が正しいこと

📜 ライセンス

MIT

🤝 貢献

貢献を歓迎します。お気軽にプルリクエストを送信してください。

コメント

MCP は初めてですか?

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

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