GitVerse MCP New
GitVerse MCP — это удаленный MCP-сервер GitVerse. Он позволяет подключать AI-клиенты и агентные среды к репозиториям, файлам, запросам на слияние, релизам и workflow GitVerse через единый HTTP endpoint.
Общая информация
Model Context Protocol (MCP) — это открытый протокол обмена контекстом и инструментами между AI-моделью и внешними системами.
С помощью MCP AI-клиент может:
- Подключиться к MCP-серверу.
- Получить список доступных инструментов.
- Вызвать нужный инструмент по запросу пользователя.
- Получить результат в стандартизированном формате MCP.
Подробнее о самом протоколе см. в официальной документации MCP.
Когда использовать GitVerse MCP
GitVerse MCP нужен, когда AI должен работать не только с локальным кодом, но и с данными GitVerse:
- читать информацию о репозитории, ветках и содержимом файлов;
- создавать и обновлять репозитории, ветки, теги и файлы;
- создавать запросы на слияние и читать список измененных файлов;
- работать с релизами;
- запускать workflow вручную;
- получать информацию о пользователях.
Типовые сценарии:
- «покажи ветки в репозитории
owner/repo»; - «прочитай
README.mdиз репозитория и объясни структуру проекта»; - «создай запрос на слияние из
feature/loginвmaster»; - «подготовь релиз по тегу
v1.2.0»; - «запусти workflow с параметрами».
Начало работы с GitVerse MCP
Для подключения GitVerse MCP нужны:
- MCP-совместимый клиент с поддержкой удаленных MCP-серверов по HTTP и пользовательских HTTP-заголовков.
- API-токен GitVerse.
- Endpoint GitVerse MCP:
https://gitverse.ru/mcp.
GitVerse MCP использует тот же токен авторизации, что и Публичный API. Токен можно получить в разделе Управление токенами.
При создании токена для GitVerse MCP отметьте сущности, с которыми планируется работа. Для read-only сценариев достаточно Чтения, для создания и изменения сущностей потребуется Запись.
Набор доступных операций определяется правами пользователя, для которого создан токен.
GitVerse MCP требует аутентификацию. Незаполненный заголовок Authorization: Bearer ... приводит к ответу 401 Unauthorized.
Пример подключения GitVerse MCP
Ниже показан пример JSON-конфигурации для подключения GitVerse MCP:
{
"servers": {
"gitverse": {
"type": "http",
"url": "https://gitverse.ru/mcp",
"headers": {
"Authorization": "Bearer ${input:gitverse_token}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "gitverse_token",
"description": "GitVerse access token",
"password": true
}
]
}Если клиент умеет читать токен из переменных окружения, его можно хранить отдельно:
export GITVERSE_TOKEN=your_token_hereИ затем подставлять его в конфигурацию клиента как Bearer $GITVERSE_TOKEN.
Реальный формат конфигурации зависит от MCP-клиента.
Пример низкоуровневого подключения
В большинстве MCP-клиентов подключение выполняется автоматически. Примеры ниже полезны, если нужно вручную проверить подключение или понять формат обмена.
1. initialize
POST /mcp HTTP/1.1
Host: gitverse.ru
Content-Type: application/json
Accept: application/json, text/event-stream
Authorization: Bearer <GITVERSE_TOKEN>
{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2024-11-05",
"capabilities": {
"roots": {
"listChanged": true
},
"sampling": {}
},
"clientInfo": {
"name": "Example MCP Client",
"version": "1.0.0"
}
}
}Сервер отвечает 200 OK, возвращает JSON-RPC result и выставляет заголовок Mcp-Session-Id, который нужно передавать в последующих ручных вызовах:
HTTP/1.1 200 OK
Content-Type: application/json
Mcp-Session-Id: mcp-session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"protocolVersion": "2024-11-05",
"capabilities": {
"logging": {},
"tools": {
"listChanged": true
}
},
"serverInfo": {
"name": "GitVerse MCP Server",
"version": "<server-version>"
}
}
}2. notifications/initialized
После initialize клиент отправляет уведомление notifications/initialized:
POST /mcp HTTP/1.1
Host: gitverse.ru
Content-Type: application/json
Accept: application/json, text/event-stream
Authorization: Bearer <GITVERSE_TOKEN>
Mcp-Session-Id: mcp-session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
{
"jsonrpc": "2.0",
"method": "notifications/initialized",
"params": {}
}3. tools/list
После notifications/initialized клиент получает список доступных инструментов:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {
"cursor": null
}
}Полный список инструментов см. на странице GitVerse MCP tools.
При ручном HTTP-вызове используйте тот же Authorization: Bearer <GITVERSE_TOKEN> и Mcp-Session-Id, который сервер вернул на шаге initialize.
4. tools/call
Для первого read-only вызова удобно использовать get_my_user_info:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "get_my_user_info",
"arguments": {}
}
}В ответе инструмента полезные данные находятся в result.content[0].text. Это JSON-строка с объектом Result внутри:
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"content": [
{
"type": "text",
"text": "{\"Result\":{\"login\":\"example-user\",\"name\":\"Example User\",\"html_url\":\"https://gitverse.ru/example-user\"}}"
}
]
}
}Доступные инструменты
GitVerse MCP включает 23 инструмента для работы со следующими сущностями:
- репозитории;
- файлы;
- релизы;
- задачи;
- запросы на слияние;
- CI/CD;
- пользователи.
Подробный каталог с описаниями инструментов см. на странице GitVerse MCP tools.
Что дальше
- Изучите GitVerse MCP tools для полного списка доступных инструментов.
- Получите или обновите токен в разделе Управление токенами.