Skip to main content

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

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

Примечание.

Серверы 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-серверами. См. [AUTOTITLE](/copilot/concepts/about-customizing-github-copilot-chat-responses).
    

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

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

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

  •         **Используйте OAuth, когда это возможно**: для MCP-серверов, таких GitHub как MCP, предпочитайте аутентификацию OAuth вместо personal access tokens. См. [AUTOTITLE](/copilot/customizing-copilot/using-model-context-protocol/using-the-github-mcp-server#remote-mcp-server-configuration-with-oauth).
    
  •         **Ограничение разрешений. Предоставьте только серверы** MCP минимальным разрешениям, необходимым для выполнения задач.
    
  •         **Review connections**: Регулярно проверяйте аудит, какие MCP-серверы имеют access в вашей среде разработки.
    
  •         **Мониторинг активности**: Отслеживайте, какие действия Copilot выполняются через MCP-серверы.
    
  •         **Предотвратите утечки секретов**: Push защита блокирует включение секретов в ответы, сгенерированные ИИ, и не даёт вам раскрывать секреты через любые действия, которые вы выполняете через GitHub сервер MCP. Сейчас это доступно только для общедоступных репозиториев. См. [AUTOTITLE](/code-security/secret-scanning/introduction/about-push-protection).
    

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

Примечание.

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

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

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

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

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

  •         [Необходимые условия](#prerequisites)
    
  •         [Настройка серверов MCP](#setting-up-mcp-servers)
    
  •         [Шаг 1: Исследовательский loop — Анализ требований к доступности](#step-1-research-loop---analyzing-accessibility-requirements)
    
  •         [Шаг 2: Планирование loop — стратегия реализации доступности](#step-2-planning-loop---accessibility-implementation-strategy)
    
  •         [Шаг 3: Внедрение loop — улучшение доступности](#step-3-implementation-loop---making-accessibility-improvements)
    
  •         [Шаг 4: Тестирование loop — проверка доступности с помощью Playwright](#step-4-testing-loop---accessibility-verification-with-playwright)
    
  •         [Шаг 5: Обновление GitHub проблем](#step-5-updating-github-issues)
    
  •         [Дополнительные материалы](#further-reading)
    

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

Прежде чем использовать режим агента с 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](https://github.com/GLips/Figma-Context-MCP) или попробуйте [Dev Mode MCP сервер](https://help.figma.com/hc/en-us/articles/32132100833559-Guide-to-the-Dev-Mode-MCP-Server).
    
  •         **Сервер Playwright MCP**: Настройте MCP-сервер Playwright для Copilot написания и запуска автоматических тестов доступности, включая совместимость экранных ридеров и тесты навигации по клавиатуре. См. [mcp-playwright](https://github.com/executeautomation/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помощью .

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

  •         **Основы** MCP. Дополнительные сведения о настройке и настройке серверов MCP см. в разделе [AUTOTITLE](/copilot/customizing-copilot/using-model-context-protocol/extending-copilot-chat-with-mcp).
    
  •         **Using MCP servers**: Дополнительные идеи по интеграции MCP с GitHub Copilot см. [5 способы трансформации рабочего процесса с помощью GitHub Copilot и MCP](https://github.blog/ai-and-ml/github-copilot/5-ways-to-transform-your-workflow-using-github-copilot-and-mcp/) на the GitHub Blog.