GitLab Orbit Local MCPサーバー
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
- ステータス: 実験的機能
GitLab Orbit Local Model Context Protocol(MCP)サーバーを使用すると、AIツールやアプリケーションをローカルグラフに安全に接続できます。Claude Code、Codex、Cursor、OpenCodeなどのAIアシスタントは、グラフにアクセスしてSQLクエリを実行できます。
GitLab Orbit Local MCPサーバーはステートレスです。これは、サーバーが以下の特性を持つことを意味します:
- ローカルグラフを参照し、GitLabインスタンスは参照しません。
- 結果をキャッシュしたり、クエリ履歴を保持したりしません。
- 複数のクライアントに対して独立して応答できます。
前提条件
- 以下のいずれかのツールをインストールします:
- GitLab Orbit CLI(
orbit) - GitLab CLI(
glab orbit)
- GitLab Orbit CLI(
GitLab Orbit Local MCPサーバーにクライアントを接続する
GitLab Orbit Local MCPサーバーはstdioトランスポートをサポートしています。引数とコマンドは、MCPクライアントおよびローカル環境によって異なります。
Claude Codeに接続する
Claude CodeはMCPサーバーの設定を3つのスコープのいずれかに保存します。ユースケースに合ったスコープを選択してください。
| スコープ | 利用可能範囲 | 保存先 |
|---|---|---|
local(デフォルト) | 現在のプロジェクトで自分のみ | ~/.claude.json |
user | すべてのプロジェクトで自分のみ | ~/.claude.json |
project | リポジトリをチェックアウトした全員 | リポジトリルートの.mcp.json |
現在のプロジェクトにMCPサーバーを追加するには、次のコマンドを実行します:
claude mcp add orbit-local -- orbit mcp serveclaude mcp add orbit-local -- glab orbit local mcp serveすべてのプロジェクトにサーバーを追加するには、次のコマンドを実行します:
claude mcp add orbit-local --scope user -- orbit mcp serveclaude mcp add orbit-local --scope user -- glab orbit local mcp serveリポジトリをチェックアウトした全員にサーバーを追加するには、次のコマンドを実行します:
claude mcp add orbit-local --scope project -- orbit mcp serveclaude mcp add orbit-local --scope project -- glab orbit local mcp serve.mcp.jsonファイルを直接編集することもできます:
{
"mcpServers": {
"orbit-local": {
"command": "orbit",
"args": ["mcp", "serve"]
}
}
}{
"mcpServers": {
"orbit-local": {
"command": "glab",
"args": ["orbit", "local", "mcp", "serve"]
}
}
}MCPサーバーが接続されていることを確認するには、次のコマンドを実行します:
claude mcp list接続後、AIアシスタントをセットアップします。
プロジェクトスコープのコマンドの場合、Claude Codeはmcp.jsonファイルを作成する前に承認を求めます。承認するまで、claude mcp listにはサーバーがPending approvalとして表示されます。
Codexに接続する
Codexは~/.codex/config.tomlにMCPサーバーの設定を保存します。Codexは常にすべてのプロジェクトに対してサーバーを設定します。
Codexに接続するには、次のコマンドを実行します:
codex mcp add orbit-local -- orbit mcp servecodex mcp add orbit-local -- glab orbit local mcp serveサーバーが登録されていることを確認するには、次のコマンドを実行します:
codex mcp list接続後、AIアシスタントをセットアップします。
Cursorに接続する
Cursorはmcp.jsonファイルからMCPサーバーの設定を読み取ります。サーバーの利用範囲に応じてスコープを選択してください。
| スコープ | 利用可能範囲 | 保存先 |
|---|---|---|
| プロジェクト | 現在のプロジェクトで自分のみ | リポジトリルートの.cursor/mcp.json |
| グローバル | すべてのプロジェクトで自分のみ | ~/.cursor/mcp.json |
Cursorに接続するには、使用するスコープのmcp.jsonファイルを作成または編集します:
{
"mcpServers": {
"orbit-local": {
"type": "stdio",
"command": "orbit",
"args": ["mcp", "serve"]
}
}
}{
"mcpServers": {
"orbit-local": {
"type": "stdio",
"command": "glab",
"args": ["orbit", "local", "mcp", "serve"]
}
}
}サーバーが接続されていることを確認するには、次のコマンドを実行します:
agent mcp listOpenCodeに接続する
リポジトリルートのopencode.json、またはすべてのプロジェクトで使用する場合は~/.config/opencode/opencode.jsonにMCPサーバーの設定を追加します。
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"orbit-local": {
"type": "local",
"command": ["orbit", "mcp", "serve"]
}
}
}{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"orbit-local": {
"type": "local",
"command": ["glab", "orbit", "local", "mcp", "serve"]
}
}
}サーバーが接続されていることを確認するには、次のコマンドを実行します:
opencode mcp list接続後、AIアシスタントをセットアップします。
その他のMCPクライアントに接続する
GitLab Orbit Local MCPサーバーは接続URLを公開していません。URLが必要なクライアントは接続できません。
GitLab Orbit CLIを使用して接続するには、クライアントのMCP設定ファイルを編集します:
{
"mcpServers": {
"orbit-local": {
"command": "orbit",
"args": ["mcp", "serve"]
}
}
}GitLab CLIを使用して接続するには、次の手順を実行します:
glab orbit local --installを実行します。このコマンドはorbitバイナリをダウンロードします。- 次に、クライアントのMCP設定ファイルを編集します:
{
"mcpServers": {
"orbit-local": {
"command": "glab",
"args": ["orbit", "local", "mcp", "serve"]
}
}
}サーバーが接続されていることを確認するには、クライアントがrun_sql、get_graph_schema、およびindexツールを一覧表示していることを確認します。
MCPツール
GitLab Orbit Local MCPサーバーは、ローカルグラフと連携するツールセットを提供します。
index
リポジトリ、またはリポジトリを含むディレクトリのインデックスを、ローカルグラフに作成します。
例:
チェックアウト済みのプロジェクトをインデックス作成してください。get_graph_schema
スキーマをフェッチします。ローカルグラフに存在するテーブル名、列、データ型が含まれます。
例:
Use the `get_graph_schema` tool to show me what tables are in my local graph.run_sql
ローカルグラフに対して読み取り専用のSQLを実行します。ステートメントの配列を受け取り、各ステートメントについて、同じインデックス位置に1つのJSON行配列を返します。
1回のrun_sql呼び出しで返されるデータは、呼び出し内のすべてのステートメントを合計して最大約1 MBです。それより大きい結果は失敗し、エージェントはより絞り込んだクエリで再試行します。エージェントが回復しない場合は、より少ない結果を要求してください。
例:
Show me the most used imports in this repository.