Thanks to visit codestin.com
Credit goes to docs.github.com

Skip to main content

Улучшение режима агент Copilot в GitHub с помощью MCP

Узнайте, как использовать протокол Model Context Protocol (MCP) для расширения агентных возможностей Копилот Чат.

Примечание.

Серверы MCP в политике Copilot для предприятий и организаций, отключенных по умолчанию, управляют использованием MCP.

О Copilotагентных возможностях и MCP

          CopilotАгентные возможности — это способность **работать самостоятельно** , выполняя многоступенчатые рабочие процессы без постоянного руководства, **принимать решения** , выбирая подходящие инструменты и подходы на основе контекста, а также **итерировать и адаптироваться** , корректируя подход в соответствии с обратной связью и результатами. К этим возможностям можно access, используя режим агента.

В сочетании с серверами протокола Model Context Protocol (MCP) режим агента становится значительно мощнее, предоставляя Copilot доступ к внешним ресурсам без переключения контекста. Это позволяет Copilot завершать агентные «петли», в ходе которых компания может динамически адаптировать свой подход, автономно находя релевантную информацию, анализируя обратную связь и принимая обоснованные решения. С MCP он Copilot может выполнить задачу с минимальным вмешательством человека, постоянно корректируя стратегию на основе полученных данных.

Преимущества объединения MCP с режимом агента

При использовании серверов MCP с режимом агента вы разблокируете несколько ключевых преимуществ:

  • Расширенный контекст: MCP-серверы предоставляют Copilot доступ к внешним источникам данных, API и инструментам.
  • Снижение ручных усилий: Copilot можно выполнять задачи, такие как создание проблем и запуск рабочих процессов, пока вы сосредотачиваетесь на более ценных задачах.
  • Бесшовная интеграция: Copilot может работать над задачей с участием нескольких инструментов и платформ без переключения между контекстами и необходимости индивидуальных интеграций.

Рекомендации по использованию MCP с режимом агента

Следуйте этим рекомендациям, чтобы получить большую часть объединения серверов MCP с режимом агента.

Подсказки стратегий

  • Укажите конкретные цели: четко определите, что вы хотите выполнить в запросе и какие выходные данные вы хотите.
  • Предоставьте контекст: включите релевантную справочную информацию о вашем проекте и требованиях, включая ссылки на внешние ресурсы, к которым Copilot можно получить доступ.
  • Задайте границы: укажите все ограничения или ограничения для задачи. Например, если вы хотите Copilot планировать только новую функцию и пока не вносить никаких изменений, уточните это. Вы также можете ограничить, какие средства MCP включены.
  • Запросите подтверждение: Попросите Copilot подтвердить понимание информации перед началом значительных изменений.
  • Используйте файлы с подсказками или пользовательские инструкции: вы можете создавать файлы подсказок или пользовательские инструкции, чтобы руководство Copilot по работе с разными MCP-серверами. См. О кастомизации ответов GitHub Copilot.

Использование сервера MCP

  • Выберите соответствующие серверы: выберите и включите серверы MCP, соответствующие конкретным потребностям рабочего процесса.

          **Начните с нескольких хорошо установленных серверов MCP, прежде чем добавлять более сложные интеграции.
  • Проверка подключения. Убедитесь, что все серверы MCP правильно настроены и доступны перед запуском задач режима агента.

Вопросы безопасности

  • Используйте OAuth, когда это возможно: для MCP-серверов, таких GitHub как MCP, предпочитайте аутентификацию OAuth вместо personal access tokens. См. Использование GitHub MCP сервера в вашем IDE.
  • Ограничение разрешений. Предоставьте только серверы MCP минимальным разрешениям, необходимым для выполнения задач.
  • Review connections: Регулярно проверяйте аудит, какие MCP-серверы имеют access в вашей среде разработки.
  • Мониторинг активности: Отслеживайте, какие действия Copilot выполняются через MCP-серверы.
  • Предотвратите утечки секретов: Push защита блокирует включение секретов в ответы, сгенерированные ИИ, и не даёт вам раскрывать секреты через любые действия, которые вы выполняете через GitHub сервер MCP. Сейчас это доступно только для общедоступных репозиториев. См. Сведения о защите push-уведомлений.

Пример сценария. Реализация соответствия специальным возможностям

Примечание.

Следующий сценарий предназначен только для демонстрации шаблонов и стратегий, которые можно использовать с режимом агента и серверами MCP для завершения задачи. Сценарий, запросы и ответы являются лишь примерами.

Предположим, ваша команда получила отзыв о том, что портал клиента должен быть обновлен, чтобы соответствовать последним стандартам специальных возможностей. Вам было поручено улучшить специальные возможности в приложении с помощью следующих рекомендаций:

  • Список спецификаций, определенных командой разработчиков.
  • Проблемы, созданные в репозитории вашего project после аудита доступности.

Вы можете использовать Copilot режим агента для использования нескольких MCP-серверов для эффективной реализации улучшений доступности.

В приведенном ниже сценарии показано, как использовать отдельные запросы для различных этапов (исследования, планирования, реализации и проверки), что приводит к тому, что несколько агентических циклов свободно соответствуют этапам жизненного цикла разработки программного обеспечения. Такой подход создаёт естественные контрольные точки, где можно просматривать прогресс, давать обратную связь и корректировать свои требования, прежде чем Copilot перейти к следующему этапу.

Необходимые компоненты

Прежде чем использовать режим агента с MCP, убедитесь, что вы:

  • IDE с Copilot интеграцией и поддержкой MCP (например Visual Studio Code, )
  • Режим агента включен
  • Access к необходимым MCP-серверам, которые вы хотите использовать

Настройка серверов MCP

Во-первых, нужно настроить MCP-серверы, которые, как вы ожидаете Copilot , понадобятся. В этом примере мы будем использовать следующее:


          GitHub MCP-сервер**: Настройте GitHub MCP-сервер позволяет Copilot получать доступ к репозиторию, анализировать кодовую базу, исследовать существующие проблемы, создавать ветки и управлять pull-запросами. См. [AUTOTITLE](/copilot/customizing-copilot/using-model-context-protocol/using-the-github-mcp-server).
  • Сервер Figma MCP: Настройте сервер Figma MCP так, чтобы он позволял Copilot получать доступ к файлам дизайна, содержащим спецификации доступности, такие как требования к цветовому контрасту, состояния фокуса и паттерны взаимодействия. Посмотрите Figma-Context-MCP или попробуйте Dev Mode MCP сервер.

  • Сервер Playwright MCP: Настройте MCP-сервер Playwright для Copilot написания и запуска автоматических тестов доступности, включая совместимость экранных ридеров и тесты навигации по клавиатуре. См. mcp-playwright.

Шаг 1: Research loop — анализ требований к доступности

Подсказка Copilot проанализировать как требования к доступности, так и существующие связанные GitHub с ней вопросы в проекте.

В запросе добавьте ссылку на файл Figma. Чтобы Copilot успешно прочитал и проанализировал спецификации проектирования, выберите конкретный узел или слой в файле, чтобы идентификатор узла был включён в URL.

Пример запроса 1

Copilot prompt
I need to make our customer portal WCAG 2.1 AA compliant. Use the Figma MCP to analyze our design specifications at https://figma.com/design/DESIGN-FILE-FOR-ACCESSIBILITY-SPECS?node-id=NODE_ID for accessibility requirements. Also use the GitHub MCP to find open GitHub issues with the labels accessibility or WCAG in the customer-portal repository. Then sort them into categories and list each issue that falls under the category with the issue title and number.

Пример ответа 1

          Copilot должен первым ответить, запросив запуск инструментов с серверов Figma и GitHub MCP. После разрешения Copilot анализирует спецификации дизайна Figma и будет искать и организовывать GitHub проблемы по категориям.

Например, Copilot можно определить цветовой контраст как категорию на основе выявления множества проблем.

  • Проблемы с контрастностью цвета
    • Проблема #134: коэффициент контрастности текста панели мониторинга ниже 4.5:1
    • Проблема #156. Состояния ошибок формы не соответствуют требованиям к контрастности

Это даёт вам полный обзор требований к доступности, который вы сможете Copilot затем расставить приоритеты и составить план.

Шаг 2: Planning loop — стратегия реализации доступности

Далее попросите Copilot составить подробный план реализации.

Пример запроса 2

Copilot prompt
Based on your accessibility analysis of our Figma designs and GitHub issues, create a focused implementation plan for an immediate pull request addressing the highest priority accessibility issues. Don't make any changes yet. Also suggest follow-up issues we should create for the remaining Figma specifications.

Пример ответа 2

          Copilot ответит созданием приоритетного плана внедрения, сосредоточенного на высокоэффективных вопросах доступности для немедленного pull request, а также предложит последующие вопросы для оставшейся работы.

Например, Copilot может определить, что нужно сделать для устранения проблем в категории цветового контраста.

          **1. Исправления контрастности цвета:**
  • Обновите переменные цвета текста в переменных.scss, чтобы обеспечить соотношение контрастности 4.5:1 для всего обычного текста
  • Изменение цветов компонентов пользовательского интерфейса в DashboardCard.vue и других основных компонентах в соответствии с коэффициентом контрастности 3:1
  • Приоритет устранения проблемы #134 (контрастность текста панели мониторинга) и проблема 156 (состояния ошибок формы)

Вы можете попросить Copilot скорректировать план в зависимости от того, на чём вы хотите сосредоточиться. Результат — план, с которым вы чувствуете себя комфортно, и теперь можете попросить Copilot реализовать его.

Шаг 3: Implementation loop — улучшение доступности

После ознакомления с планом Copilot начните внедрять исправления доступности.

Пример запроса 3

Copilot prompt
Create a new branch and implement the critical accessibility fixes according to your proposed implementation plan. Focus on the top three categories that you identified as highest priority. Create a pull request with proper references to the issues being fixed.

Пример ответа 3

          Copilot ответит выполнением плана внедрения, внесением целевых изменений в код для устранения выявленных проблем доступности и созданием pull request.

Например, Copilot можно создать новую ветвь с вызовом fix/critical-accessibility-issues и внести изменения для решения проблем цветового контраста.

  • Исправлены проблемы с контрастностью текста панели мониторинга (проблема 134):
    • Обновлены переменные src/styles/variables.scss цвета текста из #767676 до #595959
    • Изменен темный текст на светло-серых фонах, DashboardCard.vue чтобы обеспечить соотношение 4.5:1

Я открыл запрос на вытягивание #213 с этими изменениями.

Шаг 4: Testing loop — проверка доступности с Playwright

Вы можете предложить Copilot создать и провести тесты доступности с помощью Playwright MCP.

Пример запроса 4

Copilot prompt
Create focused accessibility tests for the components we've updated in the pull request. Use the Playwright MCP.

Пример ответа 4

          Copilot отвечает разработкой тестов доступности и, при необходимости, созданием конфигурационного файла Playwright.

Например, Copilot можно создать тестовый файл с контрастом текста.

          **Реализация теста:**
  • Создан целевой тестовый файл в tests/accessibility/: * contrast.spec.ts — проверяет коэффициенты контрастности текста

После создания Copilot тестов я запросим разрешение использовать различные инструменты у MCP Playwright для их проведения. Обратите внимание, что иногда Copilot может проводить дополнительные тесты, которые вы не обязательно просили; вы можете попытаться предотвратить это, подстроив подсказку.

Шаг 5: Обновление GitHub проблем

Наконец, Copilot подскажите обновление GitHub проблем, которые были решены в pull request, и создайте последующие проблемы.

Пример запроса 5

Copilot prompt
Update the GitHub issues we've fixed in the pull request with comments summarizing the changes. Create the follow-up issues you suggested for the remaining accessibility work.

Пример ответа 5

          Copilot ответит, запросив разрешение на использование необходимых инструментов с GitHub сервера MCP. Затем он обновит GitHub проблемы с подробными комментариями и создаст структурированные последующие вопросы для оставшейся работы.

Например, Copilot добавим комментарии к проблемам цветового контраста, изначально выявленных на этапе исследования.

          **Обновлены проблемы с комментариями:**
  • Проблема #134: "Соотношение контрастности текста панели мониторинга ниже 4.5:1"
    • Комментарий: "Исправлено в PR #213 путем обновления переменных цвета текста в переменных.scss и компонент DashboardCard. Все текст панели мониторинга теперь соответствует коэффициенту контрастности 4.5:1, проверенного автоматическими тестами".

Теперь вы можете просмотреть запрос на вытягивание и внести любые изменения. Убедившись, что изменения действительны, можно объединить как с любым другим запросом на вытягивание.

Отработка практических навыков

Практикуйте интеграцию MCP с GitHub Copilot упражнением «Интегрировать MCP с GitHub Copilot навыками».

В этом упражнении вы узнаете, как:

  • Настройте и подключите GitHub MCP-сервер к GitHub Copilot.
  • Используйте естественный язык для взаимодействия с внешними сервисами через инструменты MCP в режиме агента.
  • Ищите и анализируйте похожие проекты с помощью MCP.
  • Сортируйте, создавайте и управляйте GitHub проблемами, затем внедряйте изменения с GitHub Copilotпомощью .

Дополнительные материалы