2026-08-01T11:10:43.071Z

Наблюдаемость MCP: заключение пятислойного договора о здравоохранении

Соотносите разрешение на MCP, состояние переговоров, обнаружение инструментов, запросы, внешние эффекты и проверенные результаты, не делая отсутствующих доказательств зелеными.

Наблюдаемость MCP: заключение пятислойного договора о здравоохранении
Наблюдаемость MCP должна ответить на более сложный вопрос, чем совершенствовалась запрос? Для каждой сессии Model Context Protocol, сохранить одну коррелированную цепочку доказательств от авторизации и инициализации через обнаружение инструмента, призыв, внешний эффект и ожидаемый результат пользователя. Зеленый ответ tools/call - это только одно звено в этой цепочке. Разумным дефолтом является пятислойный договор о медицинском обслуживании: 1. Session: Вы договорились с клиентом и сервером о поддерживаемой версии протокола и возможностях, которые будет использоваться этим запуском? 2. Catalog: читал ли клиент полный список текущих инструментов и реагировал на более поздний сигнал изменения списка? 3. Запрос: Можете ли вы присоединиться к запросу JSON-RPC, уведомлениям о прогрессе, отмене, ответе и сроку? 4. EEffect: Если инструмент изменит внешнюю систему, есть ли доказательства того, что произошло на самом деле? 5. OOutcome: был ли артефакт, изменение состояния или решение агент должен был производить прошли его проверку? Этот контракт намеренно отделяет протокольную деятельность от полезного прогресса. Он также дает оператору конкретное состояние маршрута: needs auth , incompatible session , stale catalog , working , protocol error , tool failed , effect unknown , false success или healthy . Начните с одной цепи доказательств, а не с одного номера панели. Свежие результаты в США по mcp наблюдаемости подчеркивают сессии, подключения, аналитику инструментов, задержку транспорта, пропускную способность и ошибки. Они полезны. Современный Документация о Наблюдаемости МПК Grafana перечисляет установку сеанса, стабильность подключения, соответствие протоколам, производительность инструмента и надежность транспорта. Разница не в том, что эти сигналы неправильны. Отсутствие заключается в том, что ни один из них, в одиночку, не доказывает, что намеченная агентом работа достигла своего назначения. Досье здоровья может оставаться компактным: Хешы - это идентификаторы, а не разрешение на загрузку инструментальных схем, аргументов, запросов, токенов или возвращенного контента. Сохраняйте чувствительные ценности у хозяина. Запишите самые маленькие поля, необходимые для соотношения состояния и доказательства решения. В договоре также должно быть правило преимущества. Неудача авторизации происходит до состояния сеанса; несовместимая сессия происходит до свежести каталога; неразрешенный каталог происходит до интерпретации запроса; переходное время транспортировки на границе побочного эффекта становится effect unknown , а не автоматическая повторная попытка; и успешный звонок с отсутствующим доставкой становится false success , не здоровым. Сделайте протокольное состояние наблюдаемым перед измерением латентности инструмента MCP спецификация жизненного цикла делает инициализацию первым взаимодействием клиент-сервер. Обе стороны договорились о версии протокола, обмене возможностями, а затем начали нормальную работу. В том же документе говорится, что последующее сообщение должно уважать переговорную версию и возможности. Это дает наблюдаемости чистый первый контрольный пункт: хранить запрошенную версию, принятую версию, набор возможностей и момент, когда клиент отправил notifications/initialized . Не разрушайте каждый провал до этого момента в сервер вниз. Для HTTP-транспорт, авторизация является отдельным воротами. Нынешний Спецификация разрешения на MCP определяет открытие защищенных ресурсов и требует от клиентов решения проблемы 401 Unauthorized . Сервер может быть доступен и исправлен, пока клиенту не хватает токена, у него не соответствует охват или он не может обнаружить сервер авторизации. Напишите это как needs auth ; не указывайте его как перерыв в транспорте. Открытие инструментов нуждается в собственном доказательстве полноты. спецификация инструментов говорит, что tools/list настраивается на страницы и что серверы, декларирующие listChanged , могут выпускать notifications/tools/list changed . Поэтому мы получили одну страницу не является свежим каталогом. Запись: - возможности инициализации, которые рекламируют инструменты; - каждый курсор pagination до тех пор, пока не останется nextCursor ; - канонический хэш названий и схемы ввода/вывода; - последнее успешное время освежения; - любое уведомление о tools/list changed и последующее обновление. Это более узкое, чем запись каждой схемы. Клиент может вычислить хэш локально и сохранить только хэш, количество инструментов, количество страниц и обновление доказательств. Если приходит уведомление о изменении и обновление не удается, классифицируйте сессию stale catalog . Сервер все еще может отвечать на пинг, но модель может выбирать из устаревшего инструментального контракта. Длинные звонки вводят еще одну ловушку. MCP уведомления о прогрессе использует токен, предоставляемый по запросу, который должен быть уникальным среди активных запросов; значения прогресса должны увеличиваться, а уведомления прекращаются после завершения. Эти доказательства могут обосновать working , пока вызов находится в пределах его максимального срока. Это не доказывает, что работа полезна, и она никогда не должна продлевать срок навсегда. Повторяемое сообщение без увеличения значения, токен, прикрепленный к неправильному запросу, или прогресс после терминального ответа являются несоответствующими доказательствами. Используйте два часа: - окно бездействия, которое может быть перезагружено на действительный монотонный прогресс; - абсолютный максимальный срок, который не может быть пересмотрен. Это различие предотвращает две противоположные ошибки: уничтожение законной длительной работы, потому что она еще не вернулась, и принятие бесконечного потока уведомлений о прогрессе как здоровье. Успешный инструментальный звонок не является результатом MCP отличает ошибки протокола от ошибок выполнения инструмента. Согласно спецификации инструментов, неправильно сформированные запросы и неизвестные инструменты используют ошибки JSON-RPC, в то время как бизнес- или входные ошибки могут возвращать результат инструмента с isError: true . Держите эти состояния отдельно, потому что следующее действие отличается: зафиксируйте клиентский контракт для protocol error ; корректируйте входы, разрешения или зависимость вдоль потока для tool failed . Более опасный случай - отсутствие реакции после возникновения побочного эффекта. Предположим, что publish report раз выходит. Немедленная повторная попытка может создать дублированный отчет, потому что транспортная неопределенность ничего не говорит о месте назначения. Отметьте вызов effect unknown , согласовывайте с использованием стабильного ключа операции или запроса назначения и попытайтесь повторно только после того, как доказательства докажут, что первая попытка не была совершена. Даже нормального результата недостаточно. Сервер может вернуть isError: false , пока обещанный файл отсутствует, удаленная запись по-прежнему является чертежом или URL является частным. Добавьте проверку результатов, выбранную до вызова: хэш файла, строка базы данных плюс версия, публичный статус HTTP, результат теста или другой детерминистический квитанция. Используйте судью LLM только тогда, когда результат не может быть проверен напрямую, и помещайте на более слабые доказательства. Это создает три отдельных терминальных состояния: Результат протокола Эффект назначения Ожидаемый результат Состояние здоровья --- --- --- --- Время отключения неизвестный неизвестный effect unknown Успех проверенные неисправность или отсутствие false success Успех проверенные проверенные healthy Средний ряд важнее всего. Это предотвращает успешный обмен протокола, превращаясь в ложное утверждение о том, что агент завершил задачу пользователя. Повторять контракт против неудобных случаев Сопровождающийся артефакт представляет собой иллюстративный девятиклассный фиксир и детерминистический классификатор. Он не содержит телеметрию производства. Попробуйте: Эта фиксация охватывает один здоровый экспорт и восемь неудобных границ: вызов авторизации, не поддерживаемая версия протокола, не согласованное изменение списка инструментов, длительный звонок с действительным прогрессом, неправильный звонок, ошибка исполнения инструмента, отсрочка после возможного побочного эффекта и успех с отсутствующим результатом доставки. Классификатор вернул один случай в каждом ожидаемом состоянии: Это фальсифицируемая часть метода: изменить доказательства и состояние должно измениться предсказуемо. Если после tools/list changed происходит полное обновление, следует продвинуться вперед в случае устаревшего каталога. В случае, если задержанный звонок получает квитанцию на место назначения, но его проверяющий орган не успеет, он должен перейти от effect unknown к false success . Он достигает healthy только тогда, когда доказательства сессии, каталога, запроса, эффекта и результата согласны. Артефакт не подтверждает правильность бизнес-семантики инструмента. Он не обнаруживает недокументированного побочного эффекта, не доказывает, что эмитент OAuth является надежным, и не решает, сколько должен быть срок. Это специальные обзоры. Его задача меньше: не допустить, чтобы отсутствующие доказательства молча делались зелеными. Предупреждение о состоянии, требующем действий Не отправляйте всех нездоровых состояний в один канал. - needs auth передается владельцу аккредитации или разрешения с обжалованным ресурсом и требуемым объемом, никогда не знаковое значение. - incompatible session переходит к владельцу интеграции с клиентской версией, серверной версией и возможностями переговоров. - stale catalog запускает одну попытку ограниченного повторного открытия; повторная неудача становится инцидентом интеграции. - working остается тихим, пока прогресс действителен и абсолютный срок остается. - protocol error отправляется к клиенту-исполнителю с методом, идентификатором запроса и классом дезинфицированной ошибки. - tool failed следует политике повторной попытки инструмента только тогда, когда неизвестно, что отказ является обратимым. - effect unknown блокирует автоматическую повторную попытку на границе побочного эффекта и запускает примирение. - false success открывает исходный инцидент, несмотря на то, что сам MCP завершен. Этот маршрутизатор поддерживает ожидание отличается от stuck. Призыв к авторизации, присвоенный человеку, может быть законным ожиданием; токен прогресса, продвигающийся в пределах ограниченного запроса, может быть рабочим; неизменный каталог после сигнала перечня-измены не является ни одним. Начните с одного высокоценного инструмента и одного реального проверщика результатов. Захватить цепочку на неделю, проверить все неизвестные состояния, а затем добавить охват. Совершенная панель управления по всему флоту, построенная на несовместимых событиях, менее полезна, чем один инструмент, чья сессия, эффект и результат могут быть объяснены от конца к концу. Где этот договор прекращается Наблюдаемость MCP может установить протокол и эксплуатационные доказательства, но она не может вывести все намерения пользователя из провода. Действующая схема выпуска доказывает форму, а не правду. Допуск по месту назначения доказывает эффект, а не то, что эффект был мудрым. Монотонный сигнал прогресса доказывает движение, сообщенное сервером, а не полезный прогресс к цели пользователя. Эти границы требуют проверки приложения и иногда человеческого суждения. Sidewisp сейчас находится на этапе закрытого предварительного доступа. Его адаптеры мониторинга производства и системы восстановления обычно не отправляются. Договор в настоящей статье является методом работы и местным артефактом, который может быть проверен, а не утверждением о том, что Sidewisp уже собирает сеансы MCP или ремонтирует их. Целью продукта является облегчение наблюдения за доказательствами здоровья, неопределенностью и границами одобрения в сочетании с существующими сроками эксплуатации. Если вы разрабатываете интеграцию MCP сейчас, держите пятислойный запись локально, редактируйте контент и отказывайтесь называть бег здоровым, пока ожидаемый результат не получит свой собственный результат. Это одно правило превращает протокольную телеметрию в оперативное решение вместо другой зеленой диаграммы.