Работа с MCP-сервером в SourceCraft

Важно

Функциональность доступна только в Visual Studio Code.

С помощью SourceCraft MCP вы можете работать с сущностями SourceCraft через интерфейс чата Code Assistant. Например, искать и выполнять Задачи, создавать Предложения изменений и другое.

В этой инструкции с помощью Code Assistant и SourceCraft MCP мы найдем задачу в репозитории, внесем все необходимые изменения, отправим их в репозиторий и закроем задачу.

В примере разобрана работа с MCP-сервером через плагин SourceCraft Code Assistant, но вы можете использовать любой другой плагин для IDE, поддерживающий работу с MCP.

Подготовьте окружение

Для выполнения предложенного сценария понадобятся следующие инструменты:

Установите MCP

  1. В VSCode на панели слева нажмите на значок плагина .
  2. На открывшейся панели выберите Settings.
  3. Перейдите в раздел Серверы MCP.
  4. Активируйте опцию Включить серверы MCP и нажмите Маркетплейс MCP.
  5. Найдите SourceCraft и нажмите Установить.

Подготовьте репозиторий

  1. Создайте пустой репозиторий, например mcp-test.

  2. Добавьте в созданный репозиторий файл hello.py со следующим содержимым:

    print("Hello, World")
    
  3. Создайте задачу «Добавить русификацию» со следующим описанием:

    В файл hello.py добавить альтернативный вариант на русском языке. Нужный язык должен выбирать пользователь при запуске.
    

Отправьте запросы в чат

Для примера использовался публичный репозиторий mcp-test в организации orgname. Используйте свои названия для запросов к Code Assistant.

Результаты выполнения запросов могут отличаться в зависимости от модели и выбранного режима поведения.

  1. В VSCode на панели слева нажмите на значок плагина .

  2. В открывшемся чате попросите Code Assistant вывести список задач:

    Покажи список issues в репозитории mcp-test в организации orgname.
    

    Ассистент воспользуется инструментом ListRepositoryIssues для вывода списка задач. В зависимости от ваших настроек плагина может потребоваться одобрить выполнение запроса.

  3. С помощью Code Assistant клонируйте репозиторий:

    Теперь клонируй репозиторий.
    

    Ассистент получит ссылку для клонирования с помощью инструмента GetRepository, а затем воспользуется командой git clone.

  4. Попросите Code Assistant выполнить задачу в новой ветке репозитория:

    Создай новую ветку в репозитории и выполни в ней упомянутую задачу по добавлению русификации.
    

    Ассистент отредактирует файл hello.py и добавит коммит с изменениями с помощью git.

  5. Если на предыдущем шаге Code Assistant не протестировал отредактированный код, попросите его об этом:

    Протестируй код.
    

    Ассистент выполнит тест обновленного кода и выведет результаты тестирования.

  6. Создайте с помощью ассистента новое предложение изменений в репозитории:

    Создай из ветки новое предложение изменений в репозитории и привяжи его к упомянутому ранее issue.
    

    Ассистент получит информацию о задаче в репозитории с помощью инструментов GetRepository и GetIssue, через git отправит изменения в удаленный репозиторий, создаст предложение изменений с помощью CreatePullRequest и привяжет к нему исходную задачу через AddLinkedPRs.

  7. В интерфейсе SourceCraft найдите созданное предложение изменений, проверьте его и выполните слияние с основной веткой.

  8. Попросите Code Assistant написать комментарий и закрыть задачу:

    В упомянутом issue оставь комментарий, что задача выполнена, а затем закрой его.
    

    Ассистент откроет задачу с помощью инструмента GetIssue, а затем внесет в нее изменения инструментами CreateIssueComment и UpdateIssue.

    Чтобы проверить работу Code Assistant, откройте репозиторий в браузере и убедитесь, что изменения внесены и задача закрыта.

Совет

В примере описаны пошаговые команды для Code Assistant при работе с MCP SourceCraft для более гранулярного контроля над действиями агента.

Вы можете описать все действия, которые должен совершить Code Assistant, в одной общей команде и корректировать ассистента по ходу выполнения.

См. также