본문으로 건너뛰기

MCP (실시간 데이터 게이트웨이)

연결 상태를 보는 자리

AI 관리 콘솔 › MCP 게이트웨이 › 서버 에 PlantPulse Platform 줄(종류 «플랫폼»)이 있습니다. 거기서 상태 · 도구 수 · 마지막 발견을 보고 재발견으로 도구 목록을 다시 받습니다. 이 줄은 설치 env 의 PP_API_URL · PP_API_TOKEN 으로 붙으므로 화면에서 이름 · 주소를 고치거나 지울 수 없고(끄기만 됩니다), 플랫폼 도구는 처음부터 전부 켜져 있습니다 → MCP 게이트웨이

2026.10 재릴리즈(2026-10-20) 전에는 이 줄이 코파일럿 관리 콘솔의 도구 서버(MCP)(/admin/mcp)에 있었습니다. 그 화면은 없어졌습니다.

개요​

PlantPulse 통합 MCP는 PlantPulse IIoT 플랫폼의 모든 실시간 데이터를 AI가 접근할 수 있도록 하는 MCP(Model Context Protocol) 데이터 게이트웨이입니다.

읽기 전용 데이터 도구를 통해 공장 계층 구조, 센서 데이터, 알람, OEE, 작업지시, 에너지, 시스템 상태 등 공장 운영의 모든 데이터를 AI에게 제공합니다. 온톨로지(지식 그래프) 도구도 이 통합 MCP에 포함됩니다.

정보

MCP(Model Context Protocol)는 Anthropic이 제안한 AI 모델과 데이터 소스 간의 표준 연동 프로토콜입니다.

경고

2026-07 개편: 통합 MCP는 이제 PlantPulse 플랫폼 server-web의 엔드포인트 /api/v5/mcp(api_key 인증)로 제공됩니다. 구 독립 서비스였던 plantpulse-mcp-server(:50000)와 plantpulse-ontology(:8888)는 아카이브되었고, 온톨로지 도구는 통합 MCP에 흡수되었습니다. MCP 게이트웨이가 tools/list로 도구를 동적 발견해 코파일럿(묻기)에 넘깁니다(2026.10 재릴리즈(2026-10-20) — 그 전에는 코파일럿이 직접 발견했습니다).


다룰 수 있는 데이터​

공장 구조​

사이트 → 구역 → 라인 → 설비 → 태그 계층 전체를 조회합니다. 계층만 필요하면 자산 트리, 구성 개요와 태그 개수까지 필요하면 온톨로지, 영향 전파는 관계 그래프로 나뉩니다.

이름으로 물을 때는 search_domains 가 먼저 ID 를 찾아 줍니다 — 사이트·설비·태그·오더·사용자 등 14개 도메인을 이름·ID·설명 부분일치로 검색합니다.

실시간 값과 이력​

  • 태그 현재값 일괄 조회 (한 번에 최대 100개)
  • 태그 기간 이력
  • 설비의 전 태그 스냅샷 — 태그를 하나씩 지정하지 않고 설비 단위로 현재 상태를 받습니다

알람​

  • 알람 목록 조회 (기간·심각도 필터)
  • 알람 원인 진단 번들 — 알람 하나를 두고 관련 태그·상태 변화를 묶어서 받습니다
  • 알람 확인 처리 — 도구는 있지만 채팅에서는 실행되지 않습니다(아래 「승인 게이트」)

생산 지표 (OEE / RAM / EMS)​

설비를 축으로 조회합니다.

필요한 것도구
오더마다 한 줄씩 (어느 오더가 문제였나)get_asset_kpi
기간 전체를 한 줄로 (이번 주 어땠나)get_asset_stats
오더 하나의 상세get_order_metrics
비율은 0~1 로 돌아옵니다

OEE 같은 비율값은 백분율이 아니라 0~1 범위입니다. 화면에 85% 로 보이는 값이 도구 응답에서는 0.85 입니다.

수집 상태​

엣지 게이트웨이 상태와 건강 이력, OPC 수집 연결 목록을 조회합니다. "데이터가 안 들어온다" 는 질문은 대개 여기서 답이 나옵니다.

설비 문서​

설비에 첨부된 문서 목록을 조회합니다. 문서 내용 검색은 MCP 가 아니라 RAG 담당입니다.


제공 도구 (22개)​

통합 MCP 가 제공하는 도구 전량입니다. 도구를 늘리거나 줄이면 플랫폼의 계약 테스트가 실패하므로, 이 목록이 곧 실제 목록입니다.

시간​

도구돌려주는 것
get_current_time서버 현재 시각 — 상대 시간("어제", "지난주")을 해석하는 기준

구조 — 무엇이 어디에 있나​

도구돌려주는 것
search_domains엔티티 검색 (이름 → ID 해소)
get_asset_tree자산 계층 트리
get_ontology사이트 온톨로지 개요 (구조 + 설비별 태그 개수)
query_ontology자산 관계 그래프 탐색 (영향 전파)
query_sparql온톨로지 SPARQL 질의
get_asset_documents설비 첨부 문서 목록
이름으로 물으면 먼저 search_domains

대부분의 도구는 ID 를 받습니다. 사용자는 "대전 3라인 주입기" 처럼 이름으로 말하므로, AI 는 search_domains 로 ID 를 해소한 뒤 본 도구를 호출합니다. 답이 "설비를 찾을 수 없다" 로 돌아온다면 대개 이름이 플랫폼 등록명과 다른 경우입니다.

연결 — 수집이 살아 있나​

도구돌려주는 것
get_edge_status엣지 게이트웨이 상태
get_edge_health_history엣지 건강 이력 (일자별 구간)
list_connectionsOPC 수집 연결 목록

데이터 — 태그​

도구돌려주는 것
get_tag_values태그 현재값
get_tag_history태그 기간 이력

데이터 — 알람​

도구돌려주는 것
list_alarms알람 목록
get_alarm_context알람 원인 진단 번들
ack_alarm알람 확인 처리

데이터 — 설비​

도구돌려주는 것
get_asset_snapshot설비 전 태그 스냅샷
get_asset_timeline설비 이벤트 타임라인
get_asset_stats설비 기간 비즈니스 통계

생산​

도구돌려주는 것
list_orders워크오더 목록
get_order_metrics워크오더 상세·KPI
get_asset_kpi설비 오더별 KPI (OEE / EMS / RAM)

롤업​

도구돌려주는 것
get_health자산 계층 건강 롤업
읽기 전용이 아닌 도구가 하나 있습니다

22개 중 ack_alarm 만 플랫폼 상태를 바꿉니다 — 알람을 확인 처리합니다. 나머지 21개는 전부 읽기 전용입니다. 설비를 제어하거나 설정을 바꾸는 도구는 없습니다.

승인 게이트 — 상태를 바꾸는 도구는 채팅에서 돌지 않습니다​

코파일럿은 AI 가 부르는 도구를 조회 도구와 변경 도구로 가릅니다. 플랫폼 통합 MCP 는 도구마다 「조회 전용인가」를 스스로 알려 주고, ack_alarm 은 변경 도구로 알려 옵니다.

변경 도구는 승인 없이는 실행하지 않습니다(기본값). 그런데 묻기에는 이런 도구를 그 자리에서 승인하는 단추가 없습니다. 그래서 채팅에서 「이 알람 확인해줘」라고 해도 알람은 확인 처리되지 않고:

  • 답 위 도구 줄(「도구 N개 사용 · N초」)을 펼치면 그 호출이 실패로 남고
  • AI 는 「이 도구는 채팅에서 바로 실행할 수 없습니다 … 제안 화면에서 그 이상 접수를 열고 조치 단추로 실행하세요」 라는 거부를 받아 그대로 안내합니다.

알람 · 이상 접수 조치는 제안의 이상 접수 상세에서 사람이 누르는 길이 따로 있습니다. 이 게이트와는 별개입니다. 묻기 답 밑의 행동 카드(다른 시스템에 초안 하나)도 이 게이트와는 다른 길입니다 → 묻기 — 행동 카드

설정뜻기본값
copilot.agent.tools.approval.enabled (CO_AGENT_TOOL_APPROVAL_ENABLED)변경 도구 승인 게이트true
copilot.agent.tools.readonly (CO_AGENT_TOOLS_READONLY)스스로 알려 주지 않는 도구를 조회 도구로 볼 이름 목록(글롭)get_* · list_* · search_* 등 조회 동사
도구 호출은 전부 기록됩니다

게이트를 꺼도 모든 도구 호출은 원장(agent_tool_call_log)에 남습니다 — 누가 · 언제 · 어떤 도구를 · 어떤 인자로(비밀값은 가림) · 결과(성공 · 오류 · 거부). 이 기록은 끌 수 없습니다 → 데이터베이스 모델


주요 설정​

통합 MCP는 플랫폼 server-web에서 제공되므로 코파일럿(copliot-web)은 클라이언트 측 접속 설정만 관리합니다.

항목설명기본값
platform.api.url (CO_PLATFORM_API_URL)플랫폼 server-web 베이스 URL — 통합 MCP 도 여기로(설치 시 설정)
platform.api.token (CO_PLATFORM_API_TOKEN)플랫폼 api_key 인증 토큰(설치 시 설정)
mcp.tools.enabled (CO_MCP_TOOLS_ENABLED)통합 MCP 도구 사용 여부true

옛 이름 mcp.api.url · mcp.api.token 은 없습니다 — 그 이름으로 주면 아무 일도 일어나지 않습니다. URL 이나 토큰이 비어 있으면 채팅에서 플랫폼 도구가 빠집니다.

환경변수 접두사는 2026.10 에서 CH_ → CO_ 로 바뀌었습니다. 옛 CH_* 이름은 읽지 않습니다 → 환경 설정

정보

엔드포인트는 <platform.api.url>/api/v5/mcp이며, JSON-RPC 2.0(tools/list·tools/call) 방식으로 통신합니다. 페이지네이션·알람 조회 기간 등 서버 측 정책은 플랫폼 server-web 설정을 따릅니다.


특징​

완전한 데이터 커버리지​

공장 운영에 필요한 모든 데이터 도메인을 단일 MCP로 제공합니다. 센서 raw 데이터부터 KPI 집계까지 계층별 조회가 가능합니다.

좁은 쓰기 범위​

데이터 조회 도구는 전부 읽기 전용이고, 상태를 바꾸는 것은 알람 확인(ack_alarm) 하나뿐입니다. 설비 제어나 설정 변경 수단이 아예 없으므로, AI 가 공정에 개입할 위험 없이 연동할 수 있습니다.

MCP 표준 프로토콜​

Anthropic MCP 표준을 준수합니다. JSON-RPC 2.0 기반 HTTP POST 통신, JSON Schema 기반 입력 검증을 지원합니다.

서버 시간대 기준​

시간은 플랫폼 서버의 시간대로 해석합니다. get_current_time 이 그 시간대 이름(예: Asia/Seoul)을 함께 돌려주고, _iso 접미사 필드로 사람이 읽기 쉬운 시간 형식을 제공합니다.