Практычныя нататкі: MCP 2026 — пратакол стаў дарослым
Практычны разбор тэмы «MCP 2026: што сталасць пратакола значыць для прадакшн-AI»: кантракты, праверкі і гатовыя фрагменты кода для каманд, якія ўкараняюць гэты падыход.
Крыніцы: MCP 2026: The Protocol Grew Up:-Here’s What Production AI Teams Must Change
Існавайце гэта як перапрацоўаны варыянт ідэй з артыкула “MCP 2026: The Protocol Grew Up:-Here’s What Production AI Teams Must Change” для аператараў: чыстыя этапы, аранжаваныя блакі коду і прыметкі з восстанавлення, якія застаюцца пасля перадачы. Этап “Апглэйв” найкрашча працюе, калі яго розглядаць як мерыемую плошчу. Запісаўце адна ідэальная транскрыпцыю, адзін прыклад неудачы і прыметкі з вярнення да пачатковага стану прычаму расшырэння масштаба. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісьць крок не выходзіць, прычына неудачы павінна вказываць на адную адпаведальнасць, а не на заплутаны ланцюг задач.
Короткая версія: што на самай працэ практычна зменілася?
Короткая версія: перш чым зменіць код, неабходна дэфініцыя вхідных даных, адміністратара крока і крэтэрыяў завершэння. Аперацыйныя працавнікі должны магчымае запускаць крок з вядомай точкі контролю, не спрабоўваючы здогадвацца пра схованы стан. Штую крок трэба спрыяваць як контракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Назваць артыфакты, задаць перакананні на успех і не падтрымляць тыхя частковых завершэнняў.
До і пасля: архітэктурныя змены
Для етапа «Перад» і «Пасля» неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крытэрыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не спрабоўваючы здогадвацца пра схованы стан. Запісвайце час выканання і вартасць токена або запыту паляглі разам з функцыйнальнымі рэзультатамі. Візуабельная інформацыя пра вартасці з самага пачатку запобегае неспакоўным рахункам, калі працэс пераходзіць з дэмовай асяроддзя ў спакульную. Автэнтыфікуйцеся на воратах і паўторна автарызуйцеся на роўні дадзенняў. Сам токен-носіцель не ёсць межай арэндаванага прыемку.
POST /mcp HTTP/1.1
Content-Type: application/json
MCP-Protocol-Version: 2026-07-28
Mcp-Method: tools/call
Mcp-Name: search_orders
{
"jsonrpc": "2.0",
"id": "req-7814",
"method": "tools/call",
"params": {
"name": "search_orders",
"arguments": {
"customer_id": "cust_2048"
},
"_meta": {
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
"io.modelcontextprotocol/clientInfo": {
"name": "support-agent",
"version": "4.2.0"
},
"io.modelcontextprotocol/clientCapabilities": {}
}
}
}
Stateless MCP не значыць stateless агенты
Для безстановага MCP не трэба ствараць спецыяльныя етапы, візначаць параметры вводу, адміністратара данага етапа і крэтыяры завершэння пры зміне коду. Аператары должны магчымаць перзапуск етапа з вядомай точкі контролю, не падозрываючы прыхованы стан. Конфігурацыю трэба знаходзіць за межамі коду прыемліка. Файлы сераўнавання сяродовішча, храненні секрэтных даных і флагі функцый должны быць у аднам месца, якое аператары можаць пераглядаць, не чытаяўшы весь ланцуг задач. Аўтэнтыфікацыя павінна выконвацца на воратах, а пераправенне прав на выкарыстоўвання — на рэвеі дадзеных. Сам токен-несучы не ёсць межай адпаведнае часткі сістэмы. Для безстановага MCP не трэба ствараць спецыяльныя етапы, візначаць параметры вводу, адміністратара данага етапа і крэтыяры завершэння пры зміне коду. Аператары должны магчымаць перзапуск етапа з вядомай точкі контролю, не падозрываючы прыхованы стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптов. Калі етап не выконваецца, прычына неудачы павінна вказываць на адную адпаведную адпавядальнасць, а не на заплутаны ланцуг задач.
{
"export_handle": "exp_7f92...",
"status": "awaiting_approval",
"expires_at": "2026-08-17T18:30:00Z"
}
Горызонтальнае масштабаванне стае нормальным — але прабыткі зноў і зноў стаюць вашай проблемай
Калі вы працуеце на стадыі, калі горызонтальнае масштабаванне стае нормальным, спачатку запісайце кантракт: неабходныя даны, сігнал успеху і тое, што выканаецца у разе частковай нявыполненасці. Такі спіс пераканае вас робіць чыстыя змены ў кодзе пазней. Спрыятлівае ставленне да гэтай стадыі як да кантракта межу данымі і перакананымі выходамі. Дайце назву артыфактам, задаць тэсты на успех і не падпішывайцеся на тыхое частковае завершэння. Запісвайце назву інструмента, хэш аргументаў, час адклікання і рэзультат для кожнага вызову. Без такога следу дэбаггінг агента губіць гады часу.
Кэшаванне цяпер ўключаецца ў кантракт
Калі працуеце над этапам, дзе кэшаванне ўжо ёсць часткай, спачатку запішыце умовы вікорыстання: неабяжлівыя даныя, сігнал пра успех і тое, што выходзіць на падчасныя неудачы. Такі чарт дапамагае заліцваты змяны ў кодзе пазнейша. Запісвайце час выканання і вартасьць токена або запытку пад функцыйнальнымі рэзултатамі. Відразы вартасці з самага пачатку запобегае неспадзяваным рахункам, калі працэўнае сераўеры пераходзяць з дамовай асяроддзя ў спадзеленую. Запісвайце назву інструмента, хэш аргументаў, час затрымкі і рэзултат кожнага вызову. Без такога журналу дэбаггін агента губіць гады на безрэзультатныя спробы.
Запыткі з калькуляцыяй колькасці раунд-трыпаў паспелююць вярнуць інтэрактыўнасьць для безстановага ядра
Калі працуеце над стадзіяй выправлення проблемы з мнагамі кругавымі запытамі, спачатку запісайце «контракт»: неабяжныя вхідныя даны, сігнал працэйнасці і тое, што выканаецца у разе частковага абярэння. Такі спіс контроля дапамагае залічваць пазнейшыя змены ў кодзе чыстаюча.
Заданні перакладаюць дзейнасці з дужоўгага выканання за межы шляху запіту
Этап «Заданні перакладаюць дзейнасці з дужоўгага выканання» працюе найэфектывней, калі яго розглядаюць як мерыемую структуру. Зберагучы адна ідэальная транскрыпція, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расшырваць сферу дзеяння. Разглядайце этап як кантракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаць крытэрыя успеху і адмовіцеся ад беззвучнага частковага завершэння. Адкройце інструменты з вузкімі схемамі і чысткімі пазначэннямі побачных эфектаў. Хостам неабходна ведаць, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць ўсё.
Расшырэння ператвараюць MCP у платформу
Расшырэннія ператвараюць MCP у інструменты для выканання задач лепшая, калі іх расследжваць як меравальную паверхню. Запісайце адны ідэальны прыклад работы, адну сітуацыю неудачы і прыметкі па поверненню да пачатковага стану пры розшырэнні масштаба. Запісвайце часы выканання і вартасць токеноў або запытак праза функцыйнае рэзультат. Відразліва візуабільнасць вартасцей запобегае неспакоўным рахункам, калі працэс пераходзіць з дэмовай асяроддзя ў спяльнаныя сераўеры. Актуалізуйце інструменты з вузкімі схемамі і чыткімі пазначэннямі па бокавых эфектах. Хостам неабходна знаты, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць іх.
Автарызацыя ўжо строгая, але автарызацыя — гэта не безпека
Автарызацыя ўжо строгей, але стэйдж работае найкрашча, калі яго спрыягчваць як вімерную паверхню. Зберагачыце адны ідэальны прыклад працы, адзін кейс неудачы і прыметкі па абратанню працы, перш чым расшырваць сферу дзеяння. Храніце настройкі парадульна коду прыемлі. Файлы сераўнавання, сховішчы секрэтных даных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаць адбавляць контроль без неабяжнага чытання всіх дадзеных. Адкрывайце інструменты з вузкімі схемамі і чытальнымі пазначэннямі побачных эфектаў. Хостам неабходна знаты, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць ўпраўленні. Автарызацыя ўжо строгей, але стэйдж работае найкрашча, калі яго спрыягчваць як вімерную паверхню. Зберагачыце адны ідэальны прыклад працы, адзін кейс неудачы і прыметкі па абратанню працы, перш чым расшырваць сферу дзеяння. Валічыце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшаў, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцужок дзеяння.
Нарэшце, для абзірнасці ёсць стандартныя элементы
Калі стадзія спостэрагальнасці нарэшце мае стандарт, пярэд змінайом код неабходна адзначыць вхідныя даныя, адпаведальнага за крок і крытэрыя завершэння. Аперацыйныя працавнікі должны магчымаць перзапуск крока з вядомай точкі контролю, не падозрываючы схованы стан. Спрыяйце гэтай стадзіі як даговору межа вхіднымі данымаў і падтверджанымі выходнымі рэзультатамі. Даўце назвы артыфактам, адзначыце крытэрыя успеху і не прымайце тыхню частковую завершэннасць. Автэнтыфікуйцеся на воратах і паўторна автарызуйцеся на роўні дадзенняў. Толькі токэн-носіцель не ёсцца межай арэнды.
Калія команды должны зменіцца зараз
Для этапы «Якія каманды должны зменіцца» неабходна прадзеявлення інпутаў, адпаведальнага за крок і крэатывных крытарыяў пры змене коду. Аператары должны магчымаць паўтарнае адрыхленне кроку з вядомага пункта контролю, не спадзяючыся на скрыты стан. Запісваюць час выканання і кост токена або запыту праза функцыйнае рэзультат. Відкрытыя даныя пра косцы запобегаюць неспакоўным рашчыткам, калі траекторыя пераходзіць з дэмавай версіі ў спяльныя асяроддзя. Автэнтыфікуецца на воратах і паўтарна автарызуецца на роўні дадзенняў. Толькі токен-носіцель не ёсць межай арэны.
1. Прыяўленні протаколу інвентарызацыі
У стадыі 1 протаколу Inventory assumptions неабяжна практыка — перш чым зменіць код, задаць вхідныя даны, абяронца крока і крэтырыя для завершэння. Аперацыйныя працавнікі должны магчымаць перзапуск крока з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Конфігурацыю трэба зберагчы за межамі коду прыемленае. Файлы сераўіса, хранальнікі секрэтных дадзеных і флагі функцый належаць у аднам месца, якое працавнікі можуць аўдытаваць, не чытаючы весь ланцуг. Аўтэнтыфікацыя павінна выконвацца на воратах, а перазначэнне прав — у роўні дадзеных. Толькі токэн-носіцель не ёсць межай арэндавання. У стадыі 1 протаколу Inventory assumptions неабяжна практыка — перш чым зменіць код, задаць вхідныя даны, абяронца крока і крэтырыя для завершэння. Аперацыйныя працавнікі должны магчымаць перзапуск крока з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптов. Калі крок не выконваецца, прычына нехарактэрыстыкі павінна вказываць на адную абяраносць, а не на заплутаны ланцуг задач.
eline.
2. Адзэйнае стан пратаку з станам домэна
Калі працуеце над стадзіяй «Адзэйнае стан пратаку», спачатку запісайце угоду: неабяжлівыя даныя, сігнал успеху і тое, што выходзіць пад частыя неудачы. Такі чарт дапамагае заліцьваваць пазнейшыя змены ў кодзе. Спрэцьвуйце гэтую стадзію як угоду межаў між вхіднымі данымі і перакананымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаць тэсты на успех і не прымайце частыя, непূরныя рэзультаты без адзначэння. Запісвайце назву інструмента, хэш аргументаў, час затрымкі і рэзультат кожнага вызову. Без такога лёгкага следу дэбагаванне можа зайняць гады.
3. Класіфікуйце кожны інструмент па побачных эфектах
Калі вы працуеце над кожным этапам інструменту класа «Класыфікацыя», спачатку запісайце умовы вікорыстання: неабяжлівыя даны, сігнал успеху і тое, што выходзіць пад частковыя неудачы. Такі спіс контроля дапамагае заліцварваць можлівыя змены ў кодзе. Запісуйце час выканання і кост токеноў або запытаў разам з функцыйнальнымі рэзултатамі. Відразы костаў з самага пачатку запобегае неспакойным рахункам, калі праця пераходзіць з дэмовай асяроддзя ў спакульную. Запісуйце назву інструмента, хэш аргументаў, час затрымкі і рэзултат кожнага вызову. Без такога журналу дэбаггін агента губіць гады на безрэзультатныя спробы.
4. Размясціце правілы ў воратах і пад час выканання
Калі працуеце над політыкай 4 Put на даным этапе, спачатку запісаце кантракт: неабяжлівыя даны, сігнал успеху і тое, што выходзіць у разе частковага невыпання. Такі спіс пераконваець у тым, што пазнейшыя змены коду будуць чыстымі. Зберагаеце настройкі пазнаходзячыся за межама коду прыемліка. Файлы сераўнавання, храненні секрэтных даных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куда аператары можуць адбавіць аўдыт без неабяжлівага чытання всей структуры. Запісваеце назву інструмента, хэш аргументаў, час адклікання і рэзультат кожнага вызову. Без такога лёгкага адстэйпнага метаданых дэбаггін агента займае гадзіны. Калі працуеце над політыкай 4 Put на даным этапе, спачатку запісаце кантракт: неабяжлівыя даны, сігнал успеху і тое, што выходзіць у разе частковага невыпання. Такі спіс пераконваець у тым, што пазнейшыя змены коду будуць чыстымі. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына невыпання должна вказываць на адну адпаведную абавязку, а не на заплутаны ланцюг задач.
5. Разрабатывайце кэшаванне цярпеліва
5-й этап кэшавання дызайну працюе наявнейша, калі яго розглядаць як меравальную плошчу. Запісаце адзін ідэальны прыклад, адзін прыклад неудачы і прыметкі па поверненню да пачатковага стану пры розшырэнні масштаба. Разглядзеце гэты этап як кантракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даце назвы артыфактам, задаце крытэрыі успеху і не падзельвайцеся на частковыя завершэння без адзінаго заўважэння. Апублікуйце інструменты з вузкімі схемамі і чысткімі пазначэннямі побачных наследкаў. Хостам неабходна ведаць, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць іх.
6. Пераговоры па можлівасцях тэставання і сумешаныя версіі
Этап перагавора па можлівасцях 6 Test працуе наўжоўды лепш, калі яго спрыяваць як меркаваную плошчу. Зафіксавайце адны ідэальны прымер, адзін кейс неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць масштабы. Запісвайце часы выканання і косты токеноў або запытаў праза функцыйнае рэзультаты. Відкрытыя даныя пра косты з’являюцца рана, таму утрымліваецца неспакою па час пераходу з дэмаверсіі ў спяльныя асяроддзя. Адкройце інструменты з вузкімі схемамі і чыткімі пазначкамі пра побачныя эфекты. Хостам неабходна знаты, якія вызовы мутуюць стан, перш чым яны автаматычна схваляюць іх.
7. Адналежна мадэляванню абароны, дапытак і задач
Этап 7 Threat-model MRTR Apps працюе наякраўсі, калі яго спрыяваць як мерыемую паверхню. Зберагуце адна ідэальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць масштабы. Зберагуйце настройкі параду ўнутры коду прыемлі. Файлы сяродавішча, хранільнікі секрэтных дадзеных і флагі функцый должны знаходзіцца ў аднам месцы, куды аператары можаць аўдытуваць іх без неабяжнага чытання всіх дадзеных. Задаце ліміты токенаў на кожны рунг і на кожную сесію. Інструменты-агенты агрэсывна расшырваюць кантэкст; строгі ліміты запобегаюць таму, каб дэманстрацыі ператварыліся на неспакоючыя рахункі. Этап 7 Threat-model MRTR Apps працюе наякраўсі, калі яго спрыяваць як мерыемую паверхню. Зберагуце адна ідэальная транскрыпцыя, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць масштабы. Валідзіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, неудача должна вказваць на адну конкрэтную адпаведальнасць, а не на заплутаны працэс.
8. Дадзіце тэсты на адпаведнасць і неудачы
Для 8-го этапу «Адаптаванне і стадыя» неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крытэрыя завершэння пры зміне коду. Аперацыйныя працавнікі должны магчымае перайсці на гэты крок з вядомага пункта контролю, не спрабоўваючы здогадвацца пра схованы стан. Спрыяйце гэтай этапы як даговору межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, узначыце перакананні пра успех і адмовіцеся ад тыхняга частковага завершэння без паведамлення. Автэнтыфікуйцеся на в’язку і паўтарна автарызавайцеся на роўні дадзенняў. Толькі токэн-носіцель не ёсць межай арэндаванага рэсурсу.
Архітэктура прыменення як апавядомленне
Для этапы практычнай рэалізацыі, адносная да A, перад зменым коду неабходна ўзначыць вхідныя даны, адпаведальнага за кожны крок і крытэрыя завершэння. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы прыхованы стан. Неабходна фіксацыя часу выкарыстоўвання і вартосці токена або запыту праза функцыйнае рэзультат. Відкрытыя даны пра вартасцы запобегаюць неспакоўным рахункам, калі працэс пераходзіць з дэмовай асяроддзя ў спакульную.
Што падтверджвае — і чаго не падтверджвае — выпуск
Для этапа «Што робіць выпуск» неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крытэрыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не спрабоўваючы здогадвацца пра схованы стан. Конфігурацыю трэба залічыць паза кодам прыкладнення. Файлы сераўіса, хранільнікі секрэтных даных і флагі функцый належаць у аднам месца, якое аператары можаць пераглядаць, не чытаяўшы весь ланцуг задач. Аўтэнтыфікацыя павінна выконвацца на шлюзе, а перарганізацыя прав — на роўні дадзенняў. Сам токен-носіцель не ёсць межай адпаведальнасці. Для этапа «Што робіць выпуск» неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крытэрыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Валідзіце маленькія, тэставаныя елементы працоўных працэсаў у працоўныя скрыпты з велікім обсягам. Калі крок не выйшоў, прычына нехарактэрнага рэзультата павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцуг задач.
Заключныя заўважэнні
Калі працуеце над стадзіяй заключных заўважэнняў, спачатку запісайце угоду: неабходныя даны, сігнал успеху і тое, што выканаецца у разы частковага неяксамоўпадання. Такі чэрнетак памагае заставіць пазнейшыя змены коду быць чыстымі. Спрыятлівае і негатыўнае развіцця падзей трэба рассматраць як угоду межа данымі і перакананымі выходамі. Дайце назву элементам, задаце правіла пераканання успеху і адмовіцеся ад тыхнай частковай працы без паведамлення.
Чэрнетак для эксплуатацыі
Калі працуеце над стадзіяй чэрнетка для эксплуатацыі, спачатку запісайце угоду: неабходныя даны, сігнал успеху і тое, што выканаецца у разы частковага неяксамоўпадання. Такі чэрнетак памагае заставіць пазнейшыя змены коду быць чыстымі.
Документавайце як шлях успеху, так і шлях вярнення да нормы. Перапрыбуткі, людзкія контралі і обработка некорэктных паведамленняў ёсць часткай продукту, а не чымсь, што дадаецца пазней.
Зявіце логі з назвай прыемплю, хэшам аргументаў, часу затрымкі і рэзультата для кожнага вызову. Дыбагаванне без такога следу змарнавае гадзіны.
Закрэпіце версіі залежнасцяў і запісаце дзейнергію зображэння, якае выканала дамэ. Возможнасць павторэння важлівейшая за традыцыйныя знаёмства.
Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, адказавальнасць за глыткія проблемы павінна быць чыстаю, а не заплутанай.
Зявіце логі з назвай прыемплю, хэшам аргументаў, часу затрымкі і рэзультата для кожнага вызову. Дыбагаванне без такога следу змарнавае гадзіны.
Перш чым пераводзіць стэк, заморозьце версіі, зафіксуйце ключовыя даны для крытычнага маршруту і паказваце крокі для адвярнення. У спакульнаваных срэдах патрабуюцца ліміты частоты, перакананні ў прыналежнасці і чысты власнік для змены секрэтных даных. Валіце простую надзяйнасць замест крэатыўных, адзінразовых дамэ.
Запіскі для пакета 0ac20d16e46b: не класты ключы прадаўцоў у рэпазітарыю, задаць максымальны тэрмін дзейнасці токена на кожную сесію, а таксама зберагчы транскрыпціі праза фіксатуры для ацэнкі, каб пазнейшыя замены мадэляў заставаліся пораўнанымі.