Поделиться через


ICM MCP

ICM MCP позволяет внутренним агентам MCS Майкрософт взаимодействовать с ICM Tickets. Она поддерживает стандартные средства MCP, список и средства, вызовы и средства, начиная от сведений об инциденте для редактирования и передачи

Этот соединитель доступен в следующих продуктах и регионах:

Услуга Класс Регионы
Copilot Studio Стандарт Все регионы Power Automate , кроме следующих:
     - Правительство США (GCC)
     - Правительство США (GCC High)
     — Облако Китая, управляемое 21Vianet
     - Министерство обороны США (DoD)
Power Apps Стандарт Все регионы Power Apps , кроме следующих:
     - Правительство США (GCC)
     - Правительство США (GCC High)
     — Облако Китая, управляемое 21Vianet
     - Министерство обороны США (DoD)
Power Automate Стандарт Все регионы Power Automate , кроме следующих:
     - Правительство США (GCC)
     - Правительство США (GCC High)
     — Облако Китая, управляемое 21Vianet
     - Министерство обороны США (DoD)
Контакт
Имя Агент365 Microsoft.com
URL Поддержка Power Automate Microsoft
Поддержка Power Apps Microsoft
Эл. почта robsanto@microsoft.com
Метаданные соединителя
Publisher Корпорация Майкрософт
Веб-сайт https://eng.ms/docs/products/icm/onboarding/introduction
Политика конфиденциальности https://privacy.microsoft.com/en-US/privacystatement
Категории Искусственный интеллект; Продуктивность

Соединитель инструментов ICM MCP

Обзор

Соединитель средств ICM MCP предоставляет доступ к системе управления инцидентами (ICM) Корпорации Майкрософт через интерфейс ПРОТОКОЛА контекста модели (MCP). Этот соединитель позволяет Power Automate и Power Apps взаимодействовать с ICM для управления инцидентами с помощью средств искусственного интеллекта и комплексных возможностей анализа инцидентов.

Этот соединитель предоставляет прямой доступ к серверу MCP, что позволяет использовать растущий набор мощных средств управления инцидентами.

Необходимые условия

  • Допустимые корпоративные учетные данные Майкрософт
  • Доступ к системе ICM
  • Соответствующие разрешения для операций, которые требуется выполнить

Аутентификация

Соединитель использует проверку подлинности OAuth 2.0 с Azure Active Directory. При создании подключения вам будет предложено войти с помощью корпоративных учетных данных Майкрософт.

Доступные операции

Вызов сервера MCP

Соединитель предоставляет единую мощную операцию, которая обеспечивает доступ ко всем средствам MCP:

  • Вызов СЕРВЕРА MCP: прямой доступ к серверу MCP с поддержкой tools/list и tools/call методами

Доступные инструменты MCP

Соединитель в настоящее время поддерживает следующие средства (этот список будет продолжать расти):

Анализ инцидентов

  • get_incident_details_by_id — получение подробных сведений об определенном инциденте
  • get_incident_context — получение контекстной информации и связанных данных для инцидента
  • get_incident_location — получение сведений о расположении для инцидента
  • get_incident_customer_impact — анализ влияния клиента на инцидент
  • get_similar_incidents — Поиск аналогичных инцидентов для анализа шаблонов
  • get_ai_summary — Получение сводки об инцидентах, созданных ИИ
  • get_mitigation_hints — Получение предлагаемых стратегий устранения рисков

Анализ влияния клиента

  • get_impacted_s500_customers — получение списка затронутых клиентов S500
  • get_impacted_ace_customers — получение списка затронутых клиентов ACE
  • get_impacted_azure_priority0_customers — получение списка затронутых клиентов Azure Priority 0
  • get_impacted_subscription_count — получение количества затронутых подписок
  • is_specific_customer_impacted — Проверьте, влияет ли конкретный клиент.

Служба и инфраструктура

  • get_impacted_services_regions_clouds — получение сведений об затронутых службах, регионах и облаках
  • get_services_by_names — получение сведений о службе по именам
  • get_outage_high_priority_events — Получение событий сбоя с высоким приоритетом

Управление группами и контактами

  • get_teams_by_public_id — Поиск команд по их общедоступному идентификатору
  • get_teams_by_name — Поиск команд по имени
  • get_team_by_id — Получение сведений о команде по идентификатору
  • get_contact_by_alias — получение контактных данных по псевдониму
  • get_contact_by_id — получение контактных данных по идентификатору
  • get_on_call_schedule_by_team_id — Получение расписания по вызову для команды

Поиск и запросы

  • search_incidents_by_owning_team_id — поиск инцидентов путем владения командой
  • get_support_requests_crisit — получение критически важных запросов на поддержку

Использование соединителя

1. Список доступных средств

Чтобы просмотреть все доступные tools/list средства, используйте этот метод:

Запрос:

{
  "jsonrpc": "2.0",
  "method": "tools/list",
  "params": {},
  "id": 1
}

Ответ.

{
  "jsonrpc": "2.0",
  "result": {
    "tools": [
      {
        "name": "get_incident_details_by_id",
        "description": "Get detailed information about an incident by its ID",
        "inputSchema": {
          "type": "object",
          "properties": {
            "incident_id": {
              "type": "string",
              "description": "The unique identifier of the incident"
            }
          },
          "required": ["incident_id"]
        }
      },
      {
        "name": "get_incident_context",
        "description": "Get contextual information for an incident",
        "inputSchema": {
          "type": "object",
          "properties": {
            "incident_id": {
              "type": "string",
              "description": "The unique identifier of the incident"
            }
          },
          "required": ["incident_id"]
        }
      }
    ]
  },
  "id": 1
}

2. Вызов конкретных инструментов

Чтобы вызвать определенное средство, используйте tools/call метод:

Пример. Получение сведений об инциденте

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "get_incident_details_by_id",
    "arguments": {
      "incident_id": "12345678"
    }
  },
  "id": 1
}

Ответ.

{
  "jsonrpc": "2.0",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"id\": \"12345678\", \"title\": \"Service degradation in West US\", \"severity\": \"Sev2\", \"status\": \"Active\", \"createDate\": \"2024-01-15T10:30:00Z\", \"description\": \"Users experiencing slow response times\", \"owningTeam\": \"ServiceTeam\", \"impactedServices\": [\"WebApp\", \"API\"]}"
      }
    ]
  },
  "id": 1
}

Пример. Получение анализа влияния клиента

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "get_impacted_s500_customers",
    "arguments": {
      "incident_id": "12345678"
    }
  },
  "id": 1
}

Пример: поиск инцидентов по команде

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "search_incidents_by_owning_team_id",
    "arguments": {
      "team_id": "team-123",
      "status": "Active",
      "max_results": 50
    }
  },
  "id": 1
}

Пример. Получение сводки по ИИ

{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "get_ai_summary",
    "arguments": {
      "incident_id": "12345678",
      "include_mitigation": true
    }
  },
  "id": 1
}

Использование Power Automate

Настройка действия

  1. Добавьте действие "Invoke MCP Server" в поток
  2. Задайте для поля метода одно из следующих значений:
    • tools/list — для обнаружения доступных средств
    • tools/call — для выполнения определенного средства
  3. Настройка объекта params на основе выбранного метода

Пример потока: автоматизированный анализ инцидентов

1. Trigger: When an incident is created
2. Action: Invoke MCP Server
   - method: "tools/call"
   - params: {
       "name": "get_incident_details_by_id",
       "arguments": {"incident_id": "@{triggerBody()['incident_id']}"}
     }
3. Action: Invoke MCP Server  
   - method: "tools/call"
   - params: {
       "name": "get_ai_summary", 
       "arguments": {"incident_id": "@{triggerBody()['incident_id']}"}
     }
4. Action: Send notification with incident details and AI summary

Пример потока: оценка влияния клиента

1. Trigger: Manual trigger with incident ID
2. Action: Invoke MCP Server (Get S500 Customers)
   - method: "tools/call"
   - params: {
       "name": "get_impacted_s500_customers",
       "arguments": {"incident_id": "@{triggerBody()['incident_id']}"}
     }
3. Action: Invoke MCP Server (Get ACE Customers)
   - method: "tools/call" 
   - params: {
       "name": "get_impacted_ace_customers",
       "arguments": {"incident_id": "@{triggerBody()['incident_id']}"}
     }
4. Action: Create comprehensive impact report

Распространенные варианты использования

1. Комплексный анализ инцидентов

Объединение нескольких инструментов для получения полной картины:

  • get_incident_details_by_id — Основные сведения об инциденте
  • get_incident_context — связанный контекст и данные
  • get_ai_summary — анализ на основе ИИ
  • get_similar_incidents — Исторические шаблоны
  • get_mitigation_hints — предлагаемые действия

2. Оценка влияния клиента

Оцените полную область влияния клиента:

  • get_impacted_s500_customers — Корпоративные клиенты
  • get_impacted_ace_customers — клиенты ACE
  • get_impacted_azure_priority0_customers — Приоритет 0 клиентов
  • get_impacted_subscription_count — Общее влияние на подписку

3. Координация команд

Координация усилий по реагированию между командами:

  • get_teams_by_name — Поиск соответствующих команд
  • get_on_call_schedule_by_team_id - Проверка того, кто звонит
  • get_contact_by_alias — получение контактных данных
  • search_incidents_by_owning_team_id — проверка рабочей нагрузки команды

4. Мониторинг работоспособности служб

Мониторинг и анализ работоспособности служб:

  • get_impacted_services_regions_clouds — затронутая инфраструктура
  • get_outage_high_priority_events - Критические события
  • get_services_by_names — Сведения о службе

Технические сведения

Поток запросов и ответов

  1. Power Automate отправляет JSON-RPC отформатированный запрос в соединитель
  2. Соединитель перенаправит запрос на сервер MCP с правильной проверкой подлинности
  3. Сервер MCP обрабатывает запрос и возвращает ответ JSON-RPC
  4. Соединитель обрабатывает события Server-Sent (SSE) при наличии и преобразовании в JSON
  5. Ответ возвращается в Power Automate в стандартном формате JSON

Обработка ошибок

Соединитель обрабатывает различные сценарии ошибок:

  • Недопустимые имена инструментов
  • Отсутствующие обязательные аргументы
  • Сбой при аутентификации
  • Недоступность сервера

Ограничения скорости

Соединитель реализует ограничение скорости 100 вызовов за 60-секундный период на подключение, чтобы обеспечить справедливое использование системы ICM.

Расширенное использование

Динамическое обнаружение инструментов

Используйте tools/list в начале потоков динамическое обнаружение доступных средств и их схем. Это гарантирует, что потоки работают даже при добавлении новых инструментов.

Сложные рабочие процессы

Цепочка нескольких инструментов объединяет вызовы для создания сложных рабочих процессов управления инцидентами, которые используют полную мощность экосистемы MCP.

Тестирование

Быстрый тест: средства списка

  1. Создание нового потока с помощью действия "Вызов сервера MCP"
  2. Задайте для метода значение tools/list
  3. Оставьте парамс пустыми: {}
  4. Запустите поток, чтобы просмотреть все доступные средства

Тест: получение сведений об инциденте

  1. Использование метода tools/call
  2. Задайте для параметра параметр:
    {
      "name": "get_incident_details_by_id",
      "arguments": {
        "incident_id": "your-test-incident-id"
      }
    }
    
  3. Проверка ответа содержит сведения об инциденте

Растущий набор инструментов

Экосистема инструментов MCP постоянно расширяется. Новые средства регулярно добавляются для улучшения возможностей управления инцидентами. tools/list Используйте метод, чтобы оставаться в курсе новых доступных инструментов и их возможностей.

Поддержка

  • Проблемы с соединителем: обратитесь к группе Power Platform
  • Для вопросов, относящихся к ICM: Контакт icmsupport@microsoft.com
  • Общие сведения о поддержке Power Platform: посетите сообщество Microsoft Power Platform

Ограничения регулирования

Имя Вызовы Период обновления
Вызовы API для каждого подключения 100 60 секунд

Действия

ICM MCP

Прямое вызов операций сервера ICM MCP

Поиск инцидентов путем владения идентификатором команды

Это средство ищет инциденты путем владения идентификатором команды.

Получение влияния на клиентов "Приоритет Azure 0" или "Жизнь и безопасность"

Получите затронутые клиенты "Приоритет Azure 0" или "Жизнь и безопасность" для данного инцидента или сбоя.

Получение запросов на поддержку и запросов в службу поддержки (SR) и SevA (CritSit)

Получение запросов на поддержку и запросов в службу поддержки (SR) и SevA (CritSit), связанных с данным инцидентом или сбоем.

Получение затронутого количества подписок

Получение затронутого количества подписок для данного инцидента или сбоя.

Получение затронутых клиентов ACE

Получение затронутых клиентов ACE для данного инцидента или сбоя.

Получение затронутых клиентов S500

Получение затронутых клиентов S500 для данного инцидента или сбоя.

Получение затронутых служб, регионов и облаков

Получение затронутых служб, регионов и облаков для данного инцидента или сбоя.

Получение затронутых событий высокого приоритета

Получение затронутых событий высокого приоритета для данного инцидента или сбоя.

Получение контактных данных по идентификатору контакта

Получение контактных данных по идентификатору контакта.

Получение контактных данных по псевдониму контакта

Получение контактных данных по псевдониму контакта.

Получение подсказок по устранению рисков для заданного идентификатора инцидента

Получение подсказок по устранению рисков для заданного идентификатора инцидента.

Получение расписания по вызову для команды

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

Получение сведений о команде по идентификатору команды

Получение сведений о команде по идентификатору команды.

Получение сведений о команде по имени команды

Получение сведений о команде по имени команды.

Получение сведений о команде по общедоступному идентификатору команды

Получение сведений о команде по общедоступному идентификатору. Общедоступный идентификатор выглядит как TenantName\TeamName

Получение сведений о расположении инцидента

Получение сведений о расположении инцидента и (или) сбоя, включая регион, зону доступности, центр обработки данных, кластер, узел и псевдоним руки региона.

Получение сведений о службах по списку имен

Получение сведений о службах по списку имен.

Получение сведений об инциденте по идентификатору

Получение сведений об инциденте по идентификатору.

Получение сводки об инциденте и сбое

Получите сводку об инциденте и (или) сбой и только для сводки.

Получение списка аналогичных инцидентов

Получите список аналогичных инцидентов для заданного идентификатора инцидента.

Предоставление общего влияния на указанный инцидент

Предоставление общего влияния на указанный инцидент или сбой.

Проверьте, влияет ли конкретный клиент

Проверьте, находится ли конкретный клиент в затронутом списке клиентов идентификатором инцидента или сбоя. Примечание. Даже если результат является ложным, не означает, что клиент не влияет. Попросите пользователя проверить другие метрики влияния, такие как запросы на поддержку, Sev A (CritSit) и т. д.

Укажите все подробные сведения о контексте

Укажите все подробные сведения о контексте, все исходные метаданные для инцидента и сбоя

ICM MCP

Прямое вызов операций сервера ICM MCP

Поиск инцидентов путем владения идентификатором команды

Это средство ищет инциденты путем владения идентификатором команды.

Параметры

Имя Ключ Обязательно Тип Описание
teamId
teamId True string

Идентификатор команды

Получение влияния на клиентов "Приоритет Azure 0" или "Жизнь и безопасность"

Получите затронутые клиенты "Приоритет Azure 0" или "Жизнь и безопасность" для данного инцидента или сбоя.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение запросов на поддержку и запросов в службу поддержки (SR) и SevA (CritSit)

Получение запросов на поддержку и запросов в службу поддержки (SR) и SevA (CritSit), связанных с данным инцидентом или сбоем.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение затронутого количества подписок

Получение затронутого количества подписок для данного инцидента или сбоя.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение затронутых клиентов ACE

Получение затронутых клиентов ACE для данного инцидента или сбоя.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение затронутых клиентов S500

Получение затронутых клиентов S500 для данного инцидента или сбоя.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение затронутых служб, регионов и облаков

Получение затронутых служб, регионов и облаков для данного инцидента или сбоя.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение затронутых событий высокого приоритета

Получение затронутых событий высокого приоритета для данного инцидента или сбоя.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение контактных данных по идентификатору контакта

Получение контактных данных по идентификатору контакта.

Параметры

Имя Ключ Обязательно Тип Описание
contactId
contactId True string

Идентификатор контакта

Получение контактных данных по псевдониму контакта

Получение контактных данных по псевдониму контакта.

Параметры

Имя Ключ Обязательно Тип Описание
alias
alias True string

Псевдоним контакта

Получение подсказок по устранению рисков для заданного идентификатора инцидента

Получение подсказок по устранению рисков для заданного идентификатора инцидента.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение расписания по вызову для команды

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

Параметры

Имя Ключ Обязательно Тип Описание
TeamIds
teamIds True string

Идентификаторы команды

Получение сведений о команде по идентификатору команды

Получение сведений о команде по идентификатору команды.

Параметры

Имя Ключ Обязательно Тип Описание
teamId
teamId True string

Идентификатор команды

Получение сведений о команде по имени команды

Получение сведений о команде по имени команды.

Параметры

Имя Ключ Обязательно Тип Описание
teamName
teamName True string

Имя команды

Получение сведений о команде по общедоступному идентификатору команды

Получение сведений о команде по общедоступному идентификатору. Общедоступный идентификатор выглядит как TenantName\TeamName

Параметры

Имя Ключ Обязательно Тип Описание
publicId
publicId True string

Общедоступный идентификатор команды

Получение сведений о расположении инцидента

Получение сведений о расположении инцидента и (или) сбоя, включая регион, зону доступности, центр обработки данных, кластер, узел и псевдоним руки региона.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение сведений о службах по списку имен

Получение сведений о службах по списку имен.

Параметры

Имя Ключ Обязательно Тип Описание
names
names True string

Имена служб

Получение сведений об инциденте по идентификатору

Получение сведений об инциденте по идентификатору.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение сводки об инциденте и сбое

Получите сводку об инциденте и (или) сбой и только для сводки.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Получение списка аналогичных инцидентов

Получите список аналогичных инцидентов для заданного идентификатора инцидента.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Предоставление общего влияния на указанный инцидент

Предоставление общего влияния на указанный инцидент или сбой.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

Проверьте, влияет ли конкретный клиент

Проверьте, находится ли конкретный клиент в затронутом списке клиентов идентификатором инцидента или сбоя. Примечание. Даже если результат является ложным, не означает, что клиент не влияет. Попросите пользователя проверить другие метрики влияния, такие как запросы на поддержку, Sev A (CritSit) и т. д.

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента

ИмяКлиента
customerName True string

Имя клиента

Укажите все подробные сведения о контексте

Укажите все подробные сведения о контексте, все исходные метаданные для инцидента и сбоя

Параметры

Имя Ключ Обязательно Тип Описание
incidentId
incidentId True string

Идентификатор инцидента