2026-08-01T18:29:02.613Z

AI 에이전트 관찰성 MCP 도구 변경: 발견 konverged 증명

6개의 사례에 대한 감사는 알림, 불완전한 페이지링 및 동일한 이름 스키마 파동 후 구석된 MCP 도구 레지스터를 탐지하는 방법을 보여줍니다.

MCP 도구를 사용하는 AI 에이전트는 프로세스가 활발하고 서버 연결이 열려 있거나 도구 목록 변경 알림을 받았기 때문에 건강하지 않습니다. 실질적인 검사는 더 엄격합니다. 관련 변경 후 클라이언트는 tools/list 의 신선한 통로를 완료하고, 페이지를 끝까지 따라가며, 그 레지스트리를 발견한 정확한 도구 정의로 대체했습니까? 이를 컨버전스 테스트로 간주해 보세요. 협상된 MCP 프로토콜 버전과 tools.listChanged 기능, 마지막 notifications/tools/list changed 시간, 발견 시작 및 완료 시간, 모든 커서 및 발견 및 설치된 레지스트리의 가논적 소화 기록을 기록하십시오. converged , stale , incomplete 또는 unverifiable 를 반환합니다. 실종된 증거를 녹색 결과로 바꾸지 마십시오. 프로토콜 경계에서 컨버전스를 정의 MCP의 라이프사이클 사양는 정상 작동 전에 초기화가 필요합니다. 클라이언트와 서버는 프로토콜 버전과 기능을 협상하고 양측 모두 협상을 존중해야 합니다. 성공적인 초기화는 합의된 계약에 따라 한 세션이 시작되었음을 증명합니다. 이후의 도구 변경이 클라이언트에 도달한 것은 증명되지 않습니다. MCP 도구 사양는 다음과 같은 조각을 공급합니다. 도구를 지원하는 서버는 tools 기능을 선언합니다. listChanged 는 도구 목록 변경 알림을 발행할지 여부를 알려줍니다. 고객들은 tools/list 를 통해 정의를 발견합니다. 발견은 nextCursor 를 통해 페이지화 될 수 있습니다. 도구 정의는 이름 이상의 내용을 포함하고 있으며, 특히 inputSchema 및 선택적 outputSchema , 해설 및 실행 메타데이터입니다. 이것은 모니터링이 무너지지 않아야 할 세 가지 개별적인 이벤트를 만듭니다. 1. 신호 변경: 클라이언트는 notifications/tools/list changed 를 수신합니다. 2. Discovery: 는 새로운 tools/list 경로를 시작하여 nextCursor 가 없는 또는 무효의 응답에 도달합니다. 3. Registry install: 클라이언트가 사용하는 정의는 완료된 발견 스냅샷과 일치합니다. 이 통보는 새로워질 것을 암시하는 것이고, 완성된 새로워질 것에 대한 영수증은 아닙니다. 첫 페이지는 활동입니다. 전체 레지스트리가 아닙니다. 일치하는 이름은 요구된 주장, 출력 스키마 또는 실행 속성이 변경될 때 일치하는 계약이 아닙니다. 증거 를 작지만 결정적 으로 유지 하십시오 유익한 건강 기록은 요청, 도구 논쟁, 자격증, 또는 도구 결과의 필요 없습니다. 클라이언트와 서버가 여전히 동의하는지 여부에 대한 충분한 안전한 메타데이터가 필요합니다. 현장 이 법은 무엇인지를 이 법이 정하지 않는 것은 protocolVersion 회의에 협상된 MCP 버전 나중에 나온 서버 버전이 호환성이 유지되었음을 tools.listChanged 변경 알림이 협상되었는지 여부는 모든 통보가 전달되거나 처리되었는지 notificationAt 새로움이 필요했습니다. 그 발견은 시작되었습니다. discoveryStartedAt 및 discoveryCompletedAt 신호에 따라 한정된 리프레쉬가 실행되었습니다. 모든 페이지를 가져왔다고 커서 체인 페이징이 빈틈 없이 끝났습니다. 클라이언트가 결과를 설치했다는 점 발견된 레지스트리 소화 완전한 정의 집합의 정체성 도구 호출이 성공할 것이라고 클라이언트 레지스트리 소화 클라이언트가 현재 에이전트에 노출하는 것의 정체성 에이전트가 올바른 선택을 할 것이라고 안정적인 투명에서 소화물을 구성하십시오: name , title , description , inputSchema , outputSchema , annotations , 그리고 execution . 이름에 따라 도구를 분류하고 해시하기 전에 둥근 JSON를 카노닉화하십시오. 장식적인 아이콘은 선택이나 실행에 영향을 미치지 않으면 배제될 수 있지만, 프로젝션 자체는 버전을 가져야 합니다. RFC 8785는 반복 가능한 해시링이 변함없는 JSON 시리즈화 및 재발성 속성 분류가 필요한 이유를 설명합니다. 이 실험에서 사용된 컴팩트 리커시브 소리터는 고정의 일반적인 JSON 값에 적합하며, 완전한 JCS 구현으로 제시되지 않습니다. 생산 코드는 검토된 카노닉화 라이브러리를 사용해야 하며, 특히 숫자의 가장자리 케이스나 서명이 중요할 때. 레지스트리 스냅샷에 무작위 비밀을 저장하지 마십시오. 도구 스키마는 인증 값이 아닌 논증 모양을 설명해야 합니다. 설명에 임차자 데이터 또는 내부 경로가 포함되어 있는 경우 수집하기 전에 편집하고 디제스트를 생성한 프로젝션 버전을 기록하십시오. 6건의 레지스트리 감사를 재현 보존된 장치에는 여섯 개의 합성 관찰이 사용됩니다. 2페이지의 완전한 기본 라인; 도구 제거 후 완전한 리프레쉬가 이루어집니다. 새로운 발견이 없음을 따르는 변경 알림; 나머지 nextCursor 를 가진 첫 번째 페이지 변경된 필수 입력 스키마와 같은 도구 이름; listChanged 를 광고하지 않은 서버, 제한된 업데이트 증거가 없습니다. 결정의 핵심 순서가 중요합니다. Node.js로 고정된 장치를 실행하세요: 정확한 재생이 돌아왔습니다. 반사례는 두 가지 녹색 사례보다 더 유용합니다. notification without refresh 는 동일한 발견과 클라이언트 소화가 있지만 그 발견은 변화 신호 전에 완료되었습니다. 오래된 스냅샷과 소화가 일치하는 것은 여전히 쓸모가 없습니다. unfinished pagination 은 또한 관찰된 한 페이지에 대한 일치하는 소화도 있지만, nextCursor 는 남아 있습니다. 믿을 수 있는 1페이지 일치는 불완전한 증거입니다. 같은 이름의 경우 변경 read ticket 단지 요구하는 것에서 ticketId 이 두 가지 모두 요구 projectId 그리고 ticketId . 이름만 적으면 레지스트리가 변하지 않을 것입니다. 카노닉 정의는 c42521a2412558ca 에서 c3837b93f14b688f 로 변경되므로 클라이언트의 오래된 정의는 구시로 분류됩니다. 판결을 운영 결정으로 바꾸어 converged 를 좁게 사용하세요. 이는 관찰된 클라이언트 레지스트리가 해당 변경 신호에 따라 완료된 완전히 통과된 발견과 일치한다는 것을 의미합니다. 다음 호출에 대한 운송 접근성, 유효한 허가, 올바른 도구 행동, 성공적인 외부 효과, 또는 의도된 작업 결과를 증명하지 않습니다. 공격적인 자동화 없이 다른 상태를 처리합니다. 판결 증거 다음 움직임은 안전합니다. stale 리프레쉬는 신호보다 오래되었거나 레지스트리 소화가 다를 수 있습니다. 영향을 받는 정의를 선택하지 말고 한 번의 제한된 업데이트를 요청하고, 그 결과 작업을 다시 시도하기 전에 검사하십시오. incomplete 발견이 시작됐지만 커서 통과 또는 완료 증거가 없어 클라이언트가 지원하는 경우 예상 커서에서 재개, 그렇지 않으면 발견을 다시 시작 한 번 unverifiable 제한된 발견 증거는 없습니다 신호를 사용할 수 없는 것으로 보고; 실행 시간 정책에 따라 제어된 리프레쉬를 다시 연결하거나 계획 converged 변화 후의 완전한 발견과 정확한 소화 일치 별도의 호출, 효과 및 결과 검사를 유지하면서 계속하십시오. 서버가 listChanged 를 광고하지 않은 경우 침묵이 예상되며 신선함을 확립할 수 없습니다. 한정된 대안을 정의하십시오: 재결합, 높은 영향을 미치는 실행 전에 또는 서버의 비용 및 속도 제한에 맞는 측정된 간격에서 업데이트하십시오. 이 정책을 기록하여, 통보가 없는 것은 변경이 없는 것으로 오해되지 않습니다. 또한 레지스트리 건강과 작업 건강을 분리합니다. 도구의 자격증이 만료되는 동안 그 도구가 존재하고 올바르게 묘사될 수 있습니다. 약속된 티켓, 파일 또는 배포가 없는 동안 isError: false 를 반환할 수 있습니다. 승인된 복구 후, 발견이나 명령이 완료되었기 때문에 성공을 선언하는 대신 외부 효과 또는 작업 결과를 확인하십시오. 제품과 권한의 경계를 유지하십시오 이 검사는 AI 에이전트 관찰 가능성에 속한다. 왜냐하면 도구 사용 가능성과 권한 유동은 에이전트가 활성화되는 동안 유용한 진전을 차단할 수 있기 때문입니다. 그것은 건강 신호입니다. 실행 시간을 다시 시작하거나 자격증을 돌리는 것이 아니라 도구를 호출하거나 지출을 반복하는 권한입니다. 이에 따른 개입은 제한적이고, 눈에 띄고, 인간의 승인을 받아야 합니다. Sidewisp의 의도된 방향은 기존의 에이전트 런타임에 대한 건강 계층입니다: 증거, 신선함, 심각성, 불확실성, 그리고 가장 안전한 다음 동작을 보여줍니다. 이 문서의 MCP 컨버전스 기록은 운영 패턴과 실험이며, Sidewisp이 현재 수집하는 주장이 아닙니다. Sidewisp는 현재 비공개 프리뷰 단계입니다. 공개 사이트와 기사 시스템은 실시간으로 진행됩니다. 생산 에이전트 건강 수집, MCP 런타임 어댑터, 자동 복구, 크론 관리 및 토큰 비용 분석은 일반적으로 배송되지 않습니다. 프로토콜 협상, 레지스트리 컨버전스, 도구 사용 가능성과 검증된 결과와 같은 증거 계약을 형성하는 데 도움이 되고 싶다면 개인 미리 보기에 참여하십시오.