ICM MCP
ICM MCP를 사용하면 Microsoft 내부 MCS 에이전트가 ICM 티켓과 상호 작용할 수 있습니다. 인시던트 세부 정보부터 편집 및 전송에 이르는 표준 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) |
| 연락처 | |
|---|---|
| 이름 | Agent365 Microsoft.com |
| URL |
Microsoft Power Automate 지원 Microsoft Power Apps 지원 |
| 전자 메일 | robsanto@microsoft.com |
| 커넥터 메타데이터 | |
|---|---|
| Publisher | 마이크로소프트 |
| 웹 사이트 | https://eng.ms/docs/products/icm/onboarding/introduction |
| 개인 정보 보호 정책 | https://privacy.microsoft.com/en-US/privacystatement |
| 카테고리 | AI; 생산력 |
ICM MCP 도구 커넥터
개요
ICM MCP 도구 커넥터는 MCP(모델 컨텍스트 프로토콜) 인터페이스를 통해 Microsoft의 ICM(인시던트 관리) 시스템에 대한 액세스를 제공합니다. 이 커넥터를 사용하면 Power Automate 및 Power Apps가 AI 기반 도구 및 포괄적인 인시던트 분석 기능을 사용하여 인시던트 관리를 위해 ICM과 상호 작용할 수 있습니다.
이 커넥터는 MCP 서버에 직접 액세스하여 증가하는 강력한 인시던트 관리 도구 집합을 활용할 수 있도록 합니다.
사전 요구 사항
- 유효한 Microsoft 회사 자격 증명
- ICM 시스템에 대한 액세스
- 수행하려는 작업에 대한 적절한 권한
인증
커넥터는 Azure Active Directory에서 OAuth 2.0 인증을 사용합니다. 연결을 만들 때 Microsoft 회사 자격 증명으로 로그인하라는 메시지가 표시됩니다.
사용 가능한 작업
MCP 서버 호출
커넥터는 모든 MCP 도구에 대한 액세스를 제공하는 강력한 단일 작업을 제공합니다.
-
MCP 서버 호출: 지원 및
tools/call메서드를 사용하여 MCP 서버에 직접tools/list액세스
사용 가능한 MCP 도구
커넥터는 현재 다음 도구를 지원합니다(이 목록은 계속 증가합니다.)
인시던트 분석
-
get_incident_details_by_id- 특정 인시던트에 대한 자세한 정보 검색 -
get_incident_context- 인시던트에 대한 상황별 정보 및 관련 데이터 가져오기 -
get_incident_location- 인시던트에 대한 위치 정보 가져오기 -
get_incident_customer_impact- 인시던트의 고객 영향 분석 -
get_similar_incidents- 패턴 분석을 위해 유사한 인시던트 찾기 -
get_ai_summary- 인시던트 정보의 AI 생성 요약 가져오기 -
get_mitigation_hints- 제안된 완화 전략 가져오기
고객 영향 분석
-
get_impacted_s500_customers- 영향을 받는 S500 고객 목록 가져오기 -
get_impacted_ace_customers- 영향을 받는 ACE 고객 목록 가져오기 -
get_impacted_azure_priority0_customers- 영향을 받는 Azure 우선 순위 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- 공용 ID로 팀 찾기 -
get_teams_by_name- 이름으로 팀 찾기 -
get_team_by_id- ID로 팀 정보 가져오기 -
get_contact_by_alias- 별칭으로 연락처 정보 가져오기 -
get_contact_by_id- 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
}
예: AI 요약 가져오기
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "get_ai_summary",
"arguments": {
"incident_id": "12345678",
"include_mitigation": true
}
},
"id": 1
}
Power Automate 사용량
작업 설정
- 흐름에 "MCP 서버 호출" 작업 추가
-
메서드 필드를 다음 중 하나로 설정합니다.
-
tools/list- 사용 가능한 도구를 검색하려면 -
tools/call- 특정 도구를 실행하려면
-
- 선택한 메서드에 따라 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- AI 기반 분석 -
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- 서비스 세부 정보
기술 세부 정보
요청/응답 흐름
- Power Automate는 JSON-RPC 형식의 요청을 커넥터에 보냅니다.
- 커넥터가 적절한 인증을 사용하여 MCP 서버에 요청을 전달합니다.
- MCP 서버는 요청을 처리하고 JSON-RPC 응답을 반환합니다.
- 커넥터가 있는 경우 Server-Sent 이벤트(SSE)를 처리하고 JSON으로 변환합니다.
- 응답이 표준 JSON 형식으로 Power Automate로 반환됩니다.
오류 처리
커넥터는 다음과 같은 다양한 오류 시나리오를 처리합니다.
- 도구 이름이 잘못되었습니다.
- 필수 인수 누락
- 인증 실패
- 서버를 사용할 수 없음
속도 제한
커넥터는 ICM 시스템의 공정한 사용을 보장하기 위해 연결당 60초 기간당 100건의 호출 속도 제한을 구현합니다.
고급 사용량
동적 도구 검색
흐름의 시작 부분에서 사용 가능한 도구 및 해당 스키마를 동적으로 검색하는 데 사용합니다 tools/list . 이렇게 하면 새 도구가 추가되는 경우에도 흐름이 작동합니다.
복잡한 워크플로
여러 도구 호출을 함께 연결하여 MCP 에코시스템의 모든 기능을 활용하는 정교한 인시던트 관리 워크플로를 만듭니다.
Testing
빠른 테스트: 도구 나열
- "MCP 서버 호출" 작업을 사용하여 새 흐름 만들기
- 메서드를 다음으로 설정
tools/list - 매개 변수를 비워 둡니다.
{} - 흐름을 실행하여 사용 가능한 모든 도구 확인
테스트: 인시던트 세부 정보 가져오기
- Use 메서드
tools/call - 매개 변수를 다음으로 설정합니다.
{ "name": "get_incident_details_by_id", "arguments": { "incident_id": "your-test-incident-id" } } - 응답에 인시던트 정보가 포함되어 있는지 확인합니다.
증가하는 도구 집합
MCP 도구 에코시스템은 지속적으로 확장되고 있습니다. 인시던트 관리 기능을 향상시키기 위해 새로운 도구가 정기적으로 추가됩니다. 이 메서드를 tools/list 사용하여 새로 사용할 수 있는 도구 및 해당 기능을 계속 업데이트할 수 있습니다.
지원
- 커넥터 문제: Power Platform 팀에 문의
- ICM 관련 질문: 연락처 icmsupport@microsoft.com
- 일반 Power Platform 지원: Microsoft Power Platform 커뮤니티를 방문하세요.
제한 한도
| Name | 호출 | 갱신 기간 |
|---|---|---|
| 연결당 API 호출 | 100 | 60초 |
동작
| ICM MCP |
ICM MCP 서버 작업의 직접 호출 |
| ID별 인시던트 세부 정보 가져오기 |
ID별 인시던트 세부 정보를 가져옵니다. |
| 모든 자세한 컨텍스트 정보 제공 |
인시던트 및 중단에 대한 모든 자세한 컨텍스트 정보, 모든 원래 메타데이터 제공 |
| 연락처 ID로 연락처 세부 정보 가져오기 |
연락처 ID로 연락처 세부 정보를 가져옵니다. |
| 연락처 별칭을 사용하여 연락처 세부 정보 가져오기 |
연락처 별칭을 사용하여 연락처 세부 정보를 가져옵니다. |
| 영향을 받는 'Azure 우선 순위 0' 또는 '생명 및 안전' 고객 |
지정된 인시던트 또는 중단에 대한 'Azure 우선 순위 0' 또는 '생명 및 안전' 고객에게 영향을 받습니다. |
| 영향을 받는 ACE 고객 가져오기 |
지정된 인시던트 또는 중단에 대한 영향을 받는 ACE 고객을 가져옵니다. |
| 영향을 받는 S500 고객 가져오기 |
지정된 인시던트 또는 중단에 대한 영향을 받는 S500 고객을 가져옵니다. |
| 영향을 받는 구독 수 가져오기 |
지정된 인시던트 또는 중단에 대한 영향을 받는 구독 수를 가져옵니다. |
| 영향을 받는 높은 우선 순위 이벤트 가져오기 |
지정된 인시던트 또는 중단에 대한 높은 우선 순위 이벤트의 영향을 받습니다. |
| 영향을 받는 서비스, 지역 및 클라우드 가져오기 |
지정된 인시던트 또는 중단에 대해 영향을 받는 서비스, 지역 및 클라우드를 가져옵니다. |
| 유사한 인시던트 목록 가져오기 |
지정된 인시던트 ID에 대한 유사한 인시던트 목록을 가져옵니다. |
| 이름 목록으로 서비스 세부 정보 가져오기 |
이름 목록으로 서비스 세부 정보를 가져옵니다. |
| 인시던트 및 중단 요약 가져오기 |
인시던트 및/또는 중단 요약 및 요약만 가져옵니다. |
| 인시던트에 대한 위치 정보 가져오기 |
지역, 가용성 영역, 데이터 센터, 클러스터, 노드 및 지역 arm 별칭을 포함하여 인시던트 및/또는 중단의 위치 정보를 가져옵니다. |
|
지원 요청 및 SR(지원 티켓) 및 SevA(Crit |
지정된 인시던트/중단에 연결된 SR(지원 요청/지원 티켓) 및 SevA(CritSit)를 가져옵니다. |
| 지정된 인시던트 ID에 대한 완화 힌트 가져오기 |
지정된 인시던트 ID에 대한 완화 힌트를 가져옵니다. |
| 지정된 인시던트에 대한 전반적인 영향 제공 |
지정된 인시던트 또는 중단에 대한 전반적인 영향을 제공합니다. |
| 특정 고객에게 영향을 주는지 확인 |
특정 고객이 인시던트/중단 ID로 영향을 받는 고객 목록에 있는지 확인합니다. 참고: 결과가 false이더라도 고객에게 영향을 주지 않는다는 의미는 아닙니다. 지원 요청, Sev A(CritSit) 등과 같은 다른 영향 메트릭을 확인하도록 사용자에게 요청합니다. |
| 팀 ID로 팀 세부 정보 가져오기 |
팀 ID별로 팀 세부 정보를 가져옵니다. |
| 팀 공개 ID로 팀 세부 정보 가져오기 |
팀 공용 ID로 팀 세부 정보를 가져옵니다. 공용 ID는 TenantName\TeamName과 같습니다. |
| 팀 이름으로 팀 세부 정보 가져오기 |
팀 이름으로 팀 세부 정보를 가져옵니다. |
| 팀의 ID를 소유하여 인시던트 검색 |
이 도구는 팀의 ID를 소유하여 인시던트 검색 |
| 팀의 통화 일정 가져오기 |
팀 ID별로 팀의 통화 일정을 가져옵니다. |
ICM MCP
ICM MCP 서버 작업의 직접 호출
ID별 인시던트 세부 정보 가져오기
ID별 인시던트 세부 정보를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
모든 자세한 컨텍스트 정보 제공
인시던트 및 중단에 대한 모든 자세한 컨텍스트 정보, 모든 원래 메타데이터 제공
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
연락처 ID로 연락처 세부 정보 가져오기
연락처 ID로 연락처 세부 정보를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
contactId
|
contactId | True | string |
연락처 ID |
연락처 별칭을 사용하여 연락처 세부 정보 가져오기
연락처 별칭을 사용하여 연락처 세부 정보를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
별명
|
alias | True | string |
연락처 별칭 |
영향을 받는 'Azure 우선 순위 0' 또는 '생명 및 안전' 고객
지정된 인시던트 또는 중단에 대한 'Azure 우선 순위 0' 또는 '생명 및 안전' 고객에게 영향을 받습니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
영향을 받는 ACE 고객 가져오기
지정된 인시던트 또는 중단에 대한 영향을 받는 ACE 고객을 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
영향을 받는 S500 고객 가져오기
지정된 인시던트 또는 중단에 대한 영향을 받는 S500 고객을 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
영향을 받는 구독 수 가져오기
지정된 인시던트 또는 중단에 대한 영향을 받는 구독 수를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
영향을 받는 높은 우선 순위 이벤트 가져오기
지정된 인시던트 또는 중단에 대한 높은 우선 순위 이벤트의 영향을 받습니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
영향을 받는 서비스, 지역 및 클라우드 가져오기
지정된 인시던트 또는 중단에 대해 영향을 받는 서비스, 지역 및 클라우드를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
유사한 인시던트 목록 가져오기
지정된 인시던트 ID에 대한 유사한 인시던트 목록을 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
이름 목록으로 서비스 세부 정보 가져오기
이름 목록으로 서비스 세부 정보를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
names
|
names | True | string |
서비스 이름 |
인시던트 및 중단 요약 가져오기
인시던트 및/또는 중단 요약 및 요약만 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
인시던트에 대한 위치 정보 가져오기
지역, 가용성 영역, 데이터 센터, 클러스터, 노드 및 지역 arm 별칭을 포함하여 인시던트 및/또는 중단의 위치 정보를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
지원 요청 및 SR(지원 티켓) 및 SevA(CritSit) 가져오기
지정된 인시던트/중단에 연결된 SR(지원 요청/지원 티켓) 및 SevA(CritSit)를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
지정된 인시던트 ID에 대한 완화 힌트 가져오기
지정된 인시던트 ID에 대한 완화 힌트를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
지정된 인시던트에 대한 전반적인 영향 제공
지정된 인시던트 또는 중단에 대한 전반적인 영향을 제공합니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
특정 고객에게 영향을 주는지 확인
특정 고객이 인시던트/중단 ID로 영향을 받는 고객 목록에 있는지 확인합니다. 참고: 결과가 false이더라도 고객에게 영향을 주지 않는다는 의미는 아닙니다. 지원 요청, Sev A(CritSit) 등과 같은 다른 영향 메트릭을 확인하도록 사용자에게 요청합니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
incidentId
|
incidentId | True | string |
인시던트 ID |
|
고객 이름
|
customerName | True | string |
고객 이름 |
팀 ID로 팀 세부 정보 가져오기
팀 ID별로 팀 세부 정보를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
teamId
|
teamId | True | string |
팀 ID |
팀 공개 ID로 팀 세부 정보 가져오기
팀 공용 ID로 팀 세부 정보를 가져옵니다. 공용 ID는 TenantName\TeamName과 같습니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
publicId
|
publicId | True | string |
팀의 공용 ID |
팀 이름으로 팀 세부 정보 가져오기
팀 이름으로 팀 세부 정보를 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
teamName
|
teamName | True | string |
팀 이름 |
팀의 ID를 소유하여 인시던트 검색
이 도구는 팀의 ID를 소유하여 인시던트 검색
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
teamId
|
teamId | True | string |
팀 ID |
팀의 통화 일정 가져오기
팀 ID별로 팀의 통화 일정을 가져옵니다.
매개 변수
| Name | 키 | 필수 | 형식 | Description |
|---|---|---|---|---|
|
teamIds
|
teamIds | True | string |
팀 ID |