AIGitVerse MCP

GitVerse MCP
New

GitVerse MCP β€” это ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ MCP-сСрвСр GitVerse. Он позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ AI-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΈ Π°Π³Π΅Π½Ρ‚Π½Ρ‹Π΅ срСды ΠΊ рСпозиториям, Ρ„Π°ΠΉΠ»Π°ΠΌ, запросам Π½Π° слияниС, Ρ€Π΅Π»ΠΈΠ·Π°ΠΌ ΠΈ workflow GitVerse Ρ‡Π΅Ρ€Π΅Π· Π΅Π΄ΠΈΠ½Ρ‹ΠΉ HTTP endpoint.

ΠžΠ±Ρ‰Π°Ρ информация

Model Context Protocol (MCP) β€” это ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΎΠ±ΠΌΠ΅Π½Π° контСкстом ΠΈ инструмСнтами ΠΌΠ΅ΠΆΠ΄Ρƒ AI-модСлью ΠΈ внСшними систСмами.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ MCP AI-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚:

  1. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ MCP-сСрвСру.
  2. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список доступных инструмСнтов.
  3. Π’Ρ‹Π·Π²Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹ΠΉ инструмСнт ΠΏΠΎ запросу ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
  4. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² стандартизированном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ MCP.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ самом ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ см. Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ MCP.

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ GitVerse MCP

GitVerse MCP Π½ΡƒΠΆΠ΅Π½, ΠΊΠΎΠ³Π΄Π° AI Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Π½ΠΎ ΠΈ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ GitVerse:

  • Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π²Π΅Ρ‚ΠΊΠ°Ρ… ΠΈ содСрТимом Ρ„Π°ΠΉΠ»ΠΎΠ²;
  • ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π²Π΅Ρ‚ΠΊΠΈ, Ρ‚Π΅Π³ΠΈ ΠΈ Ρ„Π°ΠΉΠ»Ρ‹;
  • ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ запросы Π½Π° слияниС ΠΈ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²;
  • Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π΅Π»ΠΈΠ·Π°ΠΌΠΈ;
  • Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ workflow Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ;
  • ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΡ….

Π’ΠΈΠΏΠΎΠ²Ρ‹Π΅ сцСнарии:

  • Β«ΠΏΠΎΠΊΠ°ΠΆΠΈ Π²Π΅Ρ‚ΠΊΠΈ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ owner/repoΒ»;
  • Β«ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°ΠΉ README.md ΠΈΠ· рСпозитория ΠΈ объясни структуру ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Β»;
  • «создай запрос Π½Π° слияниС ΠΈΠ· feature/login Π² masterΒ»;
  • Β«ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΡŒ Ρ€Π΅Π»ΠΈΠ· ΠΏΠΎ Ρ‚Π΅Π³Ρƒ v1.2.0Β»;
  • «запусти workflow с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈΒ».

Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с GitVerse MCP

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ GitVerse MCP Π½ΡƒΠΆΠ½Ρ‹:

  1. MCP-совмСстимый ΠΊΠ»ΠΈΠ΅Π½Ρ‚ с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… MCP-сСрвСров ΠΏΠΎ HTTP ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ².
  2. API-Ρ‚ΠΎΠΊΠ΅Π½ GitVerse.
  3. 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.

Π§Ρ‚ΠΎ дальшС

  1. Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ GitVerse MCP tools для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ списка доступных инструмСнтов.
  2. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌΠΈ.

Π’Ρ‹ нашли Ρ‡Ρ‚ΠΎ искали?