간단한 질문으로 작업하기확인하기
가끔 저녁 준비가 여러 복잡한일 될 수 있습니다. 볶음 요리를 하고, 파스타를 삶고, 샐러드를 준비하느라 바쁠 때, “양파를 썰어줘”라고 말하면 알아서 해결되길 바라는 것처럼. 작업 간 전환도 없고, 단계를 찾아볼 필요도 없어야 합니다. 그저 의도를 말하면 실행되는 거죠.
저희는 사이트, 사용자, 토폴로지, 실시간 데이터를 포함한 환경과 상호작용할 때도 이와 동일한 수준의 단순함으로 처리되기를 원했습니다. 이러한 이유로 Cato의 모델 컨텍스트 프로토콜(MCP) 서버를 구축했습니다.
많은 운영 환경에서 팀들은 스크립트나 API 호출을 사용하여 Cato를 자신들의 스택에 있는 다른 시스템과 통합합니다. 성능이 저하된 상태의 사이트를 확인하는 것과 같은 기본적인 작업조차도 여러 작업 단계나 사용자 정의 로직, 다양한 소스의 데이터 결합이 필요할 수 있습니다. MCP는 이러한 복잡성을 줄여 줍니다. “현재 성능이 저하된 상태의 사이트는 어디야?” 같은 직접적인 질문을 하면 명확하고 구조화된 응답을 받을 수 있습니다. 이를 통해 일상적인 점검을 자동화하고 Cato의 인사이트를 더 광범위한 워크플로에 통합하기가 더 쉬워집니다.
MCP를 사용하면 자체 MCP 인식 클라이언트를 사용하여 Cato의 CMA에서 계정과 상호작용할 수 있습니다. Claude Desktop이나 Cursor IDE 같은 기존 도구를 사용하거나, 팀에서 직접 개발한 맞춤형 에이전트를 활용할 수 있습니다. 또한 Cato를 포함한 여러 MCP 서버가 함께 작동하는 새로운 업무 방식을 가능하게 합니다. 예를 들어, LLM이 Cato MCP 서버에서 데이터를 검색하고, SIEM MCP 서버의 결과와 결합하여, 이미 사용 중인 도구 내에서 통합된 응답으로 반환할 수 있습니다.
이것이 중요한 이유
MCP는 자연어를 사용하여 운영 데이터에 액세스하는 새로운 방법을 제공합니다. 팀이 직접적인 질문을 하고 구조화되고 신뢰할 수 있는 답변을 받을 수 있게 하여, 인사이트를 얻고 일상적인 쿼리를 자동화하기 더 쉽게 만듭니다. 주요 이점은 다음과 같습니다.
- 더 빠른 문제 해결: 운영에 관한 질문을 하고 즉각적이고 구조화된 응답을 받을 수 있습니다.
- 유연한 통합: Claude, ChatGPT, 사용자 정의 에이전트를 포함한 모든 MCP 호환 클라이언트와 호환됩니다.
- 설계상 보안: 정의된 도구 세트만 노출하여 액세스 범위를 엄격하게 지정하고 제어합니다.
구축 방법: Cato의 MCP 구현
Cato MCP는 로컬에서 실행되는 독립형 Docker 컨테이너로 제공되며, Cato의 공개 GraphQL API 일부를 도구 형태로 사용할 수 있습니다. Cato 계정에 연결되며 MCP 사양을 지원하는 모든 AI 에이전트와 페어링할 수 있습니다. Cato의 MCP는 현재 Cato를 이용하는 고객님들께 제공되며, 전체 배포 지침은 여기에서 확인할 수 있습니다. 실습 가이드에 관심이 있는 고객 및 파트너는 여기에서 활성화 교육을 받을 수 있습니다.
시작에 필요한 것들:
- 구성: CMA 호스트, 계정 ID, API 키를 제공하세요.
- 호환성: 제공된 MCP 서버는 Claude Sonnet 3.7 모델을 사용하는 Cursor 및 Claude Desktop과 같은 인기 있는 MCP 클라이언트(유료 버전)와의 호환성을 테스트했으며, 이러한 클라이언트와 함께 사용하는 것을 권장합니다.
- 제공되는 도구: 출시 시점에는 Cato에서 가장 많이 사용되는 두 GraphQL 쿼리를 활용한 질문을 지원하는 여러 도구를 제공합니다.
- AccountSnapshot은 계정의 상태를 거의 실시간으로 스냅샷 형태로 보여주며, 토폴로지 페이지에서 제공하는 분석과 유사한 데이터를 제공합니다.
- EntityLookup은 특정 유형의 엔티티를 검색할 수 있게 하며, 필터링 및 페이지네이션을 지원합니다.
내부적으로 MCP 서버는 지원되는 쿼리를 도구로 변환하고, 연결된 AI 에이전트가 호출할 수 있는 함수로 제공합니다. 현재는 작고 잘 정의된 도구들로 시작하지만, 향후 더 많은 기능을 제공할 계획입니다.
활용 가능한 질문들 – 실제 사례
Cato의 MCP를 사용하면 스크립트를 작성하거나 대시보드를 탐색하지 않고도 AI 에이전트를 통해 직접 운영에 관련된 질문을 할 수 있습니다. 다음은 MCP 서버에 연결된 Claude 기반 에이전트를 사용하여 시연하는 질문의 예입니다. Claude는 체계적인 답변과 시각적 자료를 함께 제공하여 쉽게 결과를 이해할 수 있습니다.
다음 영상에서 다음 질문들에 대한 응답을 확인할 수 있습니다.
· 현재 가장 많은 원격 사용자가 연결된 국가 또는 PoP는 어디야?
· 현재 마지막 수단 링크를 통해서만 연결된 사이트는 어디야?
· 현재 단일 WAN 포트만 활성화된 사이트는 어디야?
다음 영상에서는 다음과 같은 추가 질문을 확인할 수 있습니다.
• 연결된 모든 원격 사용자 목록을 OS 및 클라이언트 버전별로 그룹화하여 제공해 줘.
• 아직 구형 클라이언트 버전을 실행 중인 원격 사용자는 누구야?
• 소켓 업그레이드가 필요한 사이트는 어디야?
다음 영상에서는 다음과 같은 추가 질문에 대한 응답도 확인할 수 있습니다.
• IPsec, Socket, vSocket별로 그룹화된 모든 사이트를 보여줘.
• 현재 가장 많은 사이트가 연결된 국가 또는 PoP는 어디야?
보안 권장사항
MCP를 통해 AI가 실제 운영 데이터에 접근할 수 있도록 제어하는 기능을 제공하므로, 다른 민감한 인터페이스와 같은 수준의 보안 관리가 필요합니다. 이전 게시물에서 MCP가 잠재적으로 악용될 가능성에 관해 설명해 드렸습니다. 안전한 사용을 위한 권장사항은 다음과 같습니다.
- 컨테이너에 대한 액세스 제한: 제한된 네트워크 컨텍스트에서 실행하세요. 로컬 전용이 이상적입니다.
- CMA API 키를 정기적으로 교체: Cato에서 발급한 API 키를 다른 자격 증명과 같이 취급하세요. MCP 전용 키를 사용하고 특히 공유 또는 자동화된 환경에서는 주기적으로 교체하세요.
- 공식적이고 사전 구성된 도구만 사용: Cato MCP는 기본적으로 제한되고 검증된 도구 세트만을 제공합니다. 명시적으로 지원되지 않는 한 도구 세트를 수정하거나 확장하지 마세요.
- 사용량 모니터링: 관찰 기능을 추가할 예정이지만, 현재로서는 AI 에이전트에서 지원하는 경우, 해당 기능을 통해 쿼리를 추적하세요.
다음 단계
MCP는 고객과 고객의 환경이 상호작용하는 방식을 단순화하기 위해 구축되었습니다. 대시보드를 탐색하거나 API 호출을 작성하는 대신, AI 에이전트가 자연어를 사용하여 Cato 배포를 쿼리할 수 있게 합니다. 첫 번째 출시에는 사이트 상태, 사용자 세션, 엔티티 조회를 위한 제한된 도구 세트가 포함됩니다. 프레임워크는 확장 가능하도록 설계되었으며, 시간이 지남에 따라 도구 범위와 통합을 확장할 계획입니다. 저희의 목표는 AI 기반 운영을 더욱 접근하기 쉽고, 일관되며, 안전하게 만드는 것입니다.