[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portal-settings:stajic:ru":3,"public-menus:all":38,"post:mcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits:ru":205,"related:post:mcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits:ru:1":3527},{"statusCode":4,"data":5,"message":37},200,{"tenantId":6,"lang":7,"defaultLang":8,"siteUrl":9,"contactEmail":10,"brandName":11,"logoUrl":12,"siteName":11,"siteDescription":13,"ogImage":10,"robotsIndex":14,"socialLinks":10,"reservedSlugs":10,"seoPolicy":15},"stajic","ru","de","https:\u002F\u002Fstajic.de",null,"Stajic Platform","\u002FLogo_Planet.svg","Stajic Portal",true,{"branding":16,"relatedContent":17,"crossDomainLinks":18},{"logoUrl":12},{"enabled":14},[19,22,25,28,31,34],{"url":20,"label":21,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Ffigure.rocks","figure.rocks",{"url":23,"label":24,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Floving.rocks","loving.rocks",{"url":26,"label":27,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.com","bazify.com",{"url":29,"label":30,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.de","bazify.de",{"url":32,"label":33,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.at","bazify.at",{"url":35,"label":36,"isActive":14,"showInFooter":14,"includeInSameAs":14},"https:\u002F\u002Fbazify.ba","bazify.ba","Portal settings resolved",[39,45],{"id":40,"name":41,"location":42,"isActive":14,"isDefault":43,"items":44},1,"main-navigation","header",false,[],{"id":46,"name":47,"location":48,"isActive":14,"isDefault":14,"items":49},4,"main-menu","sidebar",[50,66,79,93,103,118,133],{"id":51,"title":52,"url":60,"target":61,"icon":62,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":64,"portfolioId":10,"children":65},"item-18",{"de":53,"en":54,"es":55,"fr":56,"it":54,"ru":57,"sr":58,"zh":59},"Startseite","Home","Inicio","Accueil","Главная","Почетна","首页","\u002Ffull-stack-web-developer-munich-performance-seo-and-maintainable-builds","_self","i-lucide-home","page",111,[],{"id":67,"title":68,"url":75,"target":61,"icon":76,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":77,"portfolioId":10,"children":78},"item-22",{"de":69,"en":69,"es":70,"fr":69,"it":71,"ru":72,"sr":73,"zh":74},"Vision","Visión","Visione","Видение","Визија","想象","\u002Fueber-uns-webdesign-muenchen-webaplikation","i-lucide-eye",113,[],{"id":80,"title":81,"url":89,"target":61,"icon":90,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":91,"portfolioId":10,"children":92},"item-19",{"de":82,"en":83,"es":84,"fr":83,"it":85,"ru":86,"sr":87,"zh":88},"Leistungen","Services","Servicios","Servizi","Услуги","Услуге","服务","\u002Fservices-dienstleistungen-muenchen","i-lucide-wrench",116,[],{"id":94,"title":95,"url":99,"target":61,"icon":100,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":101,"portfolioId":10,"children":102},"item-23",{"de":96,"en":96,"es":96,"fr":96,"it":96,"ru":97,"sr":97,"zh":98},"Blog","Блог","博客","\u002Fblog","i-lucide-book-open",112,[],{"id":104,"title":105,"url":114,"target":61,"icon":115,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":116,"portfolioId":10,"children":117},"item-32",{"de":106,"en":107,"es":108,"fr":109,"it":110,"ru":111,"sr":112,"zh":113},"Neue Technologien","New Technologies","Nuevas tecnologías","Nouvelles technologies","Nuove tecnologie","Новые технологии","Нове технологије","新技术！","\u002Fneue-webtechnologien","i-lucide-sparkles",122,[],{"id":119,"title":120,"url":129,"target":61,"icon":130,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":131,"portfolioId":10,"children":132},"item-20",{"de":121,"en":122,"es":123,"fr":124,"it":125,"ru":126,"sr":127,"zh":128},"Kontakt","Contact us!","Contacto","Contact","Contatto","Контакт","Контактирајте нас","联系我们！","\u002Fcontact","i-lucide-mail",115,[],{"id":134,"title":135,"url":144,"target":61,"icon":145,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":146,"portfolioId":10,"children":147},"item-21",{"de":136,"en":137,"es":138,"fr":139,"it":140,"ru":141,"sr":142,"zh":143},"Unsere Arbeit","Our Work","Nuestro trabajo","Nos réalisations","I nostri lavori","Наши работы","Наши радови","文件夹","\u002Fportfolio","i-lucide-briefcase",114,[148,161,175,181,193],{"id":149,"title":150,"url":144,"target":61,"icon":159,"isActive":14,"type":63,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":146,"portfolioId":10,"children":160},"item-24",{"de":151,"en":152,"es":153,"fr":154,"it":155,"ru":156,"sr":157,"zh":158},"Alle Projekte","All Projects","Todos los proyectos","Tous les projets","Tutti i progetti","Все проекты","Сви пројекти","所有项目","i-lucide-grid-3x3",[],{"id":162,"title":163,"url":171,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":174},"item-29",{"de":164,"en":165,"es":166,"fr":167,"it":168,"ru":169,"sr":170,"zh":143},"Local Roots, Global Reach","Local Roots - Global Reach","Empresa local ","Entreprise locale","Azienda locale","Местная компания","Локално предузеће глобално тржиште","\u002Fportfolio\u002Flocal-roots-global-reach-communication-media-systems-for-modern-business","i-lucide-folder","custom",[],{"id":176,"title":177,"url":179,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":180},"item-28",{"de":178,"en":178,"es":178,"fr":178,"it":178,"ru":178,"sr":178,"zh":178},"Solr Suggester","\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung",[],{"id":182,"title":183,"url":191,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":192},"item-27",{"de":184,"en":185,"es":186,"fr":187,"it":188,"ru":189,"sr":190,"zh":185},"Firmenwebseite SEO","Company Website SEO","Sitio web corporativo SEO","Site web d’entreprise SEO","Sito web aziendale SEO","Корпоративный сайт SEO","Пословна веб-страница SEO","\u002Fportfolio\u002Fseo-sem-branding-mobile-webseite-muenchen",[],{"id":194,"title":195,"url":203,"target":61,"icon":172,"isActive":14,"type":173,"productId":10,"categoryId":10,"shopCategoryId":10,"articleId":10,"pageId":10,"portfolioId":10,"children":204},"item-31",{"de":196,"en":197,"es":198,"fr":199,"it":200,"ru":201,"sr":202,"zh":197},"Digitalisierungsportal","Digitalization Portal","Portal de digitalización","Portail de numérisation","Portale di digitalizzazione","Портал цифровизации","Портал за дигитализацију","\u002Fportfolio\u002Fdigitalisierungsportal-archiv-museum-bibliothek-ead-lido-mets-mods",[],{"statusCode":4,"data":206,"message":3526},{"id":207,"title":208,"slug":209,"content":210,"contentJson":211,"excerpt":1611,"featuredImage":1612,"featuredImageAlt":1613,"featuredImageCaption":10,"featuredImageTitle":10,"featuredImageCopyright":10,"featuredImageAuthor":10,"featuredImageSourceUrl":10,"featuredImageLicense":10,"featuredImageIsAiGenerated":43,"status":1614,"publishedAt":1615,"createdAt":1616,"updatedAt":1617,"seoLocalePaths":1618,"categories":1627,"author":1644,"translations":1649},"492","MCP: объяснение — что он подключает, чего не делает и где ему место","mcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u003Cp>Протокол контекста модели (MCP) — это открытый протокол для подключения ИИ-приложений к внешним возможностям и информации через стандартизированные контракты клиент-сервер. Сервер MCP может предоставлять инструменты, ресурсы и подсказки; хост или клиент, совместимый с MCP, обнаруживает и использует эти возможности от имени ИИ-приложения. MCP не требует, чтобы сервер запускал собственную языковую модель, и не заменяет среду выполнения агента, бизнес-авторизацию, изоляцию арендаторов, API приложений или доменную архитектуру, стоящую за предоставляемыми возможностями.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--info my-6 rounded-xl border p-5 border-blue-300 bg-blue-50 dark:border-blue-900 dark:bg-blue-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Прямой ответ\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">\u003Cstrong>MCP стандартизирует границу между ИИ-хостом и внешними поставщиками возможностей.\u003C\u002Fstrong>\u003Cbr>\u003Cbr>Полезная ментальная модель:\u003Cbr>\u003Cstrong>Пользователь → ИИ-хост \u002F среда выполнения агента → клиент MCP → сервер MCP → приложение\u002FAPI\u002Fданные\u002Fинструмент\u003C\u002Fstrong>.\u003Cbr>\u003Cbr>Модель может полностью оставаться на стороне хоста. Сервер MCP может быть обычным детерминированным программным обеспечением, предоставляющим структурированные возможности.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Caside class=\"editorjs-callout editorjs-callout--success my-6 rounded-xl border p-5 border-emerald-300 bg-emerald-50 dark:border-emerald-900 dark:bg-emerald-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Серверу MCP не нужна собственная ИИ-модель\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Сервер MCP для файловой системы может перечислять или читать файлы. Сервер MCP для базы данных может выполнять одобренные запросы. Сервер MCP для Jira может предоставлять операции с задачами. Ни одному из этих серверов не нужна LLM для выполнения контракта MCP. Если сервер внутренне использует ИИ, это выбор реализации за границей протокола, а не требование MCP.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Caside class=\"editorjs-callout editorjs-callout--warning my-6 rounded-xl border p-5 border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Возможность MCP — это не бизнес-полномочие\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Если сервер MCP предоставляет \u003Ccode>delete_file\u003C\u002Fcode>, \u003Ccode>refund_order\u003C\u002Fcode> или \u003Ccode>deploy_service\u003C\u002Fcode>, это означает лишь, что возможность существует. Сервер\u002Fприложение всё равно должны обеспечивать идентификацию, разрешения, область арендатора, бизнес-правила, требования подтверждения и средства аудита. Обнаружение протокола никогда не должно незаметно становиться авторизацией.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Caside class=\"editorjs-callout editorjs-callout--note my-6 rounded-xl border p-5 border-gray-300 bg-gray-50 dark:border-gray-700 dark:bg-gray-900\u002F40\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Примечание об актуальном источнике — 8 октября 2026 г.\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Текущая редакция спецификации MCP — \u003Cstrong>2026-07-28\u003C\u002Fstrong>. Её главное изменение — безсостояниевое ядро протокола с самоописывающими запросами, опциональным \u003Ccode>server\u002Fdiscover\u003C\u002Fcode>, маршрутизируемыми HTTP-заголовками, кэшируемыми ответами списков\u002Fресурсов, усилением авторизации и формальной моделью расширений. TypeScript SDK v2 — текущая стабильная линейка SDK, реализующая эту редакцию. Более старые клиенты и серверы эпохи 2025 года всё ещё существуют, поэтому рекомендации по реализации должны учитывать версию.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Cnav class=\"editorjs-toc\" data-editorjs-toc=\"true\" aria-label=\"Содержание\">\u003Cstrong class=\"editorjs-toc__title\">Содержание\u003C\u002Fstrong>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-0\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-7\" class=\"editorjs-toc__link\">Что на самом деле стандартизирует MCP\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-11\" class=\"editorjs-toc__link\">Простейший пример\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-16\" class=\"editorjs-toc__link\">Где заканчивается простой пример\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-20\" class=\"editorjs-toc__link\">Архитектура MCP: хост, клиент и сервер\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-24\" class=\"editorjs-toc__link\">Три основных примитива сервера\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-26\" class=\"editorjs-toc__link\">Инструменты: вызываемые возможности\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-30\" class=\"editorjs-toc__link\">Ресурсы: читаемый контекст и данные\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-34\" class=\"editorjs-toc__link\">Промпты: многоразовые шаблоны\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-38\" class=\"editorjs-toc__link\">Инструмент или ресурс?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-40\" class=\"editorjs-toc__link\">Где находится модель ИИ?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-45\" class=\"editorjs-toc__link\">MCP не заменяет API\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-49\" class=\"editorjs-toc__link\">MCP против вызова функций\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-52\" class=\"editorjs-toc__link\">MCP не создаёт цикл агента\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-56\" class=\"editorjs-toc__link\">MCP против A2A\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-61\" class=\"editorjs-toc__link\">Локальное и удалённое использование MCP имеют разные транспортные реалии\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-65\" class=\"editorjs-toc__link\">Почему важно учитывать версию MCP\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-69\" class=\"editorjs-toc__link\">Что изменилось в MCP 2026-07-28\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-71\" class=\"editorjs-toc__link\">Roots, sampling и logging больше не являются направлением для новых реализаций\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-75\" class=\"editorjs-toc__link\">Длительная работа — это не то же самое, что обычный вызов инструмента MCP\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-79\" class=\"editorjs-toc__link\">MCP Apps расширяют возможности пользовательского интерфейса, не переопределяя ядро протокола\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-83\" class=\"editorjs-toc__link\">Авторизация MCP — это не ваша полная модель авторизации\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-88\" class=\"editorjs-toc__link\">Идентичность может пересекать несколько границ\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-92\" class=\"editorjs-toc__link\">Изоляция арендаторов остаётся за пределами обнаружения возможностей MCP\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-96\" class=\"editorjs-toc__link\">MCP не определяет источник истины\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-100\" class=\"editorjs-toc__link\">MCP и контекстная инженерия\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-104\" class=\"editorjs-toc__link\">Проектируйте инструменты MCP вокруг результатов и границ риска\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-106\" class=\"editorjs-toc__link\">Одобрения относятся к архитектуре исполнения\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-110\" class=\"editorjs-toc__link\">Наблюдаемость MCP должна связывать вызовы протокола с действиями в предметной области\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-114\" class=\"editorjs-toc__link\">Что MCP не может исправить\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-116\" class=\"editorjs-toc__link\">Доказательства оригинальной реализации: Aaasaasa AI Client\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-124\" class=\"editorjs-toc__link\">Когда MCP хорошо подходит\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-126\" class=\"editorjs-toc__link\">Когда MCP не нужен\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-130\" class=\"editorjs-toc__link\">Контрольный список безопасности MCP\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-132\" class=\"editorjs-toc__link\">Распространённые заблуждения\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-134\" class=\"editorjs-toc__link\">Практическая последовательность проектирования MCP\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-136\" class=\"editorjs-toc__link\">Контрольный список архитектуры MCP\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-138\" class=\"editorjs-toc__link\">Краевые случаи и ограничения\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-144\" class=\"editorjs-toc__link\">Что могло бы изменить этот ответ?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-148\" class=\"editorjs-toc__link\">Связанные канонические знания\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-153\" class=\"editorjs-toc__link\">Часто задаваемые вопросы\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-155\" class=\"editorjs-toc__link\">Глоссарий\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-157\" class=\"editorjs-toc__link\">Заключение\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-161\" class=\"editorjs-toc__link\">Первичные источники и текущая документация\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fnav>\n\u003Ch2 id=\"section-7\">Что на самом деле стандартизирует MCP\u003C\u002Fh2>\n\u003Cp>До MCP каждое ИИ-приложение могло интегрировать внешние системы через собственную схему инструментов, формат плагинов, соглашение об аутентификации и код подключения. Одной и той же службе могли потребоваться разные адаптеры для настольного ИИ-клиента, агента IDE и пользовательского приложения.\u003C\u002Fp>\n\u003Cp>MCP создаёт многоразовую границу протокола. Внешняя система предоставляет возможности через сервер MCP, а совместимые ИИ-хосты реализуют клиент MCP. Это снижает связанность интеграции между ИИ-приложением и базовым поставщиком инструментов или данных.\u003C\u002Fp>\n\u003Cp>Протокол не стандартизирует всё приложение. Он стандартизирует то, как возможности описываются, обнаруживаются и вызываются через эту границу.\u003C\u002Fp>\n\u003Ch2 id=\"section-11\">Простейший пример\u003C\u002Fh2>\n\u003Cp>Предположим, ИИ-приложению для программирования нужен доступ к локальному каталогу проекта. Без MCP приложение могло бы реализовать собственную интеграцию с файловой системой напрямую.\u003C\u002Fp>\n\u003Cp>С MCP сервер файловой системы может предоставлять такие возможности, как перечисление каталогов, чтение одобренных файлов или запись внутри разрешённого рабочего пространства. ИИ-хост подключается через клиент MCP и представляет эти возможности модели или среде выполнения агента.\u003C\u002Fp>\n\u003Cp>Серверу не нужно понимать запрос пользователя на естественном языке. Хост\u002Fмодель решает, какая возможность полезна; сервер MCP выполняет структурированный запрос в соответствии со своими правилами безопасности.\u003C\u002Fp>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Базовый вызов инструмента MCP\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. Хост подключается к серверу\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Приложение, совместимое с MCP, настраивает доступ к внешнему серверу MCP.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. Возможности обнаруживаются\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Клиент узнаёт, какие инструменты, ресурсы или подсказки предоставляет сервер.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. Модель или среда выполнения выбирает возможность\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">ИИ-приложение решает, что нужна одна из предоставленных возможностей.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. Клиент отправляет структурированный запрос\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Аргументы отправляются через MCP на сервер.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. Сервер авторизует и выполняет\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Сервер проверяет запрос и вызывает свою базовую систему.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. Результат возвращается хосту\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Результат становится наблюдением или входными данными контекста.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">7\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">7. Хост решает, что делать дальше\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Модель\u002Fсреда выполнения может ответить, вызвать другой инструмент или продолжить рабочий процесс.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-16\">Где заканчивается простой пример\u003C\u002Fh2>\n\u003Cp>MCP не определяет, как хост выбирает инструмент, как агент планирует, как моделируется бизнес-процесс или как должен вести себя доменный объект, такой как счёт или развёртывание.\u003C\u002Fp>\n\u003Cp>Протокол может сделать интеграцию совместимой, в то время как базовое приложение остаётся некорректным, небезопасным или плохо спроектированным. Полностью допустимый запрос MCP всё равно может вызвать не ту бизнес-возможность.\u003C\u002Fp>\n\u003Cp>Центральная граница такова: MCP стандартизирует семантику интеграции, а не истинность приложения или корректность бизнес-логики.\u003C\u002Fp>\n\u003Ch2 id=\"section-20\">Архитектура MCP: хост, клиент и сервер\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Компонент\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Ответственность\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">AI-хост\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Пользовательское AI-приложение или среда выполнения, которая управляет взаимодействием с моделью, контекстом и общим рабочим процессом\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP-клиент\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Компонент на стороне протокола, используемый хостом для связи с MCP-сервером\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP-сервер\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Публикует возможности и обрабатывает запросы MCP\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Базовая система\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Приложение, API, база данных, файловая система, SaaS-платформа или сервис за MCP-сервером\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Модель\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Выбирает или рассуждает о возможностях в соответствии с дизайном хоста\u002Fсреды выполнения; она не обязательно находится внутри MCP-сервера\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Авторизация\u002Fбизнес-политика\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Определяет, действительно ли разрешена запрошенная операция\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Cp>Хост может подключаться к нескольким MCP-серверам, а один MCP-сервер может обслуживать одну или несколько базовых систем. Хост остаётся ответственным за интеграцию результатов MCP в более широкое AI-приложение.\u003C\u002Fp>\n\u003Cp>Сервер может быть локальным для хоста, работать как отдельный процесс или быть удалённым через сетевой транспорт. Топология размещения и расположение модели — независимые решения.\u003C\u002Fp>\n\u003Ch2 id=\"section-24\">Три основных примитива сервера\u003C\u002Fh2>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Инструменты, ресурсы и промпты решают разные задачи\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Инструменты\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Ресурсы\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Промпты\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Основное назначение\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Типичное взаимодействие\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Пример\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Типичный риск\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-26\">Инструменты: вызываемые возможности\u003C\u002Fh2>\n\u003Cp>Инструменты — это структурированные операции, которые MCP-сервер предоставляет хосту. Инструмент имеет имя, описание и входную схему; современные реализации также могут предоставлять структурированный вывод.\u003C\u002Fp>\n\u003Cp>Примеры включают поиск по репозиторию, чтение записи клиента, создание тикета, запуск сборки или отправку сообщения. Инструменты могут быть только для чтения или иметь побочные эффекты.\u003C\u002Fp>\n\u003Cp>Хорошая поверхность инструментов MCP должна представлять связные цели пользователя или агента, а не механически отражать каждую конечную точку внутреннего API. Операции с разными разрешениями, требованиями к подтверждению или радиусом поражения обычно должны быть отдельными инструментами.\u003C\u002Fp>\n\u003Ch2 id=\"section-30\">Ресурсы: читаемый контекст и данные\u003C\u002Fh2>\n\u003Cp>Ресурсы предоставляют данные или контент, которые клиент может перечислить или прочитать. Они естественно подходят, когда семантическая операция — «дай мне этот артефакт или информацию», а не «выполни это действие».\u003C\u002Fp>\n\u003Cp>URI ресурса не является предоставлением авторизации. Сервер по-прежнему владеет контролем доступа и должен проверять, какой субъект может читать базовый объект.\u003C\u002Fp>\n\u003Cp>Ревизия протокола от 2026-07-28 добавляет семантику кэширования для ответов на список и чтение ресурсов, включая свежесть и область кэша, делая поведение кэширования более явным.\u003C\u002Fp>\n\u003Ch2 id=\"section-34\">Промпты: многоразовые шаблоны\u003C\u002Fh2>\n\u003Cp>Промпты MCP позволяют серверу публиковать многоразовые шаблоны промптов для совместимых клиентов. Это может держать доменно-специфичные инструкции ближе к поставщику возможностей.\u003C\u002Fp>\n\u003Cp>Промпт, предоставленный MCP-сервером, не получает автоматически более высокий приоритет, чем системные или защитные инструкции хоста. Хост решает, как материал промпта входит в его иерархию контекста.\u003C\u002Fp>\n\u003Cp>Таким образом, содержимое промптов, предоставляемое протоколом, следует рассматривать как данные о возможностях с явной семантикой доверия, а не как неограниченный источник инструкций.\u003C\u002Fp>\n\u003Ch2 id=\"section-38\">Инструмент или ресурс?\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Потребность\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Предпочтительно\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Выполнить действие со структурированными аргументами\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Инструмент\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Прочитать конкретный стабильный артефакт\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Ресурс\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Искать или вычислять динамически\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Обычно инструмент\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Изменить внешнее состояние\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Инструмент\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Упаковать многоразовые инструкции промпта\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Промпт\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Длительное асинхронное выполнение\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Инструмент плюс обработка задач приложением\u002Fсредой выполнения или расширение MCP\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-40\">Где находится модель ИИ?\u003C\u002Fh2>\n\u003Cp>MCP не требует, чтобы модель работала на сервере MCP. Модель может размещаться в облаке, локально, быть встроенной в настольное приложение или доступной через другого провайдера.\u003C\u002Fp>\n\u003Cp>Обычно хост отвечает за взаимодействие с моделью. Сервер MCP предоставляет внешние возможности. Поэтому локальный сервер MCP может использоваться хостом, модель которого работает в облаке, а удалённый сервер MCP может использоваться хостом, модель которого работает локально.\u003C\u002Fp>\n\u003Cp>Если сам сервер MCP внутренне вызывает LLM, эта модель является частью реализации сервера за границей протокола; MCP её не требует.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--success my-6 rounded-xl border p-5 border-emerald-300 bg-emerald-50 dark:border-emerald-900 dark:bg-emerald-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Расположение протокола ≠ расположение вывода\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">\u003Cstrong>Локальный MCP не подразумевает локальный вывод, а удалённый MCP не подразумевает удалённый вывод.\u003C\u002Fstrong> Расположение соединения, расположение выполнения инструментов и расположение модели\u002Fпровайдера — это отдельные архитектурные измерения.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-45\">MCP не заменяет API\u003C\u002Fh2>\n\u003Cp>Сервер MCP часто оборачивает существующие API или сервисы. REST, GraphQL, SQL, вызовы SDK и внутренние сервисные контракты могут оставаться точно там, где они есть.\u003C\u002Fp>\n\u003Cp>MCP добавляет уровень взаимодействия, ориентированный на ИИ. Базовый доменный API может оставаться авторитетным контрактом приложения для обычных детерминированных клиентов.\u003C\u002Fp>\n\u003Cp>Поэтому обычная архитектура — сначала API\u002Fсервис, затем выбранные возможности, ориентированные на ИИ, — а не «заменить каждый API на MCP».\u003C\u002Fp>\n\u003Ch2 id=\"section-49\">MCP против вызова функций\u003C\u002Fh2>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Вызов функций и MCP связаны, но не идентичны\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Вызов функций\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">MCP\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Область применения\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Определение инструмента\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Переносимость\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Могут ли они сосуществовать?\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Cp>В настоящее время OpenAI предоставляет удалённые серверы MCP как один тип инструмента наряду с обычным вызовом функций, веб-поиском, оболочкой и другими инструментами. Эта реализация иллюстрирует архитектурную взаимосвязь: подключение MCP и собственный интерфейс вызова инструментов модели могут компоноваться.\u003C\u002Fp>\n\u003Ch2 id=\"section-52\">MCP не создаёт цикл агента\u003C\u002Fh2>\n\u003Cp>Агенту ИИ нужна среда выполнения, которая может принимать решения, вызывать инструменты, наблюдать результаты, обновлять состояние и продолжать или останавливаться. MCP может предоставить некоторые из инструментов и данных, используемых этим циклом.\u003C\u002Fp>\n\u003Cp>Сервер MCP не становится автоматически планировщиком, системой памяти или оркестратором. Эти обязанности обычно остаются в хосте или среде выполнения агента.\u003C\u002Fp>\n\u003Cp>Неагентное приложение также может использовать MCP. Один детерминированный вызов инструмента MCP не требует автономного многошагового агента.\u003C\u002Fp>\n\u003Ch2 id=\"section-56\">MCP против A2A\u003C\u002Fh2>\n\u003Cp>MCP в первую очередь подключает ИИ-хост или агента к таким возможностям, как инструменты, ресурсы и данные. A2A нацелен на сотрудничество между независимыми агентными системами.\u003C\u002Fp>\n\u003Cp>Удалённый агент может внутренне использовать MCP для доступа к базам данных и инструментам, одновременно предоставляя интерфейс A2A другим агентам. Таким образом, протоколы могут быть многоуровневыми, а не взаимозаменяемыми.\u003C\u002Fp>\n\u003Cp>Существующая статья о стеке протоколов содержит более широкое сравнение MCP\u002FA2A\u002FUCP\u002FAP2\u002FA2UI; G02 остаётся каноническим определением MCP.\u003C\u002Fp>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Fstajic.de\u002Fde\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained\" class=\"flex flex-col sm:flex-row gap-4 rounded-xl border border-gray-200 dark:border-gray-700 p-4 transition hover:border-primary-500\">\u003Cdiv class=\"min-w-0 flex-1\">\u003Cstrong class=\"block text-lg text-gray-900 dark:text-gray-100\">MCP против A2A против UCP против AP2 против A2UI: объяснение стека агентных протоколов\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">Более широкая карта ответственности, показывающая, как MCP сочетается с протоколами сотрудничества агентов, коммерции, платёжных полномочий и агентно-управляемого интерфейса.\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">Читать о стеке протоколов →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Ch2 id=\"section-61\">Локальное и удалённое использование MCP имеют разные транспортные реалии\u003C\u002Fh2>\n\u003Cp>MCP может подключаться к локальным и удалённым серверам. Локальные настольные интеграции обычно используют транспорты на уровне процессов, такие как stdio; удалённые серверы используют транспорт на основе HTTP.\u003C\u002Fp>\n\u003Cp>Ревизия от 2026-07-28 делает ядро протокола не имеющим состояния. Запросы несут информацию, необходимую для обработки протокола, вместо того чтобы зависеть от более ранней модели сеанса на уровне протокола.\u003C\u002Fp>\n\u003Cp>Текущая ревизия также помещает имена методов и возможностей в HTTP-заголовки, чтобы шлюзы, WAF, ограничители скорости и балансировщики нагрузки могли более естественно маршрутизировать и измерять трафик MCP.\u003C\u002Fp>\n\u003Ch2 id=\"section-65\">Почему важно учитывать версию MCP\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Эпоха протокола\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Операционная характеристика\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">2025-11-25 и ранее\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Жизненный цикл, ориентированный на рукопожатие\u002Fсеанс, и старое поведение Streamable HTTP\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">2026-07-28\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Ядро без состояния, опциональное обнаружение сервера, самоописывающие запросы, заголовки маршрутизации, подсказки кэша, MRTR и усиление авторизации\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Расширения\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Такие возможности, как Tasks и MCP Apps, могут версионироваться отдельно от базового протокола\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Cp>Версия SDK и версия протокола — это также разные вещи. Текущий TypeScript SDK v2 — это стабильная линия для ревизии 2026-07-28, тогда как более старый v1.x остаётся линией поддержки для поведения эпохи 2025 года.\u003C\u002Fp>\n\u003Cp>Документация по архитектуре должна фиксировать как версию SDK\u002Fбиблиотеки, так и ревизию протокола, когда поведение взаимодействия зависит от них.\u003C\u002Fp>\n\u003Ch2 id=\"section-69\">Что изменилось в MCP 2026-07-28\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Изменение\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Почему это важно\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Ядро без состояния\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Удалённые серверы могут масштабироваться за обычными балансировщиками нагрузки без привязки сеансов на уровне протокола\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">server\u002Fdiscover\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Клиенты могут проверять возможности сервера при необходимости\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Самоописывающие запросы\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Версия протокола и метаданные о возможностях клиента передаются с каждым запросом\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Заголовки Mcp-Method \u002F Mcp-Name\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Шлюзы могут маршрутизировать, измерять и применять политики без разбора тел запросов\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Подсказки кэша\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Списки и чтение ресурсов сообщают о свежести и области совместного использования\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Многораундовые запросы\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Серверы могут требовать дополнительный ввод без более старой двунаправленной модели запросов\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Усиление авторизации\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Проверка издателя и привязка учётных данных укрепляют поведение удалённой аутентификации\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Фреймворк расширений\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Tasks, MCP Apps и другие возможности могут развиваться отдельно\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-71\">Roots, sampling и logging больше не являются направлением для новых реализаций\u003C\u002Fh2>\n\u003Cp>Выпуск 2026-07-28 помечает roots, sampling и logging как устаревшие возможности протокола с определённым окном совместимости.\u003C\u002Fp>\n\u003Cp>Старые руководства могут по-прежнему описывать эти возможности как центральные примитивы. При новой реализации следует опираться на текущую спецификацию, а не слепо копировать старые диаграммы жизненного цикла.\u003C\u002Fp>\n\u003Cp>Устаревание не означает немедленное удаление. Оно означает, что новые системы должны избегать ненужных новых зависимостей от возможностей, от которых протокол отходит.\u003C\u002Fp>\n\u003Ch2 id=\"section-75\">Длительная работа — это не то же самое, что обычный вызов инструмента MCP\u003C\u002Fh2>\n\u003Cp>Длительные операции требуют семантики жизненного цикла, выходящей за рамки простого немедленного результата инструмента. В текущей экосистеме Tasks перешли в выделенное расширение MCP.\u003C\u002Fp>\n\u003Cp>Это подкрепляет полезный принцип проектирования: базовому протоколу не нужно вбирать в себя все аспекты среды выполнения агента.\u003C\u002Fp>\n\u003Cp>Приложение также может полностью сохранять ответственность за длительные рабочие процессы в своей собственной среде выполнения и использовать обычные инструменты MCP как базовые операции.\u003C\u002Fp>\n\u003Ch2 id=\"section-79\">MCP Apps расширяют возможности пользовательского интерфейса, не переопределяя ядро протокола\u003C\u002Fh2>\n\u003Cp>MCP Apps связывают более насыщенный интерактивный пользовательский интерфейс с инструментами MCP через модель расширений.\u003C\u002Fp>\n\u003Cp>Хост по-прежнему контролирует, как этот интерфейс встраивается, изолируется в песочнице и защищается.\u003C\u002Fp>\n\u003Cp>Поэтому обмен базовыми возможностями и отрисовка пользовательского интерфейса должны оставаться отдельными архитектурными обязанностями.\u003C\u002Fp>\n\u003Ch2 id=\"section-83\">Авторизация MCP — это не ваша полная модель авторизации\u003C\u002Fh2>\n\u003Cp>Удалённому MCP нужны механизмы аутентификации и авторизации на уровне протокола, чтобы клиенты и серверы могли устанавливать доверенный доступ. Текущая спецификация продолжает усиливать поведение, связанное с OAuth\u002FOIDC.\u003C\u002Fp>\n\u003Cp>Этот уровень отвечает на вопрос, разрешено ли клиенту подключаться или запрашивать области действия протокола. Он не отвечает автоматически на вопрос, может ли Алиса вернуть заказ 123, может ли агент записывать производственную конфигурацию или может ли арендатор A читать данные арендатора B.\u003C\u002Fp>\n\u003Cp>Эти доменные решения относятся к модели авторизации сервера\u002Fприложения и должны применяться до вызова базовой операции.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--warning my-6 rounded-xl border p-5 border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Никогда не приравнивайте «аутентифицированный клиент MCP» к «доверенный для любого инструмента»\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Доверие соединения, видимость инструментов, разрешение на инструменты, авторизация пользователя, изоляция арендаторов и бизнес-одобрение — это разные механизмы контроля. Держите их раздельно.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-88\">Идентичность может пересекать несколько границ\u003C\u002Fh2>\n\u003Cp>Запрос MCP может включать клиентское приложение MCP, вошедшего в систему человека, идентичность агента\u002Fсессии и учётную запись нижестоящего сервиса.\u003C\u002Fp>\n\u003Cp>Серверу нужна явная политика того, от имени какого субъекта выполняется операция. В противном случае мощные учётные данные сервиса могут стать путём для атаки «сбитый с толку заместитель».\u003C\u002Fp>\n\u003Cp>Для корпоративного использования корреляция между идентичностью пользователя, идентичностью агента, MCP-соединением и последующей авторизацией так же важна, как и совместимость протоколов.\u003C\u002Fp>\n\u003Ch2 id=\"section-92\">Изоляция арендаторов остаётся за пределами обнаружения возможностей MCP\u003C\u002Fh2>\n\u003Cp>Мультитенантный MCP-сервер должен применять область арендатора при чтении или изменении ресурсов, принадлежащих арендатору. Возврат инструмента с именем search_documents не определяет, документы какого арендатора являются допустимыми.\u003C\u002Fp>\n\u003Cp>Область арендатора должна определяться на основе доверенной идентичности или членства и передаваться в базы данных, кэши, векторный поиск, объектное хранилище и нижестоящие API.\u003C\u002Fp>\n\u003Cp>Получение контента другого арендатора и просьба к модели не использовать его — это уже нарушение изоляции.\u003C\u002Fp>\n\u003Ch2 id=\"section-96\">MCP не определяет источник истины\u003C\u002Fh2>\n\u003Cp>MCP-сервер может предоставлять базу данных, хранилище документов, сервис веб-поиска или сводку, сгенерированную ИИ. Протокол не указывает, какой источник является авторитетным для утверждения.\u003C\u002Fp>\n\u003Cp>Правила источника истины относятся к архитектуре приложения\u002Fпредметной области. Хост или сервер может закодировать авторитетность через дизайн инструментов, метаданные, политику доступа или валидацию, но сам MCP не делает одну возможность «истинной».\u003C\u002Fp>\n\u003Cp>Таким образом, инструмент может быть полностью вызываемым через MCP и при этом возвращать устаревшую, второстепенную или неавторитетную информацию.\u003C\u002Fp>\n\u003Ch2 id=\"section-100\">MCP и контекстная инженерия\u003C\u002Fh2>\n\u003Cp>MCP может увеличить возможности и информацию, доступные ИИ-приложению, но контекстная инженерия по-прежнему определяет, что доходит до модели.\u003C\u002Fp>\n\u003Cp>Каталоги инструментов потребляют видимый модели контекст во многих хостах. Результаты инструментов могут быть большими. Ресурсов может быть много. Хосту нужны выбор, фильтрация, динамическая загрузка и сжатие, а не раскрытие всего на каждом ходу.\u003C\u002Fp>\n\u003Cp>Поэтому доступность возможностей и видимый модели контекст следует рассматривать как отдельные слои.\u003C\u002Fp>\n\u003Ch2 id=\"section-104\">Проектируйте инструменты MCP вокруг результатов и границ риска\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Слабый дизайн инструмента\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Более сильный дизайн инструмента\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">execute_api(method,url,body)\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Узкие доменные инструменты с валидированными операциями\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Один административный инструмент для всех действий\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Раздельные операции чтения\u002Fзаписи\u002Fодобрения\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сырой внутренний API, зеркально отражённый 1:1\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Контракт, ориентированный на ИИ, вокруг согласованных пользовательских целей\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Один широкий инструмент файловой системы\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Операции чтения\u002Fзаписи в пределах рабочего пространства\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Политика безопасности только в описании\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сервер применяет политику в коде\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Неограниченный сырой ответ\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Структурированный вывод, значимый для решений\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Удаление\u002Fобновление смешано с чтением\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Раздельные инструменты с побочными эффектами с политикой подтверждения\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-106\">Одобрения относятся к архитектуре исполнения\u003C\u002Fh2>\n\u003Cp>Хост может требовать одобрения пользователя перед вызовом выбранных инструментов MCP. Текущая интеграция MCP от OpenAI поддерживает автоматический режим исполнения или режим с явным одобрением.\u003C\u002Fp>\n\u003Cp>Одобрение хостом полезно, но не должно быть единственной защитой сервера, поскольку другой совместимый MCP-клиент может использовать иную модель одобрения.\u003C\u002Fp>\n\u003Cp>Для деструктивных или финансово значимых действий используйте эшелонированную защиту: четкий контракт инструмента, одобрение во время выполнения, где это уместно, серверную авторизацию, бизнес-валидацию и аудит.\u003C\u002Fp>\n\u003Ch2 id=\"section-110\">Наблюдаемость MCP должна связывать вызовы протокола с действиями в предметной области\u003C\u002Fh2>\n\u003Cp>Трассировка MCP наиболее полезна, когда ее можно сопоставить с вызовом приложения, изменением базы данных или бизнес-транзакцией.\u003C\u002Fp>\n\u003Cp>Экосистема 2026-07-28 стандартизирует соглашения о распространении W3C Trace Context, что упрощает отслеживание запроса через хост, клиент, сервер и нижестоящие сервисы.\u003C\u002Fp>\n\u003Cp>Одних логов протокола недостаточно для значимых операций. Аудиторские доказательства должны также фиксировать соответствующего субъекта, арендатора, целевой ресурс, одобрение и результирующее изменение состояния.\u003C\u002Fp>\n\u003Ch2 id=\"section-114\">Что MCP не может исправить\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Проблема\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Почему MCP ее не решает\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Плохой бизнес-API\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP может предоставлять плохой API более согласованно\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Неверные данные\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Валидность протокола не создает фактическую корректность\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Отсутствие изоляции арендаторов\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Обнаружение инструментов не обеспечивает владение ресурсами\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Чрезмерные привилегии\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Стандартизированный инструмент все еще может иметь избыточные привилегии\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Плохое планирование агента\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP предоставляет возможности; среда выполнения\u002Fмодель все еще выбирает, как их использовать\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Плохой дизайн повторных попыток\u002Fидемпотентности\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Вызовы протокола не делают побочные эффекты безопасными\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Нет источника истины\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP не решает, какая система владеет фактом\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Слабая оценка\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Совместимость не доказывает успех задачи\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Нет политики аудита\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Трассировки транспорта не определяют хранение или подотчетность\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Несоответствие протокола\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Старые\u002Fновые версии все еще могут требовать миграции или обработки совместимости\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-116\">Доказательства оригинальной реализации: Aaasaasa AI Client\u003C\u002Fh2>\n\u003Caside class=\"editorjs-callout editorjs-callout--note my-6 rounded-xl border p-5 border-gray-300 bg-gray-50 dark:border-gray-700 dark:bg-gray-900\u002F40\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Доказательства реализации\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Aaasaasa AI Client содержит аутентифицированный локальный коннектор\u002Fброкер MCP для одобренных локальных каталогов и интеграцию через Secure MCP Tunnel. Это конкретное доказательство реализации для границы протокола и архитектуры разрешений, а не заявление о универсальной коммерческой платформе MCP.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Cp>Приложение может запускать аутентифицированную конечную точку Streamable HTTP MCP на loopback. Конечная точка предоставляет только каталоги, выбранные через центральный брокер разрешений рабочей области.\u003C\u002Fp>\n\u003Cp>Локальная конечная точка и удаленный маршрут — это отдельные вопросы: локальный коннектор может привязываться только к loopback, в то время как Secure MCP Tunnel может сделать одобренный сервис MCP доступным для разрешенного внешнего AI-клиента, не открывая всю локальную машину.\u003C\u002Fp>\n\u003Cp>Центральная модель разрешений различает профили только для чата, только для чтения, записи в проект и пользовательских каталогов. Direct Chat не имеет доступа к файловой системе или оболочке; среды выполнения агентов с поддержкой инструментов используют выбранный профиль разрешений.\u003C\u002Fp>\n\u003Cp>Это прямая реализация границы G02: MCP обеспечивает стандартизированное подключение возможностей, в то время как принадлежащий приложению брокер разрешений решает, какие каталоги сервер может предоставлять.\u003C\u002Fp>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Реализованный элемент\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Архитектурное доказательство\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Аутентифицированная локальная конечная точка MCP\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сервер MCP может быть локальным детерминированным сервисом возможностей\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Привязка к loopback\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сетевое воздействие и возможности протокола — это отдельные решения\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Интеграция Secure MCP Tunnel\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Частный\u002Fлокальный MCP может быть связан через контролируемый маршрут\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Центральный брокер разрешений\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Возможности MCP ограничены политикой приложения\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Выбранная область каталога\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Видимость файловой системы явно ограничена\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Direct Chat без инструментов ОС\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Доступ к модели не подразумевает автоматически доступ к инструментам\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Caside class=\"editorjs-callout editorjs-callout--warning my-6 rounded-xl border p-5 border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Граница доказательств\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Реализация демонстрирует подключение MCP и предоставление локальных каталогов с ограничением по разрешениям. Это не подразумевает, что реализованы все примитивы MCP, все функции 2026-07-28 или все корпоративные расширения авторизации.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-124\">Когда MCP хорошо подходит\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">MCP хорошо подходит, когда\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Прямая интеграция может быть проще, когда\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Одна и та же возможность должна быть многоразовой в нескольких AI-хостах\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Одно приложение владеет обеими сторонами, и переносимость имеет мало ценности\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Внешняя система хочет публиковать обнаруживаемые инструменты\u002Fресурсы для AI\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Достаточно одного стабильного внутреннего вызова API\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Вы хотите стандартную границу вокруг локальных инструментов\u002Fданных\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Нет требования совместимости для AI\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Поставщики инструментов и AI-клиенты развиваются независимо\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Интеграция намеренно частная и тесно связанная\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Вы хотите совместимое с экосистемой обнаружение возможностей\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Набор возможностей крошечный и фиксирован в коде приложения\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-126\">Когда MCP не нужен\u003C\u002Fh2>\n\u003Cp>Не добавляйте MCP только потому, что приложение использует ИИ. Если ваш бэкенд уже вызывает один внутренний API и никакому независимому MCP-клиенту эта возможность не нужна, обычный вызов функции или сервиса может оказаться понятнее.\u003C\u002Fp>\n\u003Cp>MCP приносит пользу на границе совместимости. Без такой границы протокол может превратиться в ненужный слой адаптера.\u003C\u002Fp>\n\u003Cp>Архитектурный вопрос не в том, «есть ли в этом проекте ИИ?», а в том, «получают ли независимо развивающиеся ИИ-хосты и поставщики возможностей выгоду от стандартного контракта?»\u003C\u002Fp>\n\u003Ch2 id=\"section-130\">Контрольный список безопасности MCP\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Граница\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Вопрос\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Идентичность сервера\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">К какому MCP-серверу я на самом деле подключён?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Идентичность клиента\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какое приложение\u002Fклиент запрашивает доступ?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Идентичность конечного пользователя\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">От чьего имени выполняется операция?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Список разрешённых инструментов\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какие возможности этот хост\u002Fагент может обнаруживать и вызывать?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Бизнес-разрешение\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Может ли этот субъект выполнить данную операцию?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Область арендатора\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какая граница арендатора\u002Fресурса применяется?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Изоляция учётных данных\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Привязаны ли учётные данные правильно и хранятся ли они вне контекста модели?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Одобрение\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какие побочные эффекты требуют подтверждения человеком?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Проверка входных данных\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Проверяются ли аргументы инструмента независимо от вывода модели?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Доверие к выводу\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Может ли возвращаемое содержимое содержать недоверенные инструкции или конфиденциальные данные?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Сетевая доступность\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Не подвергается ли локальный сервер случайному воздействию за пределами предполагаемых интерфейсов?\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Аудит\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Можно ли сопоставить вызов протокола с последующим действием?\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-132\">Распространённые заблуждения\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Заблуждение\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Исправление\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«MCP-сервер — это ИИ-сервер».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Это может быть обычное детерминированное программное обеспечение, предоставляющее возможности.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«Мне нужна собственная LLM на MCP-сервере».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Нет. Модель может полностью находиться на стороне хоста.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«MCP заменяет REST API».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP часто оборачивает существующие API для совместимости с ИИ.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«MCP — это агентный фреймворк».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP предоставляет возможности; среда выполнения агента управляет итерациями и состоянием.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«MCP и вызов функций конкурируют».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Хост может связать возможности MCP с интерфейсом инструментов своей модели.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«MCP заменяет A2A».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">MCP сосредоточен на интеграции возможностей; A2A — на взаимодействии агентов.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«Если инструмент указан, пользователь может его вызвать».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Обнаружение — это не авторизация.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«OAuth решает вопросы бизнес-разрешений».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Авторизация подключения не заменяет доменную авторизацию или изоляцию арендаторов.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«Локальный MCP означает локальный ИИ».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Расположение сервера инструментов и расположение вывода не зависят друг от друга.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«MCP делает вывод инструментов заслуживающим доверия».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Качество данных, полномочия и происхождение по-прежнему принадлежат источнику\u002Fприложению.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«Один гигантский универсальный инструмент — это гибко».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Слишком широкие инструменты ослабляют разрешения, проверку и наблюдаемость.\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">«Старые руководства соответствуют текущей реализации».\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Редакция от 2026-07-28 существенно изменила поведение жизненного цикла и транспорта.\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-134\">Практическая последовательность проектирования MCP\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Спроектируйте границу до реализации сервера\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. Определите границу совместимости\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Убедитесь, что независимым ИИ-хостам действительно нужен многоразовый доступ.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. Сохраните доменный API авторитетным\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Сохраните реальный контракт приложения\u002Fсервиса за MCP.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. Выбирайте примитивы осознанно\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Используйте инструменты, ресурсы и подсказки в соответствии с их семантикой.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. Разделяйте по риску и разрешениям\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Отделите операции чтения, записи, разрушительные и требующие одобрения.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. Определите распространение идентичности\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Знайте, какого клиента, пользователя, агента и нижестоящего субъекта представляет каждый вызов.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. Обеспечьте бизнес-авторизацию\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Проверяйте разрешения, область арендатора и принадлежность цели.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">7\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">7. Выберите локальный или удалённый транспорт\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Сопоставьте топологию развёртывания с реальной потребностью.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">8\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">8. Зафиксируйте ожидания по протоколу\u002FSDK\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Документируйте совместимость версии 2026-07-28 со старыми версиями.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">9\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">9. Добавьте одобрения для значимых действий\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Используйте средства подтверждения, соответствующие риску.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">10\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">10. Проектируйте структурированные выводы\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Возвращайте краткие результаты, пригодные для машинной обработки.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">11\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">11. Добавьте трассировку и корреляцию аудита\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Свяжите вызовы MCP с нижестоящими сервисными\u002Fбизнес-событиями.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">12\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">12. Проверьте переносимость\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Проверьте более одного клиента там, где совместимость является заявленным требованием.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-136\">Контрольный список архитектуры MCP\u003C\u002Fh2>\n\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Вопрос\u003C\u002Fth>\u003Cth class=\"border border-gray-300 px-4 py-2 text-left font-semibold\">Ожидаемый ответ\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Зачем нужен MCP?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Реальная граница совместимости с ИИ\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Что предоставляет сервер?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Явные инструменты\u002Fресурсы\u002Fподсказки\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Где выполняется модель?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Независимое решение хоста\u002Fпоставщика\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Где выполняется инструмент?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Указанное расположение сервера\u002Fсреды выполнения\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какая редакция протокола ожидается?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Контракт с учётом версии\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Кто является запрашивающим субъектом?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Модель идентичности клиента\u002Fпользователя\u002Fагента\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какие инструменты могут быть обнаружены?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Политика списка разрешённых\u002Fвозможностей\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какие операции могут выполняться?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Бизнес-авторизация на стороне сервера\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Как обеспечивается область арендатора\u002Fресурса?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Проверки доверенной принадлежности арендатора\u002Fресурса\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Какие действия требуют одобрения?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Политика подтверждения на основе риска\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Как защищены учётные данные?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Доверенное хранилище среды выполнения, а не секреты, видимые модели\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Как ограничен вывод?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Контракт структурированного релевантного результата\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Как отслеживаются вызовы?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Корреляция через MCP с нижестоящим действием\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Что произойдёт, если MCP недоступен?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Определённое поведение при отказе\u002Fрезервном варианте\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Может ли другой совместимый хост его использовать?\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-2\">Переносимость проверена там, где требуется\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"section-138\">Краевые случаи и ограничения\u003C\u002Fh2>\n\u003Cp>Локальный stdio MCP-сервер может иметь небольшую сетевую доступность, но всё равно быть опасным, если сам процесс обладает чрезмерными правами доступа к файловой системе или оболочке.\u003C\u002Fp>\n\u003Cp>Удалённый MCP-сервер может предоставлять только публичную документацию или особо чувствительные корпоративные действия. «Удалённый MCP» мало говорит о риске без контекста возможностей и авторизации.\u003C\u002Fp>\n\u003Cp>Некоторые серверы могут использовать только инструменты и игнорировать ресурсы\u002Fподсказки. Совместимость с MCP не требует, чтобы каждый необязательный примитив был одинаково важен.\u003C\u002Fp>\n\u003Cp>Хост может транслировать между своей внутренней моделью инструментов и MCP. Пользователи могут никогда не видеть границу протокола напрямую, что допустимо, если безопасность и атрибуция остаются ясными.\u003C\u002Fp>\n\u003Cp>MCP продолжает быстро развиваться. Расширения, шаблоны авторизации, API SDK и соглашения экосистемы могут меняться быстрее, чем основное архитектурное различие.\u003C\u002Fp>\n\u003Ch2 id=\"section-144\">Что могло бы изменить этот ответ?\u003C\u002Fh2>\n\u003Cp>Будущие редакции MCP могут изменить жизненный цикл, транспорты, авторизацию и механизмы расширения. Редакция июля 2026 года уже демонстрирует, почему утверждения, специфичные для конкретной реализации, должны быть датированы.\u003C\u002Fp>\n\u003Cp>Каноническая граница изменилась бы только в том случае, если бы MCP расширился от протокола взаимодействия до стандарта сквозной архитектуры приложений\u002Fагентов. Это не то, что определяет текущий протокол.\u003C\u002Fp>\n\u003Cp>Для работы с реализацией всегда проверяйте текущую спецификацию и точную версию SDK вместо копирования примеров, чувствительных к версии, из старых руководств.\u003C\u002Fp>\n\u003Ch2 id=\"section-148\">Связанные канонические знания\u003C\u002Fh2>\n\u003Cp>MCP находится ниже уровня Agentic AI: сначала поймите границу агента\u002Fсреды выполнения\u002Fинструмента, затем используйте MCP, когда внешним возможностям нужен переносимый протокольный контракт.\u003C\u002Fp>\n\u003Cp>MCP также зависит от RBAC и изоляции арендаторов, поскольку предоставление возможностей на уровне протокола не определяет авторизацию приложения.\u003C\u002Fp>\n\u003Cp>Более широкая статья о стеке протоколов объясняет, где MCP находится рядом с A2A, UCP, AP2 и A2UI. G02 остаётся каноническим источником для самого MCP.\u003C\u002Fp>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Fstajic.de\u002Fru\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough\" class=\"flex flex-col sm:flex-row gap-4 rounded-xl border border-gray-200 dark:border-gray-700 p-4 transition hover:border-primary-500\">\u003Cdiv class=\"min-w-0 flex-1\">\u003Cstrong class=\"block text-lg text-gray-900 dark:text-gray-100\">Надёжность AI-агентов: почему окончательного ответа недостаточно\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">Вызовы инструментов MCP становятся частью траектории агента; надёжные системы должны оценивать действия и наблюдения, а не только окончательный текст.\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">Читать статью о надёжности агентов →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Ch2 id=\"section-153\">Часто задаваемые вопросы\u003C\u002Fh2>\n\u003Csection class=\"editorjs-faq my-6 rounded-xl border border-gray-200 p-5 dark:border-gray-700\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">FAQ по Model Context Protocol\u003C\u002Fh3>\u003Cdiv id=\"faq1\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Что такое MCP?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Model Context Protocol — это открытый клиент-серверный протокол для подключения AI-приложений к внешним инструментам, ресурсам, подсказкам и поставщикам возможностей через стандартизированный контракт.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq2\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Нужна ли MCP-серверу AI-модель?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Нет. MCP-сервер может быть полностью детерминированным программным обеспечением. Модель обычно работает в AI-хосте или среде выполнения агента, хотя сервер может опционально использовать AI внутри себя.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq3\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">В чём разница между MCP-клиентом и сервером?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Клиент — это протокольный компонент, используемый AI-хостом для связи с поставщиками возможностей. Сервер публикует и выполняет возможности, которые он предоставляет.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq4\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Заменяет ли MCP вызов функций?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Нет. Вызов функций\u002Fинструментов — это то, как модель вызывает настроенные возможности. MCP стандартизирует обнаружение и взаимодействие с внешними серверами возможностей. Хост может связать эти два механизма.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq5\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Заменяет ли MCP REST API?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Нет. MCP-серверы часто оборачивают существующие REST, GraphQL, базы данных или сервисные API и обеспечивают уровень взаимодействия, ориентированный на AI.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq6\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Является ли MCP фреймворком для агентов?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Нет. MCP предоставляет возможности. Планирование агента, состояние, память, управление контекстом, повторные попытки, оркестрация и остановка относятся к окружающей среде выполнения.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq7\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">В чём разница между MCP и A2A?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">MCP в первую очередь соединяет AI-хост или агента с инструментами и поставщиками данных. A2A соединяет независимые агентные системы для сотрудничества и делегирования.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq8\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Обрабатывает ли MCP авторизацию?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">MCP включает механизмы авторизации на уровне протокола, особенно для удалённых серверов, но приложение всё равно должно обеспечивать соблюдение бизнес-разрешений, владения ресурсами и изоляции арендаторов.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq9\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Может ли MCP работать с локальными моделями?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Да. Расположение модели не зависит от MCP. Хост с локальной моделью может вызывать локальные или удалённые MCP-серверы, а хост с облачной моделью может использовать одобренные локальные или удалённые MCP-серверы через соответствующую архитектуру подключения.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq10\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Какая текущая версия спецификации MCP?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">По состоянию на 8 октября 2026 года текущая редакция спецификации — 2026-07-28. Более старые реализации эпохи 2025 года всё ещё используются, поэтому совместимость необходимо проверять.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-155\">Глоссарий\u003C\u002Fh2>\n\u003Csection class=\"editorjs-glossary my-6 rounded-xl border border-gray-200 dark:border-gray-700 p-5\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Ключевые термины MCP\u003C\u002Fh3>\u003Cdl>\u003Cdiv id=\"mcp\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">MCP\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Model Context Protocol, открытый протокол для совместимых соединений между AI-хостами\u002Fклиентами и внешними серверами возможностей.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mcp-host\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">MCP-хост\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">AI-приложение или среда выполнения, которая управляет взаимодействием с моделью и использует MCP-клиенты для подключения к серверам.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mcp-client\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">MCP-клиент\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Протокольный компонент на стороне хоста, который взаимодействует с MCP-сервером.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mcp-server\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">MCP-сервер\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Поставщик возможностей, который реализует MCP и предоставляет инструменты, ресурсы, подсказки или поддерживаемые расширения.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mcp-tool\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Инструмент\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Вызываемая структурированная возможность, предоставляемая MCP-сервером.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mcp-resource\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Ресурс\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Читаемые данные или контент, предоставляемые через методы ресурсов MCP.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mcp-prompt\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Подсказка\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Многоразовый шаблон подсказки, предоставляемый MCP-сервером для совместимых хостов.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"streamable-http\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Streamable HTTP\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Ориентированный на HTTP транспорт MCP, используемый для связи с удалёнными\u002Fсетевыми серверами.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"stdio\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">stdio\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Транспорт стандартного ввода\u002Fвывода процесса, обычно используемый для локальных интеграций MCP-серверов.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"server-discover\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">server\u002Fdiscover\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Современный метод MCP, позволяющий клиенту inspect возможности сервера в эпоху протокола 2026-07-28.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mrtr\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">MRTR\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Multi Round-Trip Requests, механизм получения дополнительных входных данных во время запроса в эпоху протокола 2026-07-28.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"mcp-extension\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Расширение MCP\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Возможность, которая компонуется с базовым протоколом и может развиваться\u002Fверсионироваться отдельно, например Tasks или MCP Apps.\u003C\u002Fdd>\u003C\u002Fdiv>\u003C\u002Fdl>\u003C\u002Fsection>\n\u003Ch2 id=\"section-157\">Заключение\u003C\u002Fh2>\n\u003Cp>MCP проще всего понять, когда его граница остаётся узкой: он соединяет AI-приложения с внешними возможностями через стандартный протокол.\u003C\u002Fp>\n\u003Cp>Модель не обязана находиться на MCP-сервере. Сервер не становится средой выполнения агента. Перечисленный инструмент не становится авторизованным бизнес-действием. И MCP не заменяет базовый API, источник истины, изоляцию арендаторов или доменную архитектуру.\u003C\u002Fp>\n\u003Cp>Эта узость — сила протокола. MCP может стандартизировать то, как AI-системы достигают инструментов и данных, оставляя владение приложением, безопасность, бизнес-семантику и выбор модели на тех уровнях, которые действительно ими владеют.\u003C\u002Fp>\n\u003Ch2 id=\"section-161\">Первичные источники и текущая документация\u003C\u002Fh2>\n\u003Cp>MCP быстро развивается, поэтому утверждения, чувствительные к версии, в этой статье привязаны к состоянию на 8 октября 2026 года. Раздел Aaasaasa AI Client является оригинальным доказательством реализации и явно ограничен проверенным MCP-коннектором и областью брокера разрешений.\u003C\u002Fp>\n\u003Ca href=\"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Model Context Protocol — TypeScript SDK v2\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Актуальная документация стабильного TypeScript SDK, реализующего спецификацию MCP от 2026-07-28 и примитивы сервера\u002Fклиента.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fblog.modelcontextprotocol.io\u002Fposts\u002F2026-07-28\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Model Context Protocol — выпуск спецификации от 2026-07-28\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальное объяснение выпуска текущей редакции протокола MCP, включая stateless-ядро, MRTR, маршрутизацию, кэширование, усиление авторизации, расширения и устаревшие элементы.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002Fmigration\u002Fsupport-2026-07-28\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">MCP TypeScript SDK — поддержка редакции протокола 2026-07-28\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Руководство по реализации для текущей редакции протокола и совместимости с более ранними версиями.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools-connectors-mcp\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">OpenAI — серверы MCP\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Актуальные рекомендации OpenAI по подключению моделей к удалённым серверам MCP и локальным\u002Fприватным серверам MCP через Secure MCP Tunnel.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fagents-api\u002Ftools\u002Fmcp\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">OpenAI — подключения MCP для Agents API\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Актуальные рекомендации по подключению MCP, охватывающие сервисные, средовые и stdio-локации, а также управление разрешёнными инструментами.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">OpenAI — инструменты\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Актуальный обзор, в котором удалённые серверы MCP рассматриваются наряду с вызовом функций, веб-поиском, оболочкой и другими инструментами модели.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevelopers.openai.com\u002Fplugins\u002Fconcepts\u002Fmcp-server\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">OpenAI — концепция сервера MCP\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Актуальное описание серверов MCP, предоставляющих инструменты, ресурсы и подсказки для интеграций с внешними сервисами.\u003C\u002Fp>\u003C\u002Fa>",{"time":212,"blocks":213,"version":1610},1791487012600,[214,220,228,235,242,249,257,262,267,272,277,282,287,292,297,326,331,336,341,346,351,378,383,388,393,427,432,437,442,447,452,457,462,467,472,477,482,487,492,517,522,527,532,537,543,548,553,558,563,568,597,602,607,612,617,622,627,632,637,642,651,656,661,666,671,676,693,698,703,708,740,745,750,755,760,765,770,775,780,785,790,795,800,805,810,815,820,826,831,836,841,846,851,856,861,866,871,876,881,886,891,896,901,906,911,940,945,950,955,960,965,970,975,980,985,1023,1028,1034,1039,1044,1049,1054,1080,1086,1091,1114,1119,1124,1129,1134,1139,1183,1188,1232,1237,1279,1284,1336,1341,1346,1351,1356,1361,1366,1371,1376,1381,1386,1391,1396,1401,1406,1414,1419,1465,1470,1516,1521,1526,1531,1536,1541,1546,1556,1565,1574,1583,1592,1601],{"id":215,"data":216,"type":218,"tunes":219},"intro",{"text":217},"Протокол контекста модели (MCP) — это открытый протокол для подключения ИИ-приложений к внешним возможностям и информации через стандартизированные контракты клиент-сервер. Сервер MCP может предоставлять инструменты, ресурсы и подсказки; хост или клиент, совместимый с MCP, обнаруживает и использует эти возможности от имени ИИ-приложения. MCP не требует, чтобы сервер запускал собственную языковую модель, и не заменяет среду выполнения агента, бизнес-авторизацию, изоляцию арендаторов, API приложений или доменную архитектуру, стоящую за предоставляемыми возможностями.","paragraph",{},{"id":221,"data":222,"type":226,"tunes":227},"direct",{"body":223,"title":224,"variant":225},"\u003Cstrong>MCP стандартизирует границу между ИИ-хостом и внешними поставщиками возможностей.\u003C\u002Fstrong>\u003Cbr>\u003Cbr>Полезная ментальная модель:\u003Cbr>\u003Cstrong>Пользователь → ИИ-хост \u002F среда выполнения агента → клиент MCP → сервер MCP → приложение\u002FAPI\u002Fданные\u002Fинструмент\u003C\u002Fstrong>.\u003Cbr>\u003Cbr>Модель может полностью оставаться на стороне хоста. Сервер MCP может быть обычным детерминированным программным обеспечением, предоставляющим структурированные возможности.","Прямой ответ","info","callout",{},{"id":229,"data":230,"type":226,"tunes":234},"server-no-ai",{"body":231,"title":232,"variant":233},"Сервер MCP для файловой системы может перечислять или читать файлы. Сервер MCP для базы данных может выполнять одобренные запросы. Сервер MCP для Jira может предоставлять операции с задачами. Ни одному из этих серверов не нужна LLM для выполнения контракта MCP. Если сервер внутренне использует ИИ, это выбор реализации за границей протокола, а не требование MCP.","Серверу MCP не нужна собственная ИИ-модель","success",{},{"id":236,"data":237,"type":226,"tunes":241},"boundary",{"body":238,"title":239,"variant":240},"Если сервер MCP предоставляет \u003Ccode>delete_file\u003C\u002Fcode>, \u003Ccode>refund_order\u003C\u002Fcode> или \u003Ccode>deploy_service\u003C\u002Fcode>, это означает лишь, что возможность существует. Сервер\u002Fприложение всё равно должны обеспечивать идентификацию, разрешения, область арендатора, бизнес-правила, требования подтверждения и средства аудита. Обнаружение протокола никогда не должно незаметно становиться авторизацией.","Возможность MCP — это не бизнес-полномочие","warning",{},{"id":243,"data":244,"type":226,"tunes":248},"current",{"body":245,"title":246,"variant":247},"Текущая редакция спецификации MCP — \u003Cstrong>2026-07-28\u003C\u002Fstrong>. Её главное изменение — безсостояниевое ядро протокола с самоописывающими запросами, опциональным \u003Ccode>server\u002Fdiscover\u003C\u002Fcode>, маршрутизируемыми HTTP-заголовками, кэшируемыми ответами списков\u002Fресурсов, усилением авторизации и формальной моделью расширений. TypeScript SDK v2 — текущая стабильная линейка SDK, реализующая эту редакцию. Более старые клиенты и серверы эпохи 2025 года всё ещё существуют, поэтому рекомендации по реализации должны учитывать версию.","Примечание об актуальном источнике — 8 октября 2026 г.","note",{},{"id":250,"data":251,"type":255,"tunes":256},"toc",{"title":252,"maxLevel":253,"minLevel":254},"Содержание",3,2,"tableOfContents",{},{"id":258,"data":259,"type":42,"tunes":261},"h-meaning",{"text":260,"level":254},"Что на самом деле стандартизирует MCP",{},{"id":263,"data":264,"type":218,"tunes":266},"p-meaning-1",{"text":265},"До MCP каждое ИИ-приложение могло интегрировать внешние системы через собственную схему инструментов, формат плагинов, соглашение об аутентификации и код подключения. Одной и той же службе могли потребоваться разные адаптеры для настольного ИИ-клиента, агента IDE и пользовательского приложения.",{},{"id":268,"data":269,"type":218,"tunes":271},"p-meaning-2",{"text":270},"MCP создаёт многоразовую границу протокола. Внешняя система предоставляет возможности через сервер MCP, а совместимые ИИ-хосты реализуют клиент MCP. Это снижает связанность интеграции между ИИ-приложением и базовым поставщиком инструментов или данных.",{},{"id":273,"data":274,"type":218,"tunes":276},"p-meaning-3",{"text":275},"Протокол не стандартизирует всё приложение. Он стандартизирует то, как возможности описываются, обнаруживаются и вызываются через эту границу.",{},{"id":278,"data":279,"type":42,"tunes":281},"h-simple",{"text":280,"level":254},"Простейший пример",{},{"id":283,"data":284,"type":218,"tunes":286},"p-simple-1",{"text":285},"Предположим, ИИ-приложению для программирования нужен доступ к локальному каталогу проекта. Без MCP приложение могло бы реализовать собственную интеграцию с файловой системой напрямую.",{},{"id":288,"data":289,"type":218,"tunes":291},"p-simple-2",{"text":290},"С MCP сервер файловой системы может предоставлять такие возможности, как перечисление каталогов, чтение одобренных файлов или запись внутри разрешённого рабочего пространства. ИИ-хост подключается через клиент MCP и представляет эти возможности модели или среде выполнения агента.",{},{"id":293,"data":294,"type":218,"tunes":296},"p-simple-3",{"text":295},"Серверу не нужно понимать запрос пользователя на естественном языке. Хост\u002Fмодель решает, какая возможность полезна; сервер MCP выполняет структурированный запрос в соответствии со своими правилами безопасности.",{},{"id":298,"data":299,"type":324,"tunes":325},"simple-flow",{"steps":300,"title":322,"orientation":323},[301,304,307,310,313,316,319],{"label":302,"description":303},"1. Хост подключается к серверу","Приложение, совместимое с MCP, настраивает доступ к внешнему серверу MCP.",{"label":305,"description":306},"2. Возможности обнаруживаются","Клиент узнаёт, какие инструменты, ресурсы или подсказки предоставляет сервер.",{"label":308,"description":309},"3. Модель или среда выполнения выбирает возможность","ИИ-приложение решает, что нужна одна из предоставленных возможностей.",{"label":311,"description":312},"4. Клиент отправляет структурированный запрос","Аргументы отправляются через MCP на сервер.",{"label":314,"description":315},"5. Сервер авторизует и выполняет","Сервер проверяет запрос и вызывает свою базовую систему.",{"label":317,"description":318},"6. Результат возвращается хосту","Результат становится наблюдением или входными данными контекста.",{"label":320,"description":321},"7. Хост решает, что делать дальше","Модель\u002Fсреда выполнения может ответить, вызвать другой инструмент или продолжить рабочий процесс.","Базовый вызов инструмента MCP","auto","processFlow",{},{"id":327,"data":328,"type":42,"tunes":330},"h-stops",{"text":329,"level":254},"Где заканчивается простой пример",{},{"id":332,"data":333,"type":218,"tunes":335},"p-stops-1",{"text":334},"MCP не определяет, как хост выбирает инструмент, как агент планирует, как моделируется бизнес-процесс или как должен вести себя доменный объект, такой как счёт или развёртывание.",{},{"id":337,"data":338,"type":218,"tunes":340},"p-stops-2",{"text":339},"Протокол может сделать интеграцию совместимой, в то время как базовое приложение остаётся некорректным, небезопасным или плохо спроектированным. Полностью допустимый запрос MCP всё равно может вызвать не ту бизнес-возможность.",{},{"id":342,"data":343,"type":218,"tunes":345},"p-stops-3",{"text":344},"Центральная граница такова: MCP стандартизирует семантику интеграции, а не истинность приложения или корректность бизнес-логики.",{},{"id":347,"data":348,"type":42,"tunes":350},"h-architecture",{"text":349,"level":254},"Архитектура MCP: хост, клиент и сервер",{},{"id":352,"data":353,"type":376,"tunes":377},"architecture-table",{"content":354,"stretched":43,"withHeadings":14},[355,358,361,364,367,370,373],[356,357],"Компонент","Ответственность",[359,360],"AI-хост","Пользовательское AI-приложение или среда выполнения, которая управляет взаимодействием с моделью, контекстом и общим рабочим процессом",[362,363],"MCP-клиент","Компонент на стороне протокола, используемый хостом для связи с MCP-сервером",[365,366],"MCP-сервер","Публикует возможности и обрабатывает запросы MCP",[368,369],"Базовая система","Приложение, API, база данных, файловая система, SaaS-платформа или сервис за MCP-сервером",[371,372],"Модель","Выбирает или рассуждает о возможностях в соответствии с дизайном хоста\u002Fсреды выполнения; она не обязательно находится внутри MCP-сервера",[374,375],"Авторизация\u002Fбизнес-политика","Определяет, действительно ли разрешена запрошенная операция","table",{},{"id":379,"data":380,"type":218,"tunes":382},"p-architecture-1",{"text":381},"Хост может подключаться к нескольким MCP-серверам, а один MCP-сервер может обслуживать одну или несколько базовых систем. Хост остаётся ответственным за интеграцию результатов MCP в более широкое AI-приложение.",{},{"id":384,"data":385,"type":218,"tunes":387},"p-architecture-2",{"text":386},"Сервер может быть локальным для хоста, работать как отдельный процесс или быть удалённым через сетевой транспорт. Топология размещения и расположение модели — независимые решения.",{},{"id":389,"data":390,"type":42,"tunes":392},"h-primitives",{"text":391,"level":254},"Три основных примитива сервера",{},{"id":394,"data":395,"type":425,"tunes":426},"primitives-comparison",{"rows":396,"title":414,"layout":376,"columns":415},[397,402,406,410],{"id":398,"label":399,"values":400},"purpose","Основное назначение",[401,401,401],"",{"id":403,"label":404,"values":405},"interaction","Типичное взаимодействие",[401,401,401],{"id":407,"label":408,"values":409},"example","Пример",[401,401,401],{"id":411,"label":412,"values":413},"risk","Типичный риск",[401,401,401],"Инструменты, ресурсы и промпты решают разные задачи",[416,419,422],{"id":417,"label":418},"tools","Инструменты",{"id":420,"label":421},"resources","Ресурсы",{"id":423,"label":424},"prompts","Промпты","comparison",{},{"id":428,"data":429,"type":42,"tunes":431},"h-tools",{"text":430,"level":254},"Инструменты: вызываемые возможности",{},{"id":433,"data":434,"type":218,"tunes":436},"p-tools-1",{"text":435},"Инструменты — это структурированные операции, которые MCP-сервер предоставляет хосту. Инструмент имеет имя, описание и входную схему; современные реализации также могут предоставлять структурированный вывод.",{},{"id":438,"data":439,"type":218,"tunes":441},"p-tools-2",{"text":440},"Примеры включают поиск по репозиторию, чтение записи клиента, создание тикета, запуск сборки или отправку сообщения. Инструменты могут быть только для чтения или иметь побочные эффекты.",{},{"id":443,"data":444,"type":218,"tunes":446},"p-tools-3",{"text":445},"Хорошая поверхность инструментов MCP должна представлять связные цели пользователя или агента, а не механически отражать каждую конечную точку внутреннего API. Операции с разными разрешениями, требованиями к подтверждению или радиусом поражения обычно должны быть отдельными инструментами.",{},{"id":448,"data":449,"type":42,"tunes":451},"h-resources",{"text":450,"level":254},"Ресурсы: читаемый контекст и данные",{},{"id":453,"data":454,"type":218,"tunes":456},"p-res-1",{"text":455},"Ресурсы предоставляют данные или контент, которые клиент может перечислить или прочитать. Они естественно подходят, когда семантическая операция — «дай мне этот артефакт или информацию», а не «выполни это действие».",{},{"id":458,"data":459,"type":218,"tunes":461},"p-res-2",{"text":460},"URI ресурса не является предоставлением авторизации. Сервер по-прежнему владеет контролем доступа и должен проверять, какой субъект может читать базовый объект.",{},{"id":463,"data":464,"type":218,"tunes":466},"p-res-3",{"text":465},"Ревизия протокола от 2026-07-28 добавляет семантику кэширования для ответов на список и чтение ресурсов, включая свежесть и область кэша, делая поведение кэширования более явным.",{},{"id":468,"data":469,"type":42,"tunes":471},"h-prompts",{"text":470,"level":254},"Промпты: многоразовые шаблоны",{},{"id":473,"data":474,"type":218,"tunes":476},"p-prompts-1",{"text":475},"Промпты MCP позволяют серверу публиковать многоразовые шаблоны промптов для совместимых клиентов. Это может держать доменно-специфичные инструкции ближе к поставщику возможностей.",{},{"id":478,"data":479,"type":218,"tunes":481},"p-prompts-2",{"text":480},"Промпт, предоставленный MCP-сервером, не получает автоматически более высокий приоритет, чем системные или защитные инструкции хоста. Хост решает, как материал промпта входит в его иерархию контекста.",{},{"id":483,"data":484,"type":218,"tunes":486},"p-prompts-3",{"text":485},"Таким образом, содержимое промптов, предоставляемое протоколом, следует рассматривать как данные о возможностях с явной семантикой доверия, а не как неограниченный источник инструкций.",{},{"id":488,"data":489,"type":42,"tunes":491},"h-tool-vs-resource",{"text":490,"level":254},"Инструмент или ресурс?",{},{"id":493,"data":494,"type":376,"tunes":516},"tool-resource-table",{"content":495,"stretched":43,"withHeadings":14},[496,499,502,505,508,510,513],[497,498],"Потребность","Предпочтительно",[500,501],"Выполнить действие со структурированными аргументами","Инструмент",[503,504],"Прочитать конкретный стабильный артефакт","Ресурс",[506,507],"Искать или вычислять динамически","Обычно инструмент",[509,501],"Изменить внешнее состояние",[511,512],"Упаковать многоразовые инструкции промпта","Промпт",[514,515],"Длительное асинхронное выполнение","Инструмент плюс обработка задач приложением\u002Fсредой выполнения или расширение MCP",{},{"id":518,"data":519,"type":42,"tunes":521},"h-model-location",{"text":520,"level":254},"Где находится модель ИИ?",{},{"id":523,"data":524,"type":218,"tunes":526},"p-location-1",{"text":525},"MCP не требует, чтобы модель работала на сервере MCP. Модель может размещаться в облаке, локально, быть встроенной в настольное приложение или доступной через другого провайдера.",{},{"id":528,"data":529,"type":218,"tunes":531},"p-location-2",{"text":530},"Обычно хост отвечает за взаимодействие с моделью. Сервер MCP предоставляет внешние возможности. Поэтому локальный сервер MCP может использоваться хостом, модель которого работает в облаке, а удалённый сервер MCP может использоваться хостом, модель которого работает локально.",{},{"id":533,"data":534,"type":218,"tunes":536},"p-location-3",{"text":535},"Если сам сервер MCP внутренне вызывает LLM, эта модель является частью реализации сервера за границей протокола; MCP её не требует.",{},{"id":538,"data":539,"type":226,"tunes":542},"location-rule",{"body":540,"title":541,"variant":233},"\u003Cstrong>Локальный MCP не подразумевает локальный вывод, а удалённый MCP не подразумевает удалённый вывод.\u003C\u002Fstrong> Расположение соединения, расположение выполнения инструментов и расположение модели\u002Fпровайдера — это отдельные архитектурные измерения.","Расположение протокола ≠ расположение вывода",{},{"id":544,"data":545,"type":42,"tunes":547},"h-mcp-vs-api",{"text":546,"level":254},"MCP не заменяет API",{},{"id":549,"data":550,"type":218,"tunes":552},"p-api-1",{"text":551},"Сервер MCP часто оборачивает существующие API или сервисы. REST, GraphQL, SQL, вызовы SDK и внутренние сервисные контракты могут оставаться точно там, где они есть.",{},{"id":554,"data":555,"type":218,"tunes":557},"p-api-2",{"text":556},"MCP добавляет уровень взаимодействия, ориентированный на ИИ. Базовый доменный API может оставаться авторитетным контрактом приложения для обычных детерминированных клиентов.",{},{"id":559,"data":560,"type":218,"tunes":562},"p-api-3",{"text":561},"Поэтому обычная архитектура — сначала API\u002Fсервис, затем выбранные возможности, ориентированные на ИИ, — а не «заменить каждый API на MCP».",{},{"id":564,"data":565,"type":42,"tunes":567},"h-function-calling",{"text":566,"level":254},"MCP против вызова функций",{},{"id":569,"data":570,"type":425,"tunes":596},"function-comparison",{"rows":571,"title":588,"layout":376,"columns":589},[572,576,580,584],{"id":573,"label":574,"values":575},"scope","Область применения",[401,401],{"id":577,"label":578,"values":579},"definition","Определение инструмента",[401,401],{"id":581,"label":582,"values":583},"portability","Переносимость",[401,401],{"id":585,"label":586,"values":587},"coexist","Могут ли они сосуществовать?",[401,401],"Вызов функций и MCP связаны, но не идентичны",[590,593],{"id":591,"label":592},"function","Вызов функций",{"id":594,"label":595},"mcp","MCP",{},{"id":598,"data":599,"type":218,"tunes":601},"p-function-1",{"text":600},"В настоящее время OpenAI предоставляет удалённые серверы MCP как один тип инструмента наряду с обычным вызовом функций, веб-поиском, оболочкой и другими инструментами. Эта реализация иллюстрирует архитектурную взаимосвязь: подключение MCP и собственный интерфейс вызова инструментов модели могут компоноваться.",{},{"id":603,"data":604,"type":42,"tunes":606},"h-agent",{"text":605,"level":254},"MCP не создаёт цикл агента",{},{"id":608,"data":609,"type":218,"tunes":611},"p-agent-1",{"text":610},"Агенту ИИ нужна среда выполнения, которая может принимать решения, вызывать инструменты, наблюдать результаты, обновлять состояние и продолжать или останавливаться. MCP может предоставить некоторые из инструментов и данных, используемых этим циклом.",{},{"id":613,"data":614,"type":218,"tunes":616},"p-agent-2",{"text":615},"Сервер MCP не становится автоматически планировщиком, системой памяти или оркестратором. Эти обязанности обычно остаются в хосте или среде выполнения агента.",{},{"id":618,"data":619,"type":218,"tunes":621},"p-agent-3",{"text":620},"Неагентное приложение также может использовать MCP. Один детерминированный вызов инструмента MCP не требует автономного многошагового агента.",{},{"id":623,"data":624,"type":42,"tunes":626},"h-a2a",{"text":625,"level":254},"MCP против A2A",{},{"id":628,"data":629,"type":218,"tunes":631},"p-a2a-1",{"text":630},"MCP в первую очередь подключает ИИ-хост или агента к таким возможностям, как инструменты, ресурсы и данные. A2A нацелен на сотрудничество между независимыми агентными системами.",{},{"id":633,"data":634,"type":218,"tunes":636},"p-a2a-2",{"text":635},"Удалённый агент может внутренне использовать MCP для доступа к базам данных и инструментам, одновременно предоставляя интерфейс A2A другим агентам. Таким образом, протоколы могут быть многоуровневыми, а не взаимозаменяемыми.",{},{"id":638,"data":639,"type":218,"tunes":641},"p-a2a-3",{"text":640},"Существующая статья о стеке протоколов содержит более широкое сравнение MCP\u002FA2A\u002FUCP\u002FAP2\u002FA2UI; G02 остаётся каноническим определением MCP.",{},{"id":643,"data":644,"type":649,"tunes":650},"ref-protocol-stack",{"url":645,"title":646,"excerpt":647,"ctaLabel":648},"https:\u002F\u002Fstajic.de\u002Fde\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","MCP против A2A против UCP против AP2 против A2UI: объяснение стека агентных протоколов","Более широкая карта ответственности, показывающая, как MCP сочетается с протоколами сотрудничества агентов, коммерции, платёжных полномочий и агентно-управляемого интерфейса.","Читать о стеке протоколов","referralArticle",{},{"id":652,"data":653,"type":42,"tunes":655},"h-transport",{"text":654,"level":254},"Локальное и удалённое использование MCP имеют разные транспортные реалии",{},{"id":657,"data":658,"type":218,"tunes":660},"p-transport-1",{"text":659},"MCP может подключаться к локальным и удалённым серверам. Локальные настольные интеграции обычно используют транспорты на уровне процессов, такие как stdio; удалённые серверы используют транспорт на основе HTTP.",{},{"id":662,"data":663,"type":218,"tunes":665},"p-transport-2",{"text":664},"Ревизия от 2026-07-28 делает ядро протокола не имеющим состояния. Запросы несут информацию, необходимую для обработки протокола, вместо того чтобы зависеть от более ранней модели сеанса на уровне протокола.",{},{"id":667,"data":668,"type":218,"tunes":670},"p-transport-3",{"text":669},"Текущая ревизия также помещает имена методов и возможностей в HTTP-заголовки, чтобы шлюзы, WAF, ограничители скорости и балансировщики нагрузки могли более естественно маршрутизировать и измерять трафик MCP.",{},{"id":672,"data":673,"type":42,"tunes":675},"h-version",{"text":674,"level":254},"Почему важно учитывать версию MCP",{},{"id":677,"data":678,"type":376,"tunes":692},"version-table",{"content":679,"stretched":43,"withHeadings":14},[680,683,686,689],[681,682],"Эпоха протокола","Операционная характеристика",[684,685],"2025-11-25 и ранее","Жизненный цикл, ориентированный на рукопожатие\u002Fсеанс, и старое поведение Streamable HTTP",[687,688],"2026-07-28","Ядро без состояния, опциональное обнаружение сервера, самоописывающие запросы, заголовки маршрутизации, подсказки кэша, MRTR и усиление авторизации",[690,691],"Расширения","Такие возможности, как Tasks и MCP Apps, могут версионироваться отдельно от базового протокола",{},{"id":694,"data":695,"type":218,"tunes":697},"p-version-1",{"text":696},"Версия SDK и версия протокола — это также разные вещи. Текущий TypeScript SDK v2 — это стабильная линия для ревизии 2026-07-28, тогда как более старый v1.x остаётся линией поддержки для поведения эпохи 2025 года.",{},{"id":699,"data":700,"type":218,"tunes":702},"p-version-2",{"text":701},"Документация по архитектуре должна фиксировать как версию SDK\u002Fбиблиотеки, так и ревизию протокола, когда поведение взаимодействия зависит от них.",{},{"id":704,"data":705,"type":42,"tunes":707},"h-modern",{"text":706,"level":254},"Что изменилось в MCP 2026-07-28",{},{"id":709,"data":710,"type":376,"tunes":739},"modern-table",{"content":711,"stretched":43,"withHeadings":14},[712,715,718,721,724,727,730,733,736],[713,714],"Изменение","Почему это важно",[716,717],"Ядро без состояния","Удалённые серверы могут масштабироваться за обычными балансировщиками нагрузки без привязки сеансов на уровне протокола",[719,720],"server\u002Fdiscover","Клиенты могут проверять возможности сервера при необходимости",[722,723],"Самоописывающие запросы","Версия протокола и метаданные о возможностях клиента передаются с каждым запросом",[725,726],"Заголовки Mcp-Method \u002F Mcp-Name","Шлюзы могут маршрутизировать, измерять и применять политики без разбора тел запросов",[728,729],"Подсказки кэша","Списки и чтение ресурсов сообщают о свежести и области совместного использования",[731,732],"Многораундовые запросы","Серверы могут требовать дополнительный ввод без более старой двунаправленной модели запросов",[734,735],"Усиление авторизации","Проверка издателя и привязка учётных данных укрепляют поведение удалённой аутентификации",[737,738],"Фреймворк расширений","Tasks, MCP Apps и другие возможности могут развиваться отдельно",{},{"id":741,"data":742,"type":42,"tunes":744},"h-deprecations",{"text":743,"level":254},"Roots, sampling и logging больше не являются направлением для новых реализаций",{},{"id":746,"data":747,"type":218,"tunes":749},"p-dep-1",{"text":748},"Выпуск 2026-07-28 помечает roots, sampling и logging как устаревшие возможности протокола с определённым окном совместимости.",{},{"id":751,"data":752,"type":218,"tunes":754},"p-dep-2",{"text":753},"Старые руководства могут по-прежнему описывать эти возможности как центральные примитивы. При новой реализации следует опираться на текущую спецификацию, а не слепо копировать старые диаграммы жизненного цикла.",{},{"id":756,"data":757,"type":218,"tunes":759},"p-dep-3",{"text":758},"Устаревание не означает немедленное удаление. Оно означает, что новые системы должны избегать ненужных новых зависимостей от возможностей, от которых протокол отходит.",{},{"id":761,"data":762,"type":42,"tunes":764},"h-tasks",{"text":763,"level":254},"Длительная работа — это не то же самое, что обычный вызов инструмента MCP",{},{"id":766,"data":767,"type":218,"tunes":769},"p-task-1",{"text":768},"Длительные операции требуют семантики жизненного цикла, выходящей за рамки простого немедленного результата инструмента. В текущей экосистеме Tasks перешли в выделенное расширение MCP.",{},{"id":771,"data":772,"type":218,"tunes":774},"p-task-2",{"text":773},"Это подкрепляет полезный принцип проектирования: базовому протоколу не нужно вбирать в себя все аспекты среды выполнения агента.",{},{"id":776,"data":777,"type":218,"tunes":779},"p-task-3",{"text":778},"Приложение также может полностью сохранять ответственность за длительные рабочие процессы в своей собственной среде выполнения и использовать обычные инструменты MCP как базовые операции.",{},{"id":781,"data":782,"type":42,"tunes":784},"h-apps",{"text":783,"level":254},"MCP Apps расширяют возможности пользовательского интерфейса, не переопределяя ядро протокола",{},{"id":786,"data":787,"type":218,"tunes":789},"p-apps-1",{"text":788},"MCP Apps связывают более насыщенный интерактивный пользовательский интерфейс с инструментами MCP через модель расширений.",{},{"id":791,"data":792,"type":218,"tunes":794},"p-apps-2",{"text":793},"Хост по-прежнему контролирует, как этот интерфейс встраивается, изолируется в песочнице и защищается.",{},{"id":796,"data":797,"type":218,"tunes":799},"p-apps-3",{"text":798},"Поэтому обмен базовыми возможностями и отрисовка пользовательского интерфейса должны оставаться отдельными архитектурными обязанностями.",{},{"id":801,"data":802,"type":42,"tunes":804},"h-auth",{"text":803,"level":254},"Авторизация MCP — это не ваша полная модель авторизации",{},{"id":806,"data":807,"type":218,"tunes":809},"p-auth-1",{"text":808},"Удалённому MCP нужны механизмы аутентификации и авторизации на уровне протокола, чтобы клиенты и серверы могли устанавливать доверенный доступ. Текущая спецификация продолжает усиливать поведение, связанное с OAuth\u002FOIDC.",{},{"id":811,"data":812,"type":218,"tunes":814},"p-auth-2",{"text":813},"Этот уровень отвечает на вопрос, разрешено ли клиенту подключаться или запрашивать области действия протокола. Он не отвечает автоматически на вопрос, может ли Алиса вернуть заказ 123, может ли агент записывать производственную конфигурацию или может ли арендатор A читать данные арендатора B.",{},{"id":816,"data":817,"type":218,"tunes":819},"p-auth-3",{"text":818},"Эти доменные решения относятся к модели авторизации сервера\u002Fприложения и должны применяться до вызова базовой операции.",{},{"id":821,"data":822,"type":226,"tunes":825},"auth-rule",{"body":823,"title":824,"variant":240},"Доверие соединения, видимость инструментов, разрешение на инструменты, авторизация пользователя, изоляция арендаторов и бизнес-одобрение — это разные механизмы контроля. Держите их раздельно.","Никогда не приравнивайте «аутентифицированный клиент MCP» к «доверенный для любого инструмента»",{},{"id":827,"data":828,"type":42,"tunes":830},"h-identity",{"text":829,"level":254},"Идентичность может пересекать несколько границ",{},{"id":832,"data":833,"type":218,"tunes":835},"p-id-1",{"text":834},"Запрос MCP может включать клиентское приложение MCP, вошедшего в систему человека, идентичность агента\u002Fсессии и учётную запись нижестоящего сервиса.",{},{"id":837,"data":838,"type":218,"tunes":840},"p-id-2",{"text":839},"Серверу нужна явная политика того, от имени какого субъекта выполняется операция. В противном случае мощные учётные данные сервиса могут стать путём для атаки «сбитый с толку заместитель».",{},{"id":842,"data":843,"type":218,"tunes":845},"p-id-3",{"text":844},"Для корпоративного использования корреляция между идентичностью пользователя, идентичностью агента, MCP-соединением и последующей авторизацией так же важна, как и совместимость протоколов.",{},{"id":847,"data":848,"type":42,"tunes":850},"h-tenant",{"text":849,"level":254},"Изоляция арендаторов остаётся за пределами обнаружения возможностей MCP",{},{"id":852,"data":853,"type":218,"tunes":855},"p-tenant-1",{"text":854},"Мультитенантный MCP-сервер должен применять область арендатора при чтении или изменении ресурсов, принадлежащих арендатору. Возврат инструмента с именем search_documents не определяет, документы какого арендатора являются допустимыми.",{},{"id":857,"data":858,"type":218,"tunes":860},"p-tenant-2",{"text":859},"Область арендатора должна определяться на основе доверенной идентичности или членства и передаваться в базы данных, кэши, векторный поиск, объектное хранилище и нижестоящие API.",{},{"id":862,"data":863,"type":218,"tunes":865},"p-tenant-3",{"text":864},"Получение контента другого арендатора и просьба к модели не использовать его — это уже нарушение изоляции.",{},{"id":867,"data":868,"type":42,"tunes":870},"h-source",{"text":869,"level":254},"MCP не определяет источник истины",{},{"id":872,"data":873,"type":218,"tunes":875},"p-source-1",{"text":874},"MCP-сервер может предоставлять базу данных, хранилище документов, сервис веб-поиска или сводку, сгенерированную ИИ. Протокол не указывает, какой источник является авторитетным для утверждения.",{},{"id":877,"data":878,"type":218,"tunes":880},"p-source-2",{"text":879},"Правила источника истины относятся к архитектуре приложения\u002Fпредметной области. Хост или сервер может закодировать авторитетность через дизайн инструментов, метаданные, политику доступа или валидацию, но сам MCP не делает одну возможность «истинной».",{},{"id":882,"data":883,"type":218,"tunes":885},"p-source-3",{"text":884},"Таким образом, инструмент может быть полностью вызываемым через MCP и при этом возвращать устаревшую, второстепенную или неавторитетную информацию.",{},{"id":887,"data":888,"type":42,"tunes":890},"h-context",{"text":889,"level":254},"MCP и контекстная инженерия",{},{"id":892,"data":893,"type":218,"tunes":895},"p-context-1",{"text":894},"MCP может увеличить возможности и информацию, доступные ИИ-приложению, но контекстная инженерия по-прежнему определяет, что доходит до модели.",{},{"id":897,"data":898,"type":218,"tunes":900},"p-context-2",{"text":899},"Каталоги инструментов потребляют видимый модели контекст во многих хостах. Результаты инструментов могут быть большими. Ресурсов может быть много. Хосту нужны выбор, фильтрация, динамическая загрузка и сжатие, а не раскрытие всего на каждом ходу.",{},{"id":902,"data":903,"type":218,"tunes":905},"p-context-3",{"text":904},"Поэтому доступность возможностей и видимый модели контекст следует рассматривать как отдельные слои.",{},{"id":907,"data":908,"type":42,"tunes":910},"h-tool-design",{"text":909,"level":254},"Проектируйте инструменты MCP вокруг результатов и границ риска",{},{"id":912,"data":913,"type":376,"tunes":939},"tool-design-table",{"content":914,"stretched":43,"withHeadings":14},[915,918,921,924,927,930,933,936],[916,917],"Слабый дизайн инструмента","Более сильный дизайн инструмента",[919,920],"execute_api(method,url,body)","Узкие доменные инструменты с валидированными операциями",[922,923],"Один административный инструмент для всех действий","Раздельные операции чтения\u002Fзаписи\u002Fодобрения",[925,926],"Сырой внутренний API, зеркально отражённый 1:1","Контракт, ориентированный на ИИ, вокруг согласованных пользовательских целей",[928,929],"Один широкий инструмент файловой системы","Операции чтения\u002Fзаписи в пределах рабочего пространства",[931,932],"Политика безопасности только в описании","Сервер применяет политику в коде",[934,935],"Неограниченный сырой ответ","Структурированный вывод, значимый для решений",[937,938],"Удаление\u002Fобновление смешано с чтением","Раздельные инструменты с побочными эффектами с политикой подтверждения",{},{"id":941,"data":942,"type":42,"tunes":944},"h-approvals",{"text":943,"level":254},"Одобрения относятся к архитектуре исполнения",{},{"id":946,"data":947,"type":218,"tunes":949},"p-approve-1",{"text":948},"Хост может требовать одобрения пользователя перед вызовом выбранных инструментов MCP. Текущая интеграция MCP от OpenAI поддерживает автоматический режим исполнения или режим с явным одобрением.",{},{"id":951,"data":952,"type":218,"tunes":954},"p-approve-2",{"text":953},"Одобрение хостом полезно, но не должно быть единственной защитой сервера, поскольку другой совместимый MCP-клиент может использовать иную модель одобрения.",{},{"id":956,"data":957,"type":218,"tunes":959},"p-approve-3",{"text":958},"Для деструктивных или финансово значимых действий используйте эшелонированную защиту: четкий контракт инструмента, одобрение во время выполнения, где это уместно, серверную авторизацию, бизнес-валидацию и аудит.",{},{"id":961,"data":962,"type":42,"tunes":964},"h-observability",{"text":963,"level":254},"Наблюдаемость MCP должна связывать вызовы протокола с действиями в предметной области",{},{"id":966,"data":967,"type":218,"tunes":969},"p-obs-1",{"text":968},"Трассировка MCP наиболее полезна, когда ее можно сопоставить с вызовом приложения, изменением базы данных или бизнес-транзакцией.",{},{"id":971,"data":972,"type":218,"tunes":974},"p-obs-2",{"text":973},"Экосистема 2026-07-28 стандартизирует соглашения о распространении W3C Trace Context, что упрощает отслеживание запроса через хост, клиент, сервер и нижестоящие сервисы.",{},{"id":976,"data":977,"type":218,"tunes":979},"p-obs-3",{"text":978},"Одних логов протокола недостаточно для значимых операций. Аудиторские доказательства должны также фиксировать соответствующего субъекта, арендатора, целевой ресурс, одобрение и результирующее изменение состояния.",{},{"id":981,"data":982,"type":42,"tunes":984},"h-failure",{"text":983,"level":254},"Что MCP не может исправить",{},{"id":986,"data":987,"type":376,"tunes":1022},"failure-table",{"content":988,"stretched":43,"withHeadings":14},[989,992,995,998,1001,1004,1007,1010,1013,1016,1019],[990,991],"Проблема","Почему MCP ее не решает",[993,994],"Плохой бизнес-API","MCP может предоставлять плохой API более согласованно",[996,997],"Неверные данные","Валидность протокола не создает фактическую корректность",[999,1000],"Отсутствие изоляции арендаторов","Обнаружение инструментов не обеспечивает владение ресурсами",[1002,1003],"Чрезмерные привилегии","Стандартизированный инструмент все еще может иметь избыточные привилегии",[1005,1006],"Плохое планирование агента","MCP предоставляет возможности; среда выполнения\u002Fмодель все еще выбирает, как их использовать",[1008,1009],"Плохой дизайн повторных попыток\u002Fидемпотентности","Вызовы протокола не делают побочные эффекты безопасными",[1011,1012],"Нет источника истины","MCP не решает, какая система владеет фактом",[1014,1015],"Слабая оценка","Совместимость не доказывает успех задачи",[1017,1018],"Нет политики аудита","Трассировки транспорта не определяют хранение или подотчетность",[1020,1021],"Несоответствие протокола","Старые\u002Fновые версии все еще могут требовать миграции или обработки совместимости",{},{"id":1024,"data":1025,"type":42,"tunes":1027},"h-implementation",{"text":1026,"level":254},"Доказательства оригинальной реализации: Aaasaasa AI Client",{},{"id":1029,"data":1030,"type":226,"tunes":1033},"impl-note",{"body":1031,"title":1032,"variant":247},"Aaasaasa AI Client содержит аутентифицированный локальный коннектор\u002Fброкер MCP для одобренных локальных каталогов и интеграцию через Secure MCP Tunnel. Это конкретное доказательство реализации для границы протокола и архитектуры разрешений, а не заявление о универсальной коммерческой платформе MCP.","Доказательства реализации",{},{"id":1035,"data":1036,"type":218,"tunes":1038},"p-impl-1",{"text":1037},"Приложение может запускать аутентифицированную конечную точку Streamable HTTP MCP на loopback. Конечная точка предоставляет только каталоги, выбранные через центральный брокер разрешений рабочей области.",{},{"id":1040,"data":1041,"type":218,"tunes":1043},"p-impl-2",{"text":1042},"Локальная конечная точка и удаленный маршрут — это отдельные вопросы: локальный коннектор может привязываться только к loopback, в то время как Secure MCP Tunnel может сделать одобренный сервис MCP доступным для разрешенного внешнего AI-клиента, не открывая всю локальную машину.",{},{"id":1045,"data":1046,"type":218,"tunes":1048},"p-impl-3",{"text":1047},"Центральная модель разрешений различает профили только для чата, только для чтения, записи в проект и пользовательских каталогов. Direct Chat не имеет доступа к файловой системе или оболочке; среды выполнения агентов с поддержкой инструментов используют выбранный профиль разрешений.",{},{"id":1050,"data":1051,"type":218,"tunes":1053},"p-impl-4",{"text":1052},"Это прямая реализация границы G02: MCP обеспечивает стандартизированное подключение возможностей, в то время как принадлежащий приложению брокер разрешений решает, какие каталоги сервер может предоставлять.",{},{"id":1055,"data":1056,"type":376,"tunes":1079},"impl-table",{"content":1057,"stretched":43,"withHeadings":14},[1058,1061,1064,1067,1070,1073,1076],[1059,1060],"Реализованный элемент","Архитектурное доказательство",[1062,1063],"Аутентифицированная локальная конечная точка MCP","Сервер MCP может быть локальным детерминированным сервисом возможностей",[1065,1066],"Привязка к loopback","Сетевое воздействие и возможности протокола — это отдельные решения",[1068,1069],"Интеграция Secure MCP Tunnel","Частный\u002Fлокальный MCP может быть связан через контролируемый маршрут",[1071,1072],"Центральный брокер разрешений","Возможности MCP ограничены политикой приложения",[1074,1075],"Выбранная область каталога","Видимость файловой системы явно ограничена",[1077,1078],"Direct Chat без инструментов ОС","Доступ к модели не подразумевает автоматически доступ к инструментам",{},{"id":1081,"data":1082,"type":226,"tunes":1085},"impl-boundary",{"body":1083,"title":1084,"variant":240},"Реализация демонстрирует подключение MCP и предоставление локальных каталогов с ограничением по разрешениям. Это не подразумевает, что реализованы все примитивы MCP, все функции 2026-07-28 или все корпоративные расширения авторизации.","Граница доказательств",{},{"id":1087,"data":1088,"type":42,"tunes":1090},"h-use",{"text":1089,"level":254},"Когда MCP хорошо подходит",{},{"id":1092,"data":1093,"type":376,"tunes":1113},"use-table",{"content":1094,"stretched":43,"withHeadings":14},[1095,1098,1101,1104,1107,1110],[1096,1097],"MCP хорошо подходит, когда","Прямая интеграция может быть проще, когда",[1099,1100],"Одна и та же возможность должна быть многоразовой в нескольких AI-хостах","Одно приложение владеет обеими сторонами, и переносимость имеет мало ценности",[1102,1103],"Внешняя система хочет публиковать обнаруживаемые инструменты\u002Fресурсы для AI","Достаточно одного стабильного внутреннего вызова API",[1105,1106],"Вы хотите стандартную границу вокруг локальных инструментов\u002Fданных","Нет требования совместимости для AI",[1108,1109],"Поставщики инструментов и AI-клиенты развиваются независимо","Интеграция намеренно частная и тесно связанная",[1111,1112],"Вы хотите совместимое с экосистемой обнаружение возможностей","Набор возможностей крошечный и фиксирован в коде приложения",{},{"id":1115,"data":1116,"type":42,"tunes":1118},"h-not-need",{"text":1117,"level":254},"Когда MCP не нужен",{},{"id":1120,"data":1121,"type":218,"tunes":1123},"p-not-1",{"text":1122},"Не добавляйте MCP только потому, что приложение использует ИИ. Если ваш бэкенд уже вызывает один внутренний API и никакому независимому MCP-клиенту эта возможность не нужна, обычный вызов функции или сервиса может оказаться понятнее.",{},{"id":1125,"data":1126,"type":218,"tunes":1128},"p-not-2",{"text":1127},"MCP приносит пользу на границе совместимости. Без такой границы протокол может превратиться в ненужный слой адаптера.",{},{"id":1130,"data":1131,"type":218,"tunes":1133},"p-not-3",{"text":1132},"Архитектурный вопрос не в том, «есть ли в этом проекте ИИ?», а в том, «получают ли независимо развивающиеся ИИ-хосты и поставщики возможностей выгоду от стандартного контракта?»",{},{"id":1135,"data":1136,"type":42,"tunes":1138},"h-security",{"text":1137,"level":254},"Контрольный список безопасности MCP",{},{"id":1140,"data":1141,"type":376,"tunes":1182},"security-table",{"content":1142,"stretched":43,"withHeadings":14},[1143,1146,1149,1152,1155,1158,1161,1164,1167,1170,1173,1176,1179],[1144,1145],"Граница","Вопрос",[1147,1148],"Идентичность сервера","К какому MCP-серверу я на самом деле подключён?",[1150,1151],"Идентичность клиента","Какое приложение\u002Fклиент запрашивает доступ?",[1153,1154],"Идентичность конечного пользователя","От чьего имени выполняется операция?",[1156,1157],"Список разрешённых инструментов","Какие возможности этот хост\u002Fагент может обнаруживать и вызывать?",[1159,1160],"Бизнес-разрешение","Может ли этот субъект выполнить данную операцию?",[1162,1163],"Область арендатора","Какая граница арендатора\u002Fресурса применяется?",[1165,1166],"Изоляция учётных данных","Привязаны ли учётные данные правильно и хранятся ли они вне контекста модели?",[1168,1169],"Одобрение","Какие побочные эффекты требуют подтверждения человеком?",[1171,1172],"Проверка входных данных","Проверяются ли аргументы инструмента независимо от вывода модели?",[1174,1175],"Доверие к выводу","Может ли возвращаемое содержимое содержать недоверенные инструкции или конфиденциальные данные?",[1177,1178],"Сетевая доступность","Не подвергается ли локальный сервер случайному воздействию за пределами предполагаемых интерфейсов?",[1180,1181],"Аудит","Можно ли сопоставить вызов протокола с последующим действием?",{},{"id":1184,"data":1185,"type":42,"tunes":1187},"h-misconceptions",{"text":1186,"level":254},"Распространённые заблуждения",{},{"id":1189,"data":1190,"type":376,"tunes":1231},"misconceptions-table",{"content":1191,"stretched":43,"withHeadings":14},[1192,1195,1198,1201,1204,1207,1210,1213,1216,1219,1222,1225,1228],[1193,1194],"Заблуждение","Исправление",[1196,1197],"«MCP-сервер — это ИИ-сервер».","Это может быть обычное детерминированное программное обеспечение, предоставляющее возможности.",[1199,1200],"«Мне нужна собственная LLM на MCP-сервере».","Нет. Модель может полностью находиться на стороне хоста.",[1202,1203],"«MCP заменяет REST API».","MCP часто оборачивает существующие API для совместимости с ИИ.",[1205,1206],"«MCP — это агентный фреймворк».","MCP предоставляет возможности; среда выполнения агента управляет итерациями и состоянием.",[1208,1209],"«MCP и вызов функций конкурируют».","Хост может связать возможности MCP с интерфейсом инструментов своей модели.",[1211,1212],"«MCP заменяет A2A».","MCP сосредоточен на интеграции возможностей; A2A — на взаимодействии агентов.",[1214,1215],"«Если инструмент указан, пользователь может его вызвать».","Обнаружение — это не авторизация.",[1217,1218],"«OAuth решает вопросы бизнес-разрешений».","Авторизация подключения не заменяет доменную авторизацию или изоляцию арендаторов.",[1220,1221],"«Локальный MCP означает локальный ИИ».","Расположение сервера инструментов и расположение вывода не зависят друг от друга.",[1223,1224],"«MCP делает вывод инструментов заслуживающим доверия».","Качество данных, полномочия и происхождение по-прежнему принадлежат источнику\u002Fприложению.",[1226,1227],"«Один гигантский универсальный инструмент — это гибко».","Слишком широкие инструменты ослабляют разрешения, проверку и наблюдаемость.",[1229,1230],"«Старые руководства соответствуют текущей реализации».","Редакция от 2026-07-28 существенно изменила поведение жизненного цикла и транспорта.",{},{"id":1233,"data":1234,"type":42,"tunes":1236},"h-design",{"text":1235,"level":254},"Практическая последовательность проектирования MCP",{},{"id":1238,"data":1239,"type":324,"tunes":1278},"design-flow",{"steps":1240,"title":1277,"orientation":323},[1241,1244,1247,1250,1253,1256,1259,1262,1265,1268,1271,1274],{"label":1242,"description":1243},"1. Определите границу совместимости","Убедитесь, что независимым ИИ-хостам действительно нужен многоразовый доступ.",{"label":1245,"description":1246},"2. Сохраните доменный API авторитетным","Сохраните реальный контракт приложения\u002Fсервиса за MCP.",{"label":1248,"description":1249},"3. Выбирайте примитивы осознанно","Используйте инструменты, ресурсы и подсказки в соответствии с их семантикой.",{"label":1251,"description":1252},"4. Разделяйте по риску и разрешениям","Отделите операции чтения, записи, разрушительные и требующие одобрения.",{"label":1254,"description":1255},"5. Определите распространение идентичности","Знайте, какого клиента, пользователя, агента и нижестоящего субъекта представляет каждый вызов.",{"label":1257,"description":1258},"6. Обеспечьте бизнес-авторизацию","Проверяйте разрешения, область арендатора и принадлежность цели.",{"label":1260,"description":1261},"7. Выберите локальный или удалённый транспорт","Сопоставьте топологию развёртывания с реальной потребностью.",{"label":1263,"description":1264},"8. Зафиксируйте ожидания по протоколу\u002FSDK","Документируйте совместимость версии 2026-07-28 со старыми версиями.",{"label":1266,"description":1267},"9. Добавьте одобрения для значимых действий","Используйте средства подтверждения, соответствующие риску.",{"label":1269,"description":1270},"10. Проектируйте структурированные выводы","Возвращайте краткие результаты, пригодные для машинной обработки.",{"label":1272,"description":1273},"11. Добавьте трассировку и корреляцию аудита","Свяжите вызовы MCP с нижестоящими сервисными\u002Fбизнес-событиями.",{"label":1275,"description":1276},"12. Проверьте переносимость","Проверьте более одного клиента там, где совместимость является заявленным требованием.","Спроектируйте границу до реализации сервера",{},{"id":1280,"data":1281,"type":42,"tunes":1283},"h-checklist",{"text":1282,"level":254},"Контрольный список архитектуры MCP",{},{"id":1285,"data":1286,"type":376,"tunes":1335},"checklist-table",{"content":1287,"stretched":43,"withHeadings":14},[1288,1290,1293,1296,1299,1302,1305,1308,1311,1314,1317,1320,1323,1326,1329,1332],[1145,1289],"Ожидаемый ответ",[1291,1292],"Зачем нужен MCP?","Реальная граница совместимости с ИИ",[1294,1295],"Что предоставляет сервер?","Явные инструменты\u002Fресурсы\u002Fподсказки",[1297,1298],"Где выполняется модель?","Независимое решение хоста\u002Fпоставщика",[1300,1301],"Где выполняется инструмент?","Указанное расположение сервера\u002Fсреды выполнения",[1303,1304],"Какая редакция протокола ожидается?","Контракт с учётом версии",[1306,1307],"Кто является запрашивающим субъектом?","Модель идентичности клиента\u002Fпользователя\u002Fагента",[1309,1310],"Какие инструменты могут быть обнаружены?","Политика списка разрешённых\u002Fвозможностей",[1312,1313],"Какие операции могут выполняться?","Бизнес-авторизация на стороне сервера",[1315,1316],"Как обеспечивается область арендатора\u002Fресурса?","Проверки доверенной принадлежности арендатора\u002Fресурса",[1318,1319],"Какие действия требуют одобрения?","Политика подтверждения на основе риска",[1321,1322],"Как защищены учётные данные?","Доверенное хранилище среды выполнения, а не секреты, видимые модели",[1324,1325],"Как ограничен вывод?","Контракт структурированного релевантного результата",[1327,1328],"Как отслеживаются вызовы?","Корреляция через MCP с нижестоящим действием",[1330,1331],"Что произойдёт, если MCP недоступен?","Определённое поведение при отказе\u002Fрезервном варианте",[1333,1334],"Может ли другой совместимый хост его использовать?","Переносимость проверена там, где требуется",{},{"id":1337,"data":1338,"type":42,"tunes":1340},"h-edge",{"text":1339,"level":254},"Краевые случаи и ограничения",{},{"id":1342,"data":1343,"type":218,"tunes":1345},"p-edge-1",{"text":1344},"Локальный stdio MCP-сервер может иметь небольшую сетевую доступность, но всё равно быть опасным, если сам процесс обладает чрезмерными правами доступа к файловой системе или оболочке.",{},{"id":1347,"data":1348,"type":218,"tunes":1350},"p-edge-2",{"text":1349},"Удалённый MCP-сервер может предоставлять только публичную документацию или особо чувствительные корпоративные действия. «Удалённый MCP» мало говорит о риске без контекста возможностей и авторизации.",{},{"id":1352,"data":1353,"type":218,"tunes":1355},"p-edge-3",{"text":1354},"Некоторые серверы могут использовать только инструменты и игнорировать ресурсы\u002Fподсказки. Совместимость с MCP не требует, чтобы каждый необязательный примитив был одинаково важен.",{},{"id":1357,"data":1358,"type":218,"tunes":1360},"p-edge-4",{"text":1359},"Хост может транслировать между своей внутренней моделью инструментов и MCP. Пользователи могут никогда не видеть границу протокола напрямую, что допустимо, если безопасность и атрибуция остаются ясными.",{},{"id":1362,"data":1363,"type":218,"tunes":1365},"p-edge-5",{"text":1364},"MCP продолжает быстро развиваться. Расширения, шаблоны авторизации, API SDK и соглашения экосистемы могут меняться быстрее, чем основное архитектурное различие.",{},{"id":1367,"data":1368,"type":42,"tunes":1370},"h-change",{"text":1369,"level":254},"Что могло бы изменить этот ответ?",{},{"id":1372,"data":1373,"type":218,"tunes":1375},"p-change-1",{"text":1374},"Будущие редакции MCP могут изменить жизненный цикл, транспорты, авторизацию и механизмы расширения. Редакция июля 2026 года уже демонстрирует, почему утверждения, специфичные для конкретной реализации, должны быть датированы.",{},{"id":1377,"data":1378,"type":218,"tunes":1380},"p-change-2",{"text":1379},"Каноническая граница изменилась бы только в том случае, если бы MCP расширился от протокола взаимодействия до стандарта сквозной архитектуры приложений\u002Fагентов. Это не то, что определяет текущий протокол.",{},{"id":1382,"data":1383,"type":218,"tunes":1385},"p-change-3",{"text":1384},"Для работы с реализацией всегда проверяйте текущую спецификацию и точную версию SDK вместо копирования примеров, чувствительных к версии, из старых руководств.",{},{"id":1387,"data":1388,"type":42,"tunes":1390},"h-related",{"text":1389,"level":254},"Связанные канонические знания",{},{"id":1392,"data":1393,"type":218,"tunes":1395},"p-related-1",{"text":1394},"MCP находится ниже уровня Agentic AI: сначала поймите границу агента\u002Fсреды выполнения\u002Fинструмента, затем используйте MCP, когда внешним возможностям нужен переносимый протокольный контракт.",{},{"id":1397,"data":1398,"type":218,"tunes":1400},"p-related-2",{"text":1399},"MCP также зависит от RBAC и изоляции арендаторов, поскольку предоставление возможностей на уровне протокола не определяет авторизацию приложения.",{},{"id":1402,"data":1403,"type":218,"tunes":1405},"p-related-3",{"text":1404},"Более широкая статья о стеке протоколов объясняет, где MCP находится рядом с A2A, UCP, AP2 и A2UI. G02 остаётся каноническим источником для самого MCP.",{},{"id":1407,"data":1408,"type":649,"tunes":1413},"ref-reliability",{"url":1409,"title":1410,"excerpt":1411,"ctaLabel":1412},"https:\u002F\u002Fstajic.de\u002Fru\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough","Надёжность AI-агентов: почему окончательного ответа недостаточно","Вызовы инструментов MCP становятся частью траектории агента; надёжные системы должны оценивать действия и наблюдения, а не только окончательный текст.","Читать статью о надёжности агентов",{},{"id":1415,"data":1416,"type":42,"tunes":1418},"h-faq",{"text":1417,"level":254},"Часто задаваемые вопросы",{},{"id":1420,"data":1421,"type":1420,"tunes":1464},"faq",{"items":1422,"title":1463},[1423,1427,1431,1435,1439,1443,1447,1451,1455,1459],{"id":1424,"answer":1425,"question":1426},"faq1","Model Context Protocol — это открытый клиент-серверный протокол для подключения AI-приложений к внешним инструментам, ресурсам, подсказкам и поставщикам возможностей через стандартизированный контракт.","Что такое MCP?",{"id":1428,"answer":1429,"question":1430},"faq2","Нет. MCP-сервер может быть полностью детерминированным программным обеспечением. Модель обычно работает в AI-хосте или среде выполнения агента, хотя сервер может опционально использовать AI внутри себя.","Нужна ли MCP-серверу AI-модель?",{"id":1432,"answer":1433,"question":1434},"faq3","Клиент — это протокольный компонент, используемый AI-хостом для связи с поставщиками возможностей. Сервер публикует и выполняет возможности, которые он предоставляет.","В чём разница между MCP-клиентом и сервером?",{"id":1436,"answer":1437,"question":1438},"faq4","Нет. Вызов функций\u002Fинструментов — это то, как модель вызывает настроенные возможности. MCP стандартизирует обнаружение и взаимодействие с внешними серверами возможностей. Хост может связать эти два механизма.","Заменяет ли MCP вызов функций?",{"id":1440,"answer":1441,"question":1442},"faq5","Нет. MCP-серверы часто оборачивают существующие REST, GraphQL, базы данных или сервисные API и обеспечивают уровень взаимодействия, ориентированный на AI.","Заменяет ли MCP REST API?",{"id":1444,"answer":1445,"question":1446},"faq6","Нет. MCP предоставляет возможности. Планирование агента, состояние, память, управление контекстом, повторные попытки, оркестрация и остановка относятся к окружающей среде выполнения.","Является ли MCP фреймворком для агентов?",{"id":1448,"answer":1449,"question":1450},"faq7","MCP в первую очередь соединяет AI-хост или агента с инструментами и поставщиками данных. A2A соединяет независимые агентные системы для сотрудничества и делегирования.","В чём разница между MCP и A2A?",{"id":1452,"answer":1453,"question":1454},"faq8","MCP включает механизмы авторизации на уровне протокола, особенно для удалённых серверов, но приложение всё равно должно обеспечивать соблюдение бизнес-разрешений, владения ресурсами и изоляции арендаторов.","Обрабатывает ли MCP авторизацию?",{"id":1456,"answer":1457,"question":1458},"faq9","Да. Расположение модели не зависит от MCP. Хост с локальной моделью может вызывать локальные или удалённые MCP-серверы, а хост с облачной моделью может использовать одобренные локальные или удалённые MCP-серверы через соответствующую архитектуру подключения.","Может ли MCP работать с локальными моделями?",{"id":1460,"answer":1461,"question":1462},"faq10","По состоянию на 8 октября 2026 года текущая редакция спецификации — 2026-07-28. Более старые реализации эпохи 2025 года всё ещё используются, поэтому совместимость необходимо проверять.","Какая текущая версия спецификации MCP?","FAQ по Model Context Protocol",{},{"id":1466,"data":1467,"type":42,"tunes":1469},"h-glossary",{"text":1468,"level":254},"Глоссарий",{},{"id":1471,"data":1472,"type":1471,"tunes":1515},"glossary",{"title":1473,"entries":1474},"Ключевые термины MCP",[1475,1477,1481,1484,1487,1490,1493,1497,1501,1504,1507,1511],{"term":595,"anchor":594,"definition":1476},"Model Context Protocol, открытый протокол для совместимых соединений между AI-хостами\u002Fклиентами и внешними серверами возможностей.",{"term":1478,"anchor":1479,"definition":1480},"MCP-хост","mcp-host","AI-приложение или среда выполнения, которая управляет взаимодействием с моделью и использует MCP-клиенты для подключения к серверам.",{"term":362,"anchor":1482,"definition":1483},"mcp-client","Протокольный компонент на стороне хоста, который взаимодействует с MCP-сервером.",{"term":365,"anchor":1485,"definition":1486},"mcp-server","Поставщик возможностей, который реализует MCP и предоставляет инструменты, ресурсы, подсказки или поддерживаемые расширения.",{"term":501,"anchor":1488,"definition":1489},"mcp-tool","Вызываемая структурированная возможность, предоставляемая MCP-сервером.",{"term":504,"anchor":1491,"definition":1492},"mcp-resource","Читаемые данные или контент, предоставляемые через методы ресурсов MCP.",{"term":1494,"anchor":1495,"definition":1496},"Подсказка","mcp-prompt","Многоразовый шаблон подсказки, предоставляемый MCP-сервером для совместимых хостов.",{"term":1498,"anchor":1499,"definition":1500},"Streamable HTTP","streamable-http","Ориентированный на HTTP транспорт MCP, используемый для связи с удалёнными\u002Fсетевыми серверами.",{"term":1502,"anchor":1502,"definition":1503},"stdio","Транспорт стандартного ввода\u002Fвывода процесса, обычно используемый для локальных интеграций MCP-серверов.",{"term":719,"anchor":1505,"definition":1506},"server-discover","Современный метод MCP, позволяющий клиенту inspect возможности сервера в эпоху протокола 2026-07-28.",{"term":1508,"anchor":1509,"definition":1510},"MRTR","mrtr","Multi Round-Trip Requests, механизм получения дополнительных входных данных во время запроса в эпоху протокола 2026-07-28.",{"term":1512,"anchor":1513,"definition":1514},"Расширение MCP","mcp-extension","Возможность, которая компонуется с базовым протоколом и может развиваться\u002Fверсионироваться отдельно, например Tasks или MCP Apps.",{},{"id":1517,"data":1518,"type":42,"tunes":1520},"h-conclusion",{"text":1519,"level":254},"Заключение",{},{"id":1522,"data":1523,"type":218,"tunes":1525},"p-conclusion-1",{"text":1524},"MCP проще всего понять, когда его граница остаётся узкой: он соединяет AI-приложения с внешними возможностями через стандартный протокол.",{},{"id":1527,"data":1528,"type":218,"tunes":1530},"p-conclusion-2",{"text":1529},"Модель не обязана находиться на MCP-сервере. Сервер не становится средой выполнения агента. Перечисленный инструмент не становится авторизованным бизнес-действием. И MCP не заменяет базовый API, источник истины, изоляцию арендаторов или доменную архитектуру.",{},{"id":1532,"data":1533,"type":218,"tunes":1535},"p-conclusion-3",{"text":1534},"Эта узость — сила протокола. MCP может стандартизировать то, как AI-системы достигают инструментов и данных, оставляя владение приложением, безопасность, бизнес-семантику и выбор модели на тех уровнях, которые действительно ими владеют.",{},{"id":1537,"data":1538,"type":42,"tunes":1540},"h-sources",{"text":1539,"level":254},"Первичные источники и текущая документация",{},{"id":1542,"data":1543,"type":218,"tunes":1545},"p-sources-note",{"text":1544},"MCP быстро развивается, поэтому утверждения, чувствительные к версии, в этой статье привязаны к состоянию на 8 октября 2026 года. Раздел Aaasaasa AI Client является оригинальным доказательством реализации и явно ограничен проверенным MCP-коннектором и областью брокера разрешений.",{},{"id":1547,"data":1548,"type":1554,"tunes":1555},"src-mcp-ts",{"link":1549,"meta":1550},"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002F",{"image":1551,"title":1552,"description":1553},{"url":401},"Model Context Protocol — TypeScript SDK v2","Актуальная документация стабильного TypeScript SDK, реализующего спецификацию MCP от 2026-07-28 и примитивы сервера\u002Fклиента.","linkTool",{},{"id":1557,"data":1558,"type":1554,"tunes":1564},"src-mcp-release",{"link":1559,"meta":1560},"https:\u002F\u002Fblog.modelcontextprotocol.io\u002Fposts\u002F2026-07-28\u002F",{"image":1561,"title":1562,"description":1563},{"url":401},"Model Context Protocol — выпуск спецификации от 2026-07-28","Официальное объяснение выпуска текущей редакции протокола MCP, включая stateless-ядро, MRTR, маршрутизацию, кэширование, усиление авторизации, расширения и устаревшие элементы.",{},{"id":1566,"data":1567,"type":1554,"tunes":1573},"src-mcp-migration",{"link":1568,"meta":1569},"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002Fmigration\u002Fsupport-2026-07-28",{"image":1570,"title":1571,"description":1572},{"url":401},"MCP TypeScript SDK — поддержка редакции протокола 2026-07-28","Руководство по реализации для текущей редакции протокола и совместимости с более ранними версиями.",{},{"id":1575,"data":1576,"type":1554,"tunes":1582},"src-openai-mcp",{"link":1577,"meta":1578},"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools-connectors-mcp",{"image":1579,"title":1580,"description":1581},{"url":401},"OpenAI — серверы MCP","Актуальные рекомендации OpenAI по подключению моделей к удалённым серверам MCP и локальным\u002Fприватным серверам MCP через Secure MCP Tunnel.",{},{"id":1584,"data":1585,"type":1554,"tunes":1591},"src-openai-agent-mcp",{"link":1586,"meta":1587},"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fagents-api\u002Ftools\u002Fmcp",{"image":1588,"title":1589,"description":1590},{"url":401},"OpenAI — подключения MCP для Agents API","Актуальные рекомендации по подключению MCP, охватывающие сервисные, средовые и stdio-локации, а также управление разрешёнными инструментами.",{},{"id":1593,"data":1594,"type":1554,"tunes":1600},"src-openai-tools",{"link":1595,"meta":1596},"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools",{"image":1597,"title":1598,"description":1599},{"url":401},"OpenAI — инструменты","Актуальный обзор, в котором удалённые серверы MCP рассматриваются наряду с вызовом функций, веб-поиском, оболочкой и другими инструментами модели.",{},{"id":1602,"data":1603,"type":1554,"tunes":1609},"src-openai-plugin-mcp",{"link":1604,"meta":1605},"https:\u002F\u002Fdevelopers.openai.com\u002Fplugins\u002Fconcepts\u002Fmcp-server",{"image":1606,"title":1607,"description":1608},{"url":401},"OpenAI — концепция сервера MCP","Актуальное описание серверов MCP, предоставляющих инструменты, ресурсы и подсказки для интеграций с внешними сервисами.",{},"2.31","Протокол контекста модели соединяет приложения ИИ с внешними инструментами, ресурсами и подсказками через стандартную границу клиент-сервер. Узнайте, что делает MCP, чего он не делает и где он вписывается в архитектуру агента.","\u002Fuploads\u002F2026\u002F10\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits-1791486640275-7ub1cq.webp","mcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits-1791486640275-7ub1cq","PUBLISHED","2026-10-08T15:09:00.000Z","2026-10-08T19:09:09.976Z","2026-10-08T19:18:07.694Z",{"en":1619,"de":1620,"sr":1621,"es":1622,"fr":1623,"it":1624,"ru":1625,"zh":1626},"\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u002Fde\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u002Fsr\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u002Fes\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u002Ffr\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u002Fit\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u002Fru\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits","\u002Fzh\u002Fblog\u002Fmcp-explained-what-it-connects-what-it-does-not-do-and-where-it-fits",[1628,1632,1636,1640],{"id":1629,"name":1630,"slug":1631},84,"Политики и границы данных","policy-and-data",{"id":1633,"name":1634,"slug":1635},57,"Границы данных","data-boundaries",{"id":1637,"name":1638,"slug":1639},48,"Возможности","capabilities",{"id":1641,"name":1642,"slug":1643},49,"Контроли и доказательства","controls",{"id":1645,"login":1646,"email":1647,"displayName":1648},"20","rooth8233","aleksandar@stajic.de","Aleksandar Stajić",[1650,2820],{"lang":1651,"title":1652,"content":1653,"contentJson":1654,"excerpt":2819},"en","MCP Explained: What It Connects, What It Does Not Do and Where It Fits","{\"time\":1791486641380,\"blocks\":[{\"id\":\"intro\",\"type\":\"paragraph\",\"data\":{\"text\":\"The Model Context Protocol (MCP) is an open protocol for connecting AI applications to external capabilities and information through standardized client-server contracts. An MCP server can expose tools, resources and prompts; an MCP-compatible host or client discovers and uses those capabilities on behalf of an AI application. MCP does not require the server to run its own language model, and it does not replace the agent runtime, business authorization, tenant isolation, application APIs or domain architecture behind the exposed capabilities.\"},\"tunes\":{}},{\"id\":\"direct\",\"type\":\"callout\",\"data\":{\"variant\":\"info\",\"title\":\"Direct answer\",\"body\":\"\u003Cstrong>MCP standardizes the boundary between an AI host and external capability providers.\u003C\u002Fstrong>\u003Cbr>\u003Cbr>A useful mental model is:\u003Cbr>\u003Cstrong>User → AI host \u002F agent runtime → MCP client → MCP server → application\u002FAPI\u002Fdata\u002Ftool\u003C\u002Fstrong>.\u003Cbr>\u003Cbr>The model can remain entirely on the host side. The MCP server may be ordinary deterministic software that exposes structured capabilities.\"},\"tunes\":{}},{\"id\":\"server-no-ai\",\"type\":\"callout\",\"data\":{\"variant\":\"success\",\"title\":\"An MCP server does not need its own AI model\",\"body\":\"A filesystem MCP server can list or read files. A database MCP server can run approved queries. A Jira MCP server can expose issue operations. None of those servers needs an LLM to satisfy the MCP contract. If a server internally uses AI, that is an implementation choice behind the protocol boundary, not an MCP requirement.\"},\"tunes\":{}},{\"id\":\"boundary\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"MCP capability is not business authority\",\"body\":\"If an MCP server exposes \u003Ccode>delete_file\u003C\u002Fcode>, \u003Ccode>refund_order\u003C\u002Fcode> or \u003Ccode>deploy_service\u003C\u002Fcode>, that only means the capability exists. The server\u002Fapplication must still enforce identity, permissions, tenant scope, business rules, confirmation requirements and audit controls. Protocol discovery must never silently become authorization.\"},\"tunes\":{}},{\"id\":\"current\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"Current-source note — 8 October 2026\",\"body\":\"The current MCP specification revision is \u003Cstrong>2026-07-28\u003C\u002Fstrong>. Its major change is a stateless protocol core with self-describing requests, optional \u003Ccode>server\u002Fdiscover\u003C\u002Fcode>, routable HTTP headers, cacheable list\u002Fresource responses, authorization hardening and a formal extension model. The TypeScript SDK v2 is the current stable SDK line implementing this revision. Older 2025-era clients and servers still exist, so implementation guidance must remain version-aware.\"},\"tunes\":{}},{\"id\":\"toc\",\"type\":\"tableOfContents\",\"data\":{\"title\":\"Contents\",\"minLevel\":2,\"maxLevel\":3},\"tunes\":{}},{\"id\":\"h-meaning\",\"type\":\"header\",\"data\":{\"text\":\"What MCP really standardizes\",\"level\":2},\"tunes\":{}},{\"id\":\"p-meaning-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Before MCP, every AI application could integrate external systems through its own tool schema, plugin format, authentication convention and connection code. The same service could need different adapters for a desktop AI client, an IDE agent and a custom application.\"},\"tunes\":{}},{\"id\":\"p-meaning-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP creates a reusable protocol boundary. The external system exposes capabilities through an MCP server, while compatible AI hosts implement an MCP client. This reduces integration coupling between the AI application and the underlying tool or data provider.\"},\"tunes\":{}},{\"id\":\"p-meaning-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The protocol does not standardize the entire application. It standardizes how capabilities are described, discovered and invoked across that boundary.\"},\"tunes\":{}},{\"id\":\"h-simple\",\"type\":\"header\",\"data\":{\"text\":\"The simplest example\",\"level\":2},\"tunes\":{}},{\"id\":\"p-simple-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Suppose an AI coding application needs access to a local project directory. Without MCP, the application might implement its own filesystem integration directly.\"},\"tunes\":{}},{\"id\":\"p-simple-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"With MCP, a filesystem server can expose capabilities such as listing directories, reading approved files or writing inside an allowed workspace. The AI host connects through an MCP client and presents those capabilities to the model or agent runtime.\"},\"tunes\":{}},{\"id\":\"p-simple-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The server does not need to understand the user's natural-language request. The host\u002Fmodel decides which capability is useful; the MCP server executes the structured request under its own security rules.\"},\"tunes\":{}},{\"id\":\"simple-flow\",\"type\":\"processFlow\",\"data\":{\"title\":\"A basic MCP tool call\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Host connects to server\",\"description\":\"The MCP-capable application configures access to the external MCP server.\"},{\"label\":\"2. Capabilities are discovered\",\"description\":\"The client learns which tools, resources or prompts the server exposes.\"},{\"label\":\"3. Model or runtime selects a capability\",\"description\":\"The AI application decides that one exposed capability is needed.\"},{\"label\":\"4. Client sends structured request\",\"description\":\"Arguments are sent through MCP to the server.\"},{\"label\":\"5. Server authorizes and executes\",\"description\":\"The server validates the request and calls its underlying system.\"},{\"label\":\"6. Result returns to host\",\"description\":\"The result becomes an observation or context input.\"},{\"label\":\"7. Host decides what happens next\",\"description\":\"The model\u002Fruntime may answer, call another tool or continue a workflow.\"}]},\"tunes\":{}},{\"id\":\"h-stops\",\"type\":\"header\",\"data\":{\"text\":\"Where the simple example stops\",\"level\":2},\"tunes\":{}},{\"id\":\"p-stops-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP does not define how the host chooses a tool, how an agent plans, how a business workflow is modeled or how a domain object such as an invoice or deployment should behave.\"},\"tunes\":{}},{\"id\":\"p-stops-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A protocol can make the integration interoperable while the underlying application remains incorrect, insecure or badly designed. A perfectly valid MCP request can still call the wrong business capability.\"},\"tunes\":{}},{\"id\":\"p-stops-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The central boundary is: MCP standardizes integration semantics, not application truth or business correctness.\"},\"tunes\":{}},{\"id\":\"h-architecture\",\"type\":\"header\",\"data\":{\"text\":\"The MCP architecture: host, client and server\",\"level\":2},\"tunes\":{}},{\"id\":\"architecture-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Component\",\"Responsibility\"],[\"AI host\",\"User-facing AI application or runtime that owns model interaction, context and overall workflow\"],[\"MCP client\",\"Protocol-side component used by the host to communicate with an MCP server\"],[\"MCP server\",\"Publishes capabilities and handles MCP requests\"],[\"Underlying system\",\"Application, API, database, filesystem, SaaS platform or service behind the MCP server\"],[\"Model\",\"Chooses or reasons about capabilities according to the host\u002Fruntime design; it is not necessarily inside the MCP server\"],[\"Authorization\u002Fbusiness policy\",\"Determines whether a requested operation is actually permitted\"]]},\"tunes\":{}},{\"id\":\"p-architecture-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A host can connect to multiple MCP servers, and one MCP server can front one or several underlying systems. The host remains responsible for integrating MCP results into the broader AI application.\"},\"tunes\":{}},{\"id\":\"p-architecture-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The server can be local to the host, run as a separate process or be remote over a network transport. Hosting topology and model location are independent decisions.\"},\"tunes\":{}},{\"id\":\"h-primitives\",\"type\":\"header\",\"data\":{\"text\":\"The three core server primitives\",\"level\":2},\"tunes\":{}},{\"id\":\"primitives-comparison\",\"type\":\"comparison\",\"data\":{\"title\":\"Tools, resources and prompts solve different needs\",\"layout\":\"table\",\"columns\":[{\"id\":\"tools\",\"label\":\"Tools\"},{\"id\":\"resources\",\"label\":\"Resources\"},{\"id\":\"prompts\",\"label\":\"Prompts\"}],\"rows\":[{\"id\":\"purpose\",\"label\":\"Primary purpose\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"interaction\",\"label\":\"Typical interaction\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"example\",\"label\":\"Example\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"risk\",\"label\":\"Typical risk\",\"values\":[\"\",\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"h-tools\",\"type\":\"header\",\"data\":{\"text\":\"Tools: callable capabilities\",\"level\":2},\"tunes\":{}},{\"id\":\"p-tools-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Tools are structured operations an MCP server makes available to the host. A tool has a name, description and input schema; modern implementations can also provide structured output.\"},\"tunes\":{}},{\"id\":\"p-tools-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Examples include searching a repository, reading a customer record, creating a ticket, running a build or sending a message. Tools can be read-only or have side effects.\"},\"tunes\":{}},{\"id\":\"p-tools-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"A good MCP tool surface should represent coherent user or agent goals rather than mechanically mirror every internal API endpoint. Operations with different permissions, confirmation requirements or blast radius should usually be separate tools.\"},\"tunes\":{}},{\"id\":\"h-resources\",\"type\":\"header\",\"data\":{\"text\":\"Resources: readable context and data\",\"level\":2},\"tunes\":{}},{\"id\":\"p-res-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Resources expose data or content that a client can list or read. They fit naturally when the semantic operation is “give me this artifact or information” rather than “perform this action.”\"},\"tunes\":{}},{\"id\":\"p-res-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A resource URI is not an authorization grant. The server still owns access control and must verify which principal may read the underlying object.\"},\"tunes\":{}},{\"id\":\"p-res-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The 2026-07-28 protocol revision adds cache semantics for list and resource-read responses, including freshness and cache scope, making caching behavior more explicit.\"},\"tunes\":{}},{\"id\":\"h-prompts\",\"type\":\"header\",\"data\":{\"text\":\"Prompts: reusable templates\",\"level\":2},\"tunes\":{}},{\"id\":\"p-prompts-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP prompts let a server publish reusable prompt templates to compatible clients. This can keep domain-specific instructions close to the capability provider.\"},\"tunes\":{}},{\"id\":\"p-prompts-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A prompt supplied by an MCP server does not automatically outrank the host's system or security instructions. The host decides how prompt material enters its context hierarchy.\"},\"tunes\":{}},{\"id\":\"p-prompts-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Protocol-provided prompt content should therefore be treated as capability data with explicit trust semantics, not as unrestricted instruction authority.\"},\"tunes\":{}},{\"id\":\"h-tool-vs-resource\",\"type\":\"header\",\"data\":{\"text\":\"Tool or resource?\",\"level\":2},\"tunes\":{}},{\"id\":\"tool-resource-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Need\",\"Prefer\"],[\"Perform an action with structured arguments\",\"Tool\"],[\"Read a specific stable artifact\",\"Resource\"],[\"Search or calculate dynamically\",\"Usually tool\"],[\"Modify external state\",\"Tool\"],[\"Package reusable prompt instructions\",\"Prompt\"],[\"Long-running asynchronous execution\",\"Tool plus application\u002Fruntime task handling or an MCP extension\"]]},\"tunes\":{}},{\"id\":\"h-model-location\",\"type\":\"header\",\"data\":{\"text\":\"Where is the AI model?\",\"level\":2},\"tunes\":{}},{\"id\":\"p-location-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP does not require the model to run on the MCP server. The model can be cloud-hosted, locally hosted, embedded in the desktop application or reached through another provider.\"},\"tunes\":{}},{\"id\":\"p-location-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The host normally owns the model interaction. The MCP server exposes external capability. A local MCP server can therefore be used by a host whose model runs in the cloud, and a remote MCP server can be used by a host whose model runs locally.\"},\"tunes\":{}},{\"id\":\"p-location-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"If the MCP server itself calls an LLM internally, that model is part of the server's implementation behind the protocol boundary; it is not required by MCP.\"},\"tunes\":{}},{\"id\":\"location-rule\",\"type\":\"callout\",\"data\":{\"variant\":\"success\",\"title\":\"Protocol location ≠ inference location\",\"body\":\"\u003Cstrong>Local MCP does not imply local inference, and remote MCP does not imply remote inference.\u003C\u002Fstrong> Connection location, tool-execution location and model\u002Fprovider location are separate architecture dimensions.\"},\"tunes\":{}},{\"id\":\"h-mcp-vs-api\",\"type\":\"header\",\"data\":{\"text\":\"MCP does not replace APIs\",\"level\":2},\"tunes\":{}},{\"id\":\"p-api-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"An MCP server often wraps existing APIs or services. REST, GraphQL, SQL, SDK calls and internal service contracts can remain exactly where they are.\"},\"tunes\":{}},{\"id\":\"p-api-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP adds an AI-facing interoperability layer. The underlying domain API can remain the authoritative application contract for ordinary deterministic clients.\"},\"tunes\":{}},{\"id\":\"p-api-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The usual architecture is therefore API\u002Fservice first, selected AI-facing capability second — not “replace every API with MCP.”\"},\"tunes\":{}},{\"id\":\"h-function-calling\",\"type\":\"header\",\"data\":{\"text\":\"MCP vs function calling\",\"level\":2},\"tunes\":{}},{\"id\":\"function-comparison\",\"type\":\"comparison\",\"data\":{\"title\":\"Function calling and MCP are related but not identical\",\"layout\":\"table\",\"columns\":[{\"id\":\"function\",\"label\":\"Function calling\"},{\"id\":\"mcp\",\"label\":\"MCP\"}],\"rows\":[{\"id\":\"scope\",\"label\":\"Scope\",\"values\":[\"\",\"\"]},{\"id\":\"definition\",\"label\":\"Tool definition\",\"values\":[\"\",\"\"]},{\"id\":\"portability\",\"label\":\"Portability\",\"values\":[\"\",\"\"]},{\"id\":\"coexist\",\"label\":\"Can they coexist?\",\"values\":[\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"p-function-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"OpenAI currently exposes remote MCP servers as one tool type alongside ordinary function calling, web search, shell and other tools. That implementation illustrates the architectural relationship: MCP connectivity and the model's own tool-call interface can be composed.\"},\"tunes\":{}},{\"id\":\"h-agent\",\"type\":\"header\",\"data\":{\"text\":\"MCP does not create the agent loop\",\"level\":2},\"tunes\":{}},{\"id\":\"p-agent-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"An AI agent needs a runtime that can decide, invoke tools, observe results, update state and continue or stop. MCP can supply some of the tools and data used by that loop.\"},\"tunes\":{}},{\"id\":\"p-agent-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The MCP server does not automatically become the planner, memory system or orchestrator. Those responsibilities normally remain in the host or agent runtime.\"},\"tunes\":{}},{\"id\":\"p-agent-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"A non-agentic application can also use MCP. One deterministic MCP tool call does not require an autonomous multi-step agent.\"},\"tunes\":{}},{\"id\":\"h-a2a\",\"type\":\"header\",\"data\":{\"text\":\"MCP vs A2A\",\"level\":2},\"tunes\":{}},{\"id\":\"p-a2a-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP primarily connects an AI host or agent to capabilities such as tools, resources and data. A2A targets collaboration between independent agent systems.\"},\"tunes\":{}},{\"id\":\"p-a2a-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A remote agent can internally use MCP to reach databases and tools while exposing an A2A interface to other agents. The protocols can therefore be layered rather than substituted.\"},\"tunes\":{}},{\"id\":\"p-a2a-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The existing protocol-stack article owns the broader MCP\u002FA2A\u002FUCP\u002FAP2\u002FA2UI comparison; G02 remains the canonical MCP definition.\"},\"tunes\":{}},{\"id\":\"ref-protocol-stack\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Fstajic.de\u002Fde\u002Fblog\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained\",\"title\":\"MCP vs A2A vs UCP vs AP2 vs A2UI: The Agent Protocol Stack Explained\",\"excerpt\":\"A broader responsibility map showing how MCP composes with agent collaboration, commerce, payment authority and agent-driven UI protocols.\",\"ctaLabel\":\"Read the protocol stack\"},\"tunes\":{}},{\"id\":\"h-transport\",\"type\":\"header\",\"data\":{\"text\":\"Local and remote MCP use different transport realities\",\"level\":2},\"tunes\":{}},{\"id\":\"p-transport-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP can connect to local and remote servers. Local desktop integrations commonly use process-level transports such as stdio; remote servers use HTTP-oriented transport.\"},\"tunes\":{}},{\"id\":\"p-transport-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The 2026-07-28 revision makes the protocol core stateless. Requests carry the information needed for protocol handling instead of depending on the earlier protocol-level session model.\"},\"tunes\":{}},{\"id\":\"p-transport-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The current revision also places method and capability names in HTTP headers so gateways, WAFs, rate limiters and load balancers can route and meter MCP traffic more naturally.\"},\"tunes\":{}},{\"id\":\"h-version\",\"type\":\"header\",\"data\":{\"text\":\"Why MCP version awareness matters\",\"level\":2},\"tunes\":{}},{\"id\":\"version-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Protocol era\",\"Operational characteristic\"],[\"2025-11-25 and earlier\",\"Handshake\u002Fsession-oriented lifecycle and older Streamable HTTP behavior\"],[\"2026-07-28\",\"Stateless core, optional server discovery, self-describing requests, routing headers, cache hints, MRTR and authorization hardening\"],[\"Extensions\",\"Capabilities such as Tasks and MCP Apps can version separately from the base protocol\"]]},\"tunes\":{}},{\"id\":\"p-version-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"SDK version and protocol version are also different things. The current TypeScript v2 SDK is the stable line for the 2026-07-28 revision, while older v1.x remains a maintenance line for 2025-era behavior.\"},\"tunes\":{}},{\"id\":\"p-version-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Architecture documentation should record both the SDK\u002Flibrary version and the protocol revision where interoperability behavior depends on them.\"},\"tunes\":{}},{\"id\":\"h-modern\",\"type\":\"header\",\"data\":{\"text\":\"What changed in MCP 2026-07-28\",\"level\":2},\"tunes\":{}},{\"id\":\"modern-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Change\",\"Why it matters\"],[\"Stateless core\",\"Remote servers can scale behind ordinary load balancers without protocol-level sticky sessions\"],[\"server\u002Fdiscover\",\"Clients can inspect server capabilities when needed\"],[\"Self-describing requests\",\"Protocol version and client capability metadata travel per request\"],[\"Mcp-Method \u002F Mcp-Name headers\",\"Gateways can route, meter and apply policy without parsing bodies\"],[\"Cache hints\",\"Lists\u002Fresource reads communicate freshness and sharing scope\"],[\"Multi Round-Trip Requests\",\"Servers can require additional input without the older bidirectional request model\"],[\"Authorization hardening\",\"Issuer validation and credential binding strengthen remote auth behavior\"],[\"Extensions framework\",\"Tasks, MCP Apps and other capabilities can evolve separately\"]]},\"tunes\":{}},{\"id\":\"h-deprecations\",\"type\":\"header\",\"data\":{\"text\":\"Roots, sampling and logging are no longer the direction for new implementations\",\"level\":2},\"tunes\":{}},{\"id\":\"p-dep-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The 2026-07-28 release marks roots, sampling and logging as deprecated protocol capabilities with a defined compatibility window.\"},\"tunes\":{}},{\"id\":\"p-dep-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Older tutorials may still show these features as central primitives. New implementation work should follow the current specification rather than copy older lifecycle diagrams blindly.\"},\"tunes\":{}},{\"id\":\"p-dep-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Deprecation does not mean immediate removal. It means new systems should avoid unnecessary new dependencies on capabilities the protocol is moving away from.\"},\"tunes\":{}},{\"id\":\"h-tasks\",\"type\":\"header\",\"data\":{\"text\":\"Long-running work is not the same as ordinary MCP tool invocation\",\"level\":2},\"tunes\":{}},{\"id\":\"p-task-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Long-running operations need lifecycle semantics beyond a simple immediate tool result. In the current ecosystem, Tasks moved into a dedicated MCP extension.\"},\"tunes\":{}},{\"id\":\"p-task-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This reinforces a useful design principle: the base protocol does not need to absorb every agent-runtime concern.\"},\"tunes\":{}},{\"id\":\"p-task-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"An application can also keep long-running workflow ownership entirely in its own runtime and use ordinary MCP tools as underlying operations.\"},\"tunes\":{}},{\"id\":\"h-apps\",\"type\":\"header\",\"data\":{\"text\":\"MCP Apps extend UI capability without redefining the core protocol\",\"level\":2},\"tunes\":{}},{\"id\":\"p-apps-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP Apps associate richer interactive UI experiences with MCP tools through the extension model.\"},\"tunes\":{}},{\"id\":\"p-apps-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The host still controls how that UI is embedded, sandboxed and secured.\"},\"tunes\":{}},{\"id\":\"p-apps-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Core capability exchange and UI rendering should therefore remain separate architecture responsibilities.\"},\"tunes\":{}},{\"id\":\"h-auth\",\"type\":\"header\",\"data\":{\"text\":\"MCP authorization is not your complete authorization model\",\"level\":2},\"tunes\":{}},{\"id\":\"p-auth-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Remote MCP needs protocol-level authentication and authorization mechanisms so clients and servers can establish trusted access. The current specification continues to harden OAuth\u002FOIDC-related behavior.\"},\"tunes\":{}},{\"id\":\"p-auth-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"That layer answers whether a client is allowed to connect or request protocol scopes. It does not automatically answer whether Alice may refund order 123, whether an agent may write production configuration or whether Tenant A may read Tenant B data.\"},\"tunes\":{}},{\"id\":\"p-auth-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Those domain decisions belong in the server\u002Fapplication authorization model and must be enforced before invoking the underlying operation.\"},\"tunes\":{}},{\"id\":\"auth-rule\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Never map “authenticated MCP client” to “trusted for every tool”\",\"body\":\"Connection trust, tool visibility, tool permission, user authorization, tenant isolation and business approval are different controls. Keep them separate.\"},\"tunes\":{}},{\"id\":\"h-identity\",\"type\":\"header\",\"data\":{\"text\":\"Identity can cross several boundaries\",\"level\":2},\"tunes\":{}},{\"id\":\"p-id-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"An MCP request may involve the MCP client application, the signed-in human, an agent\u002Fsession identity and a downstream service account.\"},\"tunes\":{}},{\"id\":\"p-id-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The server needs an explicit policy for which principal the operation is performed on behalf of. Otherwise a powerful service credential can become a confused-deputy path.\"},\"tunes\":{}},{\"id\":\"p-id-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"For enterprise use, correlation between user identity, agent identity, MCP connection and downstream authorization is as important as protocol compatibility.\"},\"tunes\":{}},{\"id\":\"h-tenant\",\"type\":\"header\",\"data\":{\"text\":\"Tenant isolation remains outside MCP capability discovery\",\"level\":2},\"tunes\":{}},{\"id\":\"p-tenant-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A multi-tenant MCP server must apply tenant scope when it reads or changes tenant-owned resources. Returning a tool named search_documents does not define which tenant's documents are eligible.\"},\"tunes\":{}},{\"id\":\"p-tenant-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Tenant scope should be derived from trusted identity or membership and carried into databases, caches, vector search, object storage and downstream APIs.\"},\"tunes\":{}},{\"id\":\"p-tenant-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Retrieving cross-tenant content and asking the model not to use it is already an isolation failure.\"},\"tunes\":{}},{\"id\":\"h-source\",\"type\":\"header\",\"data\":{\"text\":\"MCP does not define Source of Truth\",\"level\":2},\"tunes\":{}},{\"id\":\"p-source-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"An MCP server can expose a database, document repository, web search service or AI-generated summary. The protocol does not declare which source is authoritative for a claim.\"},\"tunes\":{}},{\"id\":\"p-source-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Source-of-Truth rules belong to application\u002Fdomain architecture. The host or server can encode authority through tool design, metadata, access policy or validation, but MCP itself does not make one capability “true.”\"},\"tunes\":{}},{\"id\":\"p-source-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"A tool can therefore be perfectly callable through MCP and still return stale, secondary or non-authoritative information.\"},\"tunes\":{}},{\"id\":\"h-context\",\"type\":\"header\",\"data\":{\"text\":\"MCP and context engineering\",\"level\":2},\"tunes\":{}},{\"id\":\"p-context-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP can increase the capabilities and information available to an AI application, but context engineering still determines what reaches the model.\"},\"tunes\":{}},{\"id\":\"p-context-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Tool catalogs consume model-visible context in many hosts. Tool results can be large. Resources can be numerous. A host needs selection, filtering, dynamic loading and compaction rather than exposing everything on every turn.\"},\"tunes\":{}},{\"id\":\"p-context-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Capability availability and model-visible context should therefore be treated as separate layers.\"},\"tunes\":{}},{\"id\":\"h-tool-design\",\"type\":\"header\",\"data\":{\"text\":\"Design MCP tools around outcomes and risk boundaries\",\"level\":2},\"tunes\":{}},{\"id\":\"tool-design-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Weak tool design\",\"Stronger tool design\"],[\"execute_api(method,url,body)\",\"Narrow domain tools with validated operations\"],[\"One admin tool for all actions\",\"Separate read\u002Fwrite\u002Fapproval operations\"],[\"Raw internal API mirrored 1:1\",\"AI-facing contract around coherent user goals\"],[\"One broad filesystem tool\",\"Workspace-scoped read\u002Fwrite operations\"],[\"Security policy only in description\",\"Server enforces policy in code\"],[\"Unbounded raw response\",\"Structured decision-relevant output\"],[\"Delete\u002Fupdate mixed with read\",\"Separate side-effect tools with confirmation policy\"]]},\"tunes\":{}},{\"id\":\"h-approvals\",\"type\":\"header\",\"data\":{\"text\":\"Approvals belong in the execution architecture\",\"level\":2},\"tunes\":{}},{\"id\":\"p-approve-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A host can require user approval before invoking selected MCP tools. OpenAI's current MCP integration supports automatic or explicit-approval execution patterns.\"},\"tunes\":{}},{\"id\":\"p-approve-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Host approval is useful but should not be the server's only protection because another compatible MCP client may use a different approval model.\"},\"tunes\":{}},{\"id\":\"p-approve-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"For destructive or financially consequential actions, use defense in depth: clear tool contract, runtime approval where appropriate, server-side authorization, business validation and audit.\"},\"tunes\":{}},{\"id\":\"h-observability\",\"type\":\"header\",\"data\":{\"text\":\"MCP observability should connect protocol calls to domain actions\",\"level\":2},\"tunes\":{}},{\"id\":\"p-obs-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"An MCP trace is most useful when it can be correlated with the underlying application call, database change or business transaction.\"},\"tunes\":{}},{\"id\":\"p-obs-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The 2026-07-28 ecosystem standardizes W3C Trace Context propagation conventions, making it easier to follow a request across host, client, server and downstream services.\"},\"tunes\":{}},{\"id\":\"p-obs-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Protocol logs alone are not enough for consequential operations. Audit evidence should also record relevant principal, tenant, target resource, approval and resulting state change.\"},\"tunes\":{}},{\"id\":\"h-failure\",\"type\":\"header\",\"data\":{\"text\":\"What MCP cannot fix\",\"level\":2},\"tunes\":{}},{\"id\":\"failure-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Problem\",\"Why MCP does not solve it\"],[\"Bad business API\",\"MCP can expose the bad API more consistently\"],[\"Wrong data\",\"Protocol validity does not create factual correctness\"],[\"Missing tenant isolation\",\"Tool discovery does not enforce resource ownership\"],[\"Excessive privileges\",\"A standardized tool can still be overprivileged\"],[\"Poor agent planning\",\"MCP exposes capabilities; runtime\u002Fmodel still chooses how to use them\"],[\"Bad retry\u002Fidempotency design\",\"Protocol calls do not make side effects safe\"],[\"No Source of Truth\",\"MCP does not decide which system owns a fact\"],[\"Weak evaluation\",\"Interoperability does not prove task success\"],[\"No audit policy\",\"Transport traces do not define retention or accountability\"],[\"Protocol mismatch\",\"Old\u002Fnew versions can still require migration or compatibility handling\"]]},\"tunes\":{}},{\"id\":\"h-implementation\",\"type\":\"header\",\"data\":{\"text\":\"Original implementation evidence: Aaasaasa AI Client\",\"level\":2},\"tunes\":{}},{\"id\":\"impl-note\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"Implementation evidence\",\"body\":\"Aaasaasa AI Client contains an authenticated local MCP connector\u002Fbroker for approved local directories and integration through Secure MCP Tunnel. This is concrete implementation evidence for the protocol boundary and permission architecture, not a claim of a general-purpose commercial MCP platform.\"},\"tunes\":{}},{\"id\":\"p-impl-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The application can run an authenticated Streamable HTTP MCP endpoint on loopback. The endpoint exposes only directories selected through the central workspace permission broker.\"},\"tunes\":{}},{\"id\":\"p-impl-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The local endpoint and remote route are separate concerns: the local connector can bind only to loopback, while a Secure MCP Tunnel can make the approved MCP service reachable to a permitted external AI client without exposing the whole local machine.\"},\"tunes\":{}},{\"id\":\"p-impl-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The central permission model distinguishes chat-only, read-only, project-write and custom-directory profiles. Direct Chat has no filesystem or shell access; tool-capable agent runtimes use the selected permission profile.\"},\"tunes\":{}},{\"id\":\"p-impl-4\",\"type\":\"paragraph\",\"data\":{\"text\":\"This is a direct implementation of the G02 boundary: MCP provides the standardized capability connection, while the application-owned permission broker decides which directories the server may expose.\"},\"tunes\":{}},{\"id\":\"impl-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Implemented element\",\"Architecture evidence\"],[\"Authenticated local MCP endpoint\",\"MCP server can be a local deterministic capability service\"],[\"Loopback binding\",\"Network exposure and protocol capability are separate decisions\"],[\"Secure MCP Tunnel integration\",\"Private\u002Flocal MCP can be bridged through a controlled route\"],[\"Central permission broker\",\"MCP capability is constrained by application policy\"],[\"Selected directory scope\",\"Filesystem visibility is explicitly bounded\"],[\"Direct Chat without OS tools\",\"Model access does not automatically imply tool access\"]]},\"tunes\":{}},{\"id\":\"impl-boundary\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Evidence boundary\",\"body\":\"The implementation demonstrates MCP connectivity and permission-scoped local directory exposure. It does not imply that every MCP primitive, every 2026-07-28 feature or every enterprise authorization extension is implemented.\"},\"tunes\":{}},{\"id\":\"h-use\",\"type\":\"header\",\"data\":{\"text\":\"When MCP is a good fit\",\"level\":2},\"tunes\":{}},{\"id\":\"use-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"MCP is a strong fit when\",\"A direct integration may be simpler when\"],[\"The same capability should be reusable across multiple AI hosts\",\"One application owns both sides and portability has little value\"],[\"An external system wants to publish discoverable AI-facing tools\u002Fresources\",\"A single stable internal API call is sufficient\"],[\"You want a standard boundary around local tools\u002Fdata\",\"There is no AI-facing interoperability requirement\"],[\"Tool providers and AI clients evolve independently\",\"The integration is intentionally private and tightly coupled\"],[\"You want ecosystem-compatible capability discovery\",\"The capability set is tiny and fixed in application code\"]]},\"tunes\":{}},{\"id\":\"h-not-need\",\"type\":\"header\",\"data\":{\"text\":\"When you do not need MCP\",\"level\":2},\"tunes\":{}},{\"id\":\"p-not-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Do not add MCP merely because the application uses AI. If your backend already calls one internal API and no independent MCP client needs that capability, an ordinary function or service call may be clearer.\"},\"tunes\":{}},{\"id\":\"p-not-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP adds value at an interoperability boundary. Without that boundary, the protocol can become an unnecessary adapter layer.\"},\"tunes\":{}},{\"id\":\"p-not-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The architectural question is not “Does this project have AI?” but “Do independently evolving AI hosts and capability providers benefit from a standard contract?”\"},\"tunes\":{}},{\"id\":\"h-security\",\"type\":\"header\",\"data\":{\"text\":\"MCP security checklist\",\"level\":2},\"tunes\":{}},{\"id\":\"security-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Boundary\",\"Question\"],[\"Server identity\",\"Which MCP server am I actually connected to?\"],[\"Client identity\",\"Which application\u002Fclient is requesting access?\"],[\"End-user identity\",\"On whose behalf is the operation performed?\"],[\"Tool allowlist\",\"Which capabilities may this host\u002Fagent discover and call?\"],[\"Business permission\",\"May this principal perform this operation?\"],[\"Tenant scope\",\"Which tenant\u002Fresource boundary applies?\"],[\"Credential isolation\",\"Are credentials bound correctly and kept outside model context?\"],[\"Approval\",\"Which side effects require human confirmation?\"],[\"Input validation\",\"Are tool arguments validated independently of model output?\"],[\"Output trust\",\"Can returned content contain untrusted instructions or sensitive data?\"],[\"Network exposure\",\"Is a local server accidentally exposed beyond intended interfaces?\"],[\"Audit\",\"Can a protocol call be correlated with the downstream action?\"]]},\"tunes\":{}},{\"id\":\"h-misconceptions\",\"type\":\"header\",\"data\":{\"text\":\"Common misconceptions\",\"level\":2},\"tunes\":{}},{\"id\":\"misconceptions-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Misconception\",\"Correction\"],[\"“An MCP server is an AI server.”\",\"It can be ordinary deterministic software exposing capabilities.\"],[\"“I need my own LLM on the MCP server.”\",\"No. The model can live entirely on the host side.\"],[\"“MCP replaces REST APIs.”\",\"MCP often wraps existing APIs for AI-facing interoperability.\"],[\"“MCP is an agent framework.”\",\"MCP supplies capabilities; an agent runtime manages iteration and state.\"],[\"“MCP and function calling compete.”\",\"A host can bridge MCP capabilities into its model tool interface.\"],[\"“MCP replaces A2A.”\",\"MCP focuses on capability integration; A2A focuses on agent collaboration.\"],[\"“If a tool is listed, the user may call it.”\",\"Discovery is not authorization.\"],[\"“OAuth solves business permissions.”\",\"Connection authorization does not replace domain authorization or tenant isolation.\"],[\"“Local MCP means local AI.”\",\"Tool-server location and inference location are independent.\"],[\"“MCP makes tool output trustworthy.”\",\"Data quality, authority and provenance still belong to the source\u002Fapplication.\"],[\"“One giant generic tool is flexible.”\",\"Over-broad tools weaken permissions, validation and observability.\"],[\"“Old tutorials are implementation-current.”\",\"The 2026-07-28 revision materially changed lifecycle and transport behavior.\"]]},\"tunes\":{}},{\"id\":\"h-design\",\"type\":\"header\",\"data\":{\"text\":\"A practical MCP design sequence\",\"level\":2},\"tunes\":{}},{\"id\":\"design-flow\",\"type\":\"processFlow\",\"data\":{\"title\":\"Design the boundary before implementing the server\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Identify the interoperability boundary\",\"description\":\"Confirm that independent AI hosts actually need reusable access.\"},{\"label\":\"2. Keep the domain API authoritative\",\"description\":\"Preserve the real application\u002Fservice contract behind MCP.\"},{\"label\":\"3. Choose primitives deliberately\",\"description\":\"Use tools, resources and prompts according to their semantics.\"},{\"label\":\"4. Split by risk and permission\",\"description\":\"Separate read, write, destructive and approval-required operations.\"},{\"label\":\"5. Define identity propagation\",\"description\":\"Know which client, user, agent and downstream principal each call represents.\"},{\"label\":\"6. Enforce business authorization\",\"description\":\"Validate permissions, tenant scope and target ownership.\"},{\"label\":\"7. Choose local or remote transport\",\"description\":\"Match deployment topology to the real need.\"},{\"label\":\"8. Pin protocol\u002FSDK expectations\",\"description\":\"Document 2026-07-28 versus older compatibility.\"},{\"label\":\"9. Add approvals for consequential actions\",\"description\":\"Use risk-appropriate confirmation controls.\"},{\"label\":\"10. Design structured outputs\",\"description\":\"Return concise machine-usable results.\"},{\"label\":\"11. Add tracing and audit correlation\",\"description\":\"Connect MCP calls to downstream service\u002Fbusiness events.\"},{\"label\":\"12. Test portability\",\"description\":\"Verify more than one client where interoperability is a stated requirement.\"}]},\"tunes\":{}},{\"id\":\"h-checklist\",\"type\":\"header\",\"data\":{\"text\":\"MCP architecture checklist\",\"level\":2},\"tunes\":{}},{\"id\":\"checklist-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Question\",\"Expected answer\"],[\"Why is MCP needed?\",\"A real AI-facing interoperability boundary\"],[\"What does the server expose?\",\"Explicit tools\u002Fresources\u002Fprompts\"],[\"Where does the model run?\",\"Independent host\u002Fprovider decision\"],[\"Where does tool execution run?\",\"Named server\u002Fruntime location\"],[\"Which protocol revision is expected?\",\"Version-aware contract\"],[\"Who is the requesting principal?\",\"Client\u002Fuser\u002Fagent identity model\"],[\"Which tools may be discovered?\",\"Allowlist\u002Fcapability policy\"],[\"Which operations may execute?\",\"Server-side business authorization\"],[\"How is tenant\u002Fresource scope enforced?\",\"Trusted tenant\u002Fresource ownership checks\"],[\"Which actions need approval?\",\"Risk-based confirmation policy\"],[\"How are credentials protected?\",\"Trusted runtime storage, not model-visible secrets\"],[\"How is output bounded?\",\"Structured relevant result contract\"],[\"How are calls traced?\",\"Correlation through MCP to downstream action\"],[\"What happens if MCP is unavailable?\",\"Defined fallback\u002Ffailure behavior\"],[\"Can another compatible host use it?\",\"Portability validated where required\"]]},\"tunes\":{}},{\"id\":\"h-edge\",\"type\":\"header\",\"data\":{\"text\":\"Edge cases and limitations\",\"level\":2},\"tunes\":{}},{\"id\":\"p-edge-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A local stdio MCP server can have little network exposure while still be dangerous if the process itself has excessive filesystem or shell permissions.\"},\"tunes\":{}},{\"id\":\"p-edge-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A remote MCP server may expose only public documentation or highly sensitive enterprise actions. “Remote MCP” says little about risk without the capability and authorization context.\"},\"tunes\":{}},{\"id\":\"p-edge-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Some servers may use only tools and ignore resources\u002Fprompts. MCP compatibility does not require every optional primitive to be equally important.\"},\"tunes\":{}},{\"id\":\"p-edge-4\",\"type\":\"paragraph\",\"data\":{\"text\":\"A host can translate between its own internal tool model and MCP. Users may never see the protocol boundary directly, which is acceptable if security and attribution remain clear.\"},\"tunes\":{}},{\"id\":\"p-edge-5\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP continues to evolve rapidly. Extensions, authorization patterns, SDK APIs and ecosystem conventions can change faster than the core architectural distinction.\"},\"tunes\":{}},{\"id\":\"h-change\",\"type\":\"header\",\"data\":{\"text\":\"What would change this answer?\",\"level\":2},\"tunes\":{}},{\"id\":\"p-change-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Future MCP revisions can change lifecycle, transports, authorization and extension mechanisms. The July 2026 revision already demonstrates why implementation-specific claims must be dated.\"},\"tunes\":{}},{\"id\":\"p-change-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The canonical boundary would change only if MCP expanded from an interoperability protocol into an end-to-end application\u002Fagent architecture standard. That is not what the current protocol defines.\"},\"tunes\":{}},{\"id\":\"p-change-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"For implementation work, always check the current specification and exact SDK line instead of copying version-sensitive examples from older tutorials.\"},\"tunes\":{}},{\"id\":\"h-related\",\"type\":\"header\",\"data\":{\"text\":\"Related canonical knowledge\",\"level\":2},\"tunes\":{}},{\"id\":\"p-related-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP belongs downstream of Agentic AI: first understand the agent\u002Fruntime\u002Ftool boundary, then use MCP when external capabilities need a portable protocol contract.\"},\"tunes\":{}},{\"id\":\"p-related-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP also depends on RBAC and tenant isolation because protocol-level capability exposure does not determine application authorization.\"},\"tunes\":{}},{\"id\":\"p-related-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"The broader protocol-stack article explains where MCP sits beside A2A, UCP, AP2 and A2UI. G02 remains the canonical source for MCP itself.\"},\"tunes\":{}},{\"id\":\"ref-reliability\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Fstajic.de\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough\",\"title\":\"AI Agent Reliability: Why the Final Answer Is Not Enough\",\"excerpt\":\"MCP tool calls become part of an agent trajectory; reliable systems need to evaluate actions and observations, not only final text.\",\"ctaLabel\":\"Read the agent reliability article\"},\"tunes\":{}},{\"id\":\"h-faq\",\"type\":\"header\",\"data\":{\"text\":\"Frequently asked questions\",\"level\":2},\"tunes\":{}},{\"id\":\"faq\",\"type\":\"faq\",\"data\":{\"title\":\"Model Context Protocol FAQ\",\"items\":[{\"id\":\"faq1\",\"question\":\"What is MCP?\",\"answer\":\"The Model Context Protocol is an open client-server protocol for connecting AI applications to external tools, resources, prompts and capability providers through a standardized contract.\"},{\"id\":\"faq2\",\"question\":\"Does an MCP server need an AI model?\",\"answer\":\"No. An MCP server can be completely deterministic software. The model normally runs in the AI host or agent runtime, although a server may optionally use AI internally.\"},{\"id\":\"faq3\",\"question\":\"What is the difference between an MCP client and server?\",\"answer\":\"The client is the protocol component used by an AI host to communicate with capability providers. The server publishes and executes the capabilities it exposes.\"},{\"id\":\"faq4\",\"question\":\"Does MCP replace function calling?\",\"answer\":\"No. Function\u002Ftool calling is how a model invokes configured capabilities. MCP standardizes discovery and communication with external capability servers. A host can bridge the two.\"},{\"id\":\"faq5\",\"question\":\"Does MCP replace REST APIs?\",\"answer\":\"No. MCP servers frequently wrap existing REST, GraphQL, database or service APIs and provide an AI-facing interoperability layer.\"},{\"id\":\"faq6\",\"question\":\"Is MCP an agent framework?\",\"answer\":\"No. MCP exposes capabilities. Agent planning, state, memory, context management, retries, orchestration and stopping belong to the surrounding runtime.\"},{\"id\":\"faq7\",\"question\":\"What is the difference between MCP and A2A?\",\"answer\":\"MCP primarily connects an AI host or agent to tools and data providers. A2A connects independent agent systems for collaboration and delegation.\"},{\"id\":\"faq8\",\"question\":\"Does MCP handle authorization?\",\"answer\":\"MCP includes protocol-level authorization mechanisms, especially for remote servers, but the application must still enforce business permissions, resource ownership and tenant isolation.\"},{\"id\":\"faq9\",\"question\":\"Can MCP work with local models?\",\"answer\":\"Yes. Model location is independent of MCP. A local-model host can call local or remote MCP servers, and a cloud-model host can use approved local or remote MCP servers through an appropriate connection architecture.\"},{\"id\":\"faq10\",\"question\":\"What is the current MCP specification version?\",\"answer\":\"As of 8 October 2026, the current specification revision is 2026-07-28. Older 2025-era implementations remain in use, so compatibility must be checked.\"}]},\"tunes\":{}},{\"id\":\"h-glossary\",\"type\":\"header\",\"data\":{\"text\":\"Glossary\",\"level\":2},\"tunes\":{}},{\"id\":\"glossary\",\"type\":\"glossary\",\"data\":{\"title\":\"Key MCP terms\",\"entries\":[{\"term\":\"MCP\",\"definition\":\"Model Context Protocol, an open protocol for interoperable connections between AI hosts\u002Fclients and external capability servers.\",\"anchor\":\"mcp\"},{\"term\":\"MCP host\",\"definition\":\"The AI application or runtime that owns model interaction and uses MCP clients to connect to servers.\",\"anchor\":\"mcp-host\"},{\"term\":\"MCP client\",\"definition\":\"Protocol component on the host side that communicates with an MCP server.\",\"anchor\":\"mcp-client\"},{\"term\":\"MCP server\",\"definition\":\"Capability provider that implements MCP and exposes tools, resources, prompts or supported extensions.\",\"anchor\":\"mcp-server\"},{\"term\":\"Tool\",\"definition\":\"Callable structured capability exposed by an MCP server.\",\"anchor\":\"mcp-tool\"},{\"term\":\"Resource\",\"definition\":\"Readable data or content exposed through MCP resource methods.\",\"anchor\":\"mcp-resource\"},{\"term\":\"Prompt\",\"definition\":\"Reusable prompt template exposed by an MCP server for compatible hosts.\",\"anchor\":\"mcp-prompt\"},{\"term\":\"Streamable HTTP\",\"definition\":\"HTTP-oriented MCP transport used for remote\u002Fnetworked server communication.\",\"anchor\":\"streamable-http\"},{\"term\":\"stdio\",\"definition\":\"Process standard-input\u002Foutput transport commonly used for local MCP server integrations.\",\"anchor\":\"stdio\"},{\"term\":\"server\u002Fdiscover\",\"definition\":\"Modern MCP method that lets a client inspect server capabilities in the 2026-07-28 protocol era.\",\"anchor\":\"server-discover\"},{\"term\":\"MRTR\",\"definition\":\"Multi Round-Trip Requests, a mechanism for obtaining additional input during a request in the 2026-07-28 protocol era.\",\"anchor\":\"mrtr\"},{\"term\":\"MCP extension\",\"definition\":\"Capability that composes with the base protocol and can evolve\u002Fversion separately, such as Tasks or MCP Apps.\",\"anchor\":\"mcp-extension\"}]},\"tunes\":{}},{\"id\":\"h-conclusion\",\"type\":\"header\",\"data\":{\"text\":\"Conclusion\",\"level\":2},\"tunes\":{}},{\"id\":\"p-conclusion-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP is easiest to understand when its boundary stays narrow: it connects AI applications to external capabilities through a standard protocol.\"},\"tunes\":{}},{\"id\":\"p-conclusion-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The model does not have to live on the MCP server. The server does not become the agent runtime. A listed tool does not become an authorized business action. And MCP does not replace the underlying API, Source of Truth, tenant isolation or domain architecture.\"},\"tunes\":{}},{\"id\":\"p-conclusion-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"That narrowness is the protocol's strength. MCP can standardize how AI systems reach tools and data while leaving application ownership, security, business semantics and model choice in the layers that actually own them.\"},\"tunes\":{}},{\"id\":\"h-sources\",\"type\":\"header\",\"data\":{\"text\":\"Primary sources and current documentation\",\"level\":2},\"tunes\":{}},{\"id\":\"p-sources-note\",\"type\":\"paragraph\",\"data\":{\"text\":\"MCP is evolving quickly, so version-sensitive claims in this article are tied to the 8 October 2026 state. The Aaasaasa AI Client section is original implementation evidence and is explicitly limited to the verified MCP connector and permission-broker scope.\"},\"tunes\":{}},{\"id\":\"src-mcp-ts\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Model Context Protocol — TypeScript SDK v2\",\"description\":\"Current stable TypeScript SDK documentation implementing the 2026-07-28 MCP specification and server\u002Fclient primitives.\"}},\"tunes\":{}},{\"id\":\"src-mcp-release\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fblog.modelcontextprotocol.io\u002Fposts\u002F2026-07-28\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Model Context Protocol — 2026-07-28 Specification Release\",\"description\":\"Official release explanation for the current MCP protocol revision, including stateless core, MRTR, routing, caching, authorization hardening, extensions and deprecations.\"}},\"tunes\":{}},{\"id\":\"src-mcp-migration\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fts.sdk.modelcontextprotocol.io\u002Fv2\u002Fmigration\u002Fsupport-2026-07-28\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"MCP TypeScript SDK — Supporting protocol revision 2026-07-28\",\"description\":\"Version-specific implementation guidance for the current protocol revision and earlier-era compatibility.\"}},\"tunes\":{}},{\"id\":\"src-openai-mcp\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools-connectors-mcp\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — MCP servers\",\"description\":\"Current OpenAI guidance for connecting models to remote MCP servers and local\u002Fprivate MCP servers through Secure MCP Tunnel.\"}},\"tunes\":{}},{\"id\":\"src-openai-agent-mcp\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fagents-api\u002Ftools\u002Fmcp\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — MCP connections for Agents API\",\"description\":\"Current MCP connection guidance covering service, environment and stdio locations plus allowed-tool controls.\"}},\"tunes\":{}},{\"id\":\"src-openai-tools\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Ftools\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — Tools\",\"description\":\"Current overview placing remote MCP servers alongside function calling, web search, shell and other model tools.\"}},\"tunes\":{}},{\"id\":\"src-openai-plugin-mcp\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fplugins\u002Fconcepts\u002Fmcp-server\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — MCP server concept\",\"description\":\"Current description of MCP servers exposing tools, resources and prompts for external service integrations.\"}},\"tunes\":{}}],\"version\":\"2.31.6\"}",{"time":1655,"blocks":1656,"version":2818},1791486641380,[1657,1661,1666,1671,1676,1681,1685,1689,1693,1697,1701,1705,1709,1713,1717,1743,1747,1751,1755,1759,1763,1788,1792,1796,1800,1824,1828,1832,1836,1840,1844,1848,1852,1856,1860,1864,1868,1872,1876,1900,1904,1908,1912,1916,1921,1925,1929,1933,1937,1941,1962,1966,1970,1974,1978,1982,1986,1990,1994,1998,2004,2008,2012,2016,2020,2024,2039,2043,2047,2051,2081,2085,2089,2093,2097,2101,2105,2109,2113,2117,2121,2125,2129,2133,2137,2141,2145,2150,2154,2158,2162,2166,2170,2174,2178,2182,2186,2190,2194,2198,2202,2206,2210,2214,2218,2245,2249,2253,2257,2261,2265,2269,2273,2277,2281,2318,2322,2327,2331,2335,2339,2343,2368,2373,2377,2399,2403,2407,2411,2415,2419,2462,2466,2509,2513,2554,2558,2609,2613,2617,2621,2625,2629,2633,2637,2641,2645,2649,2653,2657,2661,2665,2672,2676,2711,2715,2746,2750,2754,2758,2762,2766,2770,2776,2783,2790,2797,2804,2811],{"id":215,"data":1658,"type":218,"tunes":1660},{"text":1659},"The Model Context Protocol (MCP) is an open protocol for connecting AI applications to external capabilities and information through standardized client-server contracts. An MCP server can expose tools, resources and prompts; an MCP-compatible host or client discovers and uses those capabilities on behalf of an AI application. MCP does not require the server to run its own language model, and it does not replace the agent runtime, business authorization, tenant isolation, application APIs or domain architecture behind the exposed capabilities.",{},{"id":221,"data":1662,"type":226,"tunes":1665},{"body":1663,"title":1664,"variant":225},"\u003Cstrong>MCP standardizes the boundary between an AI host and external capability providers.\u003C\u002Fstrong>\u003Cbr>\u003Cbr>A useful mental model is:\u003Cbr>\u003Cstrong>User → AI host \u002F agent runtime → MCP client → MCP server → application\u002FAPI\u002Fdata\u002Ftool\u003C\u002Fstrong>.\u003Cbr>\u003Cbr>The model can remain entirely on the host side. The MCP server may be ordinary deterministic software that exposes structured capabilities.","Direct answer",{},{"id":229,"data":1667,"type":226,"tunes":1670},{"body":1668,"title":1669,"variant":233},"A filesystem MCP server can list or read files. A database MCP server can run approved queries. A Jira MCP server can expose issue operations. None of those servers needs an LLM to satisfy the MCP contract. If a server internally uses AI, that is an implementation choice behind the protocol boundary, not an MCP requirement.","An MCP server does not need its own AI model",{},{"id":236,"data":1672,"type":226,"tunes":1675},{"body":1673,"title":1674,"variant":240},"If an MCP server exposes \u003Ccode>delete_file\u003C\u002Fcode>, \u003Ccode>refund_order\u003C\u002Fcode> or \u003Ccode>deploy_service\u003C\u002Fcode>, that only means the capability exists. The server\u002Fapplication must still enforce identity, permissions, tenant scope, business rules, confirmation requirements and audit controls. Protocol discovery must never silently become authorization.","MCP capability is not business authority",{},{"id":243,"data":1677,"type":226,"tunes":1680},{"body":1678,"title":1679,"variant":247},"The current MCP specification revision is \u003Cstrong>2026-07-28\u003C\u002Fstrong>. Its major change is a stateless protocol core with self-describing requests, optional \u003Ccode>server\u002Fdiscover\u003C\u002Fcode>, routable HTTP headers, cacheable list\u002Fresource responses, authorization hardening and a formal extension model. The TypeScript SDK v2 is the current stable SDK line implementing this revision. Older 2025-era clients and servers still exist, so implementation guidance must remain version-aware.","Current-source note — 8 October 2026",{},{"id":250,"data":1682,"type":255,"tunes":1684},{"title":1683,"maxLevel":253,"minLevel":254},"Contents",{},{"id":258,"data":1686,"type":42,"tunes":1688},{"text":1687,"level":254},"What MCP really standardizes",{},{"id":263,"data":1690,"type":218,"tunes":1692},{"text":1691},"Before MCP, every AI application could integrate external systems through its own tool schema, plugin format, authentication convention and connection code. The same service could need different adapters for a desktop AI client, an IDE agent and a custom application.",{},{"id":268,"data":1694,"type":218,"tunes":1696},{"text":1695},"MCP creates a reusable protocol boundary. The external system exposes capabilities through an MCP server, while compatible AI hosts implement an MCP client. This reduces integration coupling between the AI application and the underlying tool or data provider.",{},{"id":273,"data":1698,"type":218,"tunes":1700},{"text":1699},"The protocol does not standardize the entire application. It standardizes how capabilities are described, discovered and invoked across that boundary.",{},{"id":278,"data":1702,"type":42,"tunes":1704},{"text":1703,"level":254},"The simplest example",{},{"id":283,"data":1706,"type":218,"tunes":1708},{"text":1707},"Suppose an AI coding application needs access to a local project directory. Without MCP, the application might implement its own filesystem integration directly.",{},{"id":288,"data":1710,"type":218,"tunes":1712},{"text":1711},"With MCP, a filesystem server can expose capabilities such as listing directories, reading approved files or writing inside an allowed workspace. The AI host connects through an MCP client and presents those capabilities to the model or agent runtime.",{},{"id":293,"data":1714,"type":218,"tunes":1716},{"text":1715},"The server does not need to understand the user's natural-language request. The host\u002Fmodel decides which capability is useful; the MCP server executes the structured request under its own security rules.",{},{"id":298,"data":1718,"type":324,"tunes":1742},{"steps":1719,"title":1741,"orientation":323},[1720,1723,1726,1729,1732,1735,1738],{"label":1721,"description":1722},"1. Host connects to server","The MCP-capable application configures access to the external MCP server.",{"label":1724,"description":1725},"2. Capabilities are discovered","The client learns which tools, resources or prompts the server exposes.",{"label":1727,"description":1728},"3. Model or runtime selects a capability","The AI application decides that one exposed capability is needed.",{"label":1730,"description":1731},"4. Client sends structured request","Arguments are sent through MCP to the server.",{"label":1733,"description":1734},"5. Server authorizes and executes","The server validates the request and calls its underlying system.",{"label":1736,"description":1737},"6. Result returns to host","The result becomes an observation or context input.",{"label":1739,"description":1740},"7. Host decides what happens next","The model\u002Fruntime may answer, call another tool or continue a workflow.","A basic MCP tool call",{},{"id":327,"data":1744,"type":42,"tunes":1746},{"text":1745,"level":254},"Where the simple example stops",{},{"id":332,"data":1748,"type":218,"tunes":1750},{"text":1749},"MCP does not define how the host chooses a tool, how an agent plans, how a business workflow is modeled or how a domain object such as an invoice or deployment should behave.",{},{"id":337,"data":1752,"type":218,"tunes":1754},{"text":1753},"A protocol can make the integration interoperable while the underlying application remains incorrect, insecure or badly designed. A perfectly valid MCP request can still call the wrong business capability.",{},{"id":342,"data":1756,"type":218,"tunes":1758},{"text":1757},"The central boundary is: MCP standardizes integration semantics, not application truth or business correctness.",{},{"id":347,"data":1760,"type":42,"tunes":1762},{"text":1761,"level":254},"The MCP architecture: host, client and server",{},{"id":352,"data":1764,"type":376,"tunes":1787},{"content":1765,"stretched":43,"withHeadings":14},[1766,1769,1772,1775,1778,1781,1784],[1767,1768],"Component","Responsibility",[1770,1771],"AI host","User-facing AI application or runtime that owns model interaction, context and overall workflow",[1773,1774],"MCP client","Protocol-side component used by the host to communicate with an MCP server",[1776,1777],"MCP server","Publishes capabilities and handles MCP requests",[1779,1780],"Underlying system","Application, API, database, filesystem, SaaS platform or service behind the MCP server",[1782,1783],"Model","Chooses or reasons about capabilities according to the host\u002Fruntime design; it is not necessarily inside the MCP server",[1785,1786],"Authorization\u002Fbusiness policy","Determines whether a requested operation is actually permitted",{},{"id":379,"data":1789,"type":218,"tunes":1791},{"text":1790},"A host can connect to multiple MCP servers, and one MCP server can front one or several underlying systems. The host remains responsible for integrating MCP results into the broader AI application.",{},{"id":384,"data":1793,"type":218,"tunes":1795},{"text":1794},"The server can be local to the host, run as a separate process or be remote over a network transport. Hosting topology and model location are independent decisions.",{},{"id":389,"data":1797,"type":42,"tunes":1799},{"text":1798,"level":254},"The three core server primitives",{},{"id":394,"data":1801,"type":425,"tunes":1823},{"rows":1802,"title":1815,"layout":376,"columns":1816},[1803,1806,1809,1812],{"id":398,"label":1804,"values":1805},"Primary purpose",[401,401,401],{"id":403,"label":1807,"values":1808},"Typical interaction",[401,401,401],{"id":407,"label":1810,"values":1811},"Example",[401,401,401],{"id":411,"label":1813,"values":1814},"Typical risk",[401,401,401],"Tools, resources and prompts solve different needs",[1817,1819,1821],{"id":417,"label":1818},"Tools",{"id":420,"label":1820},"Resources",{"id":423,"label":1822},"Prompts",{},{"id":428,"data":1825,"type":42,"tunes":1827},{"text":1826,"level":254},"Tools: callable capabilities",{},{"id":433,"data":1829,"type":218,"tunes":1831},{"text":1830},"Tools are structured operations an MCP server makes available to the host. A tool has a name, description and input schema; modern implementations can also provide structured output.",{},{"id":438,"data":1833,"type":218,"tunes":1835},{"text":1834},"Examples include searching a repository, reading a customer record, creating a ticket, running a build or sending a message. Tools can be read-only or have side effects.",{},{"id":443,"data":1837,"type":218,"tunes":1839},{"text":1838},"A good MCP tool surface should represent coherent user or agent goals rather than mechanically mirror every internal API endpoint. Operations with different permissions, confirmation requirements or blast radius should usually be separate tools.",{},{"id":448,"data":1841,"type":42,"tunes":1843},{"text":1842,"level":254},"Resources: readable context and data",{},{"id":453,"data":1845,"type":218,"tunes":1847},{"text":1846},"Resources expose data or content that a client can list or read. They fit naturally when the semantic operation is “give me this artifact or information” rather than “perform this action.”",{},{"id":458,"data":1849,"type":218,"tunes":1851},{"text":1850},"A resource URI is not an authorization grant. The server still owns access control and must verify which principal may read the underlying object.",{},{"id":463,"data":1853,"type":218,"tunes":1855},{"text":1854},"The 2026-07-28 protocol revision adds cache semantics for list and resource-read responses, including freshness and cache scope, making caching behavior more explicit.",{},{"id":468,"data":1857,"type":42,"tunes":1859},{"text":1858,"level":254},"Prompts: reusable templates",{},{"id":473,"data":1861,"type":218,"tunes":1863},{"text":1862},"MCP prompts let a server publish reusable prompt templates to compatible clients. This can keep domain-specific instructions close to the capability provider.",{},{"id":478,"data":1865,"type":218,"tunes":1867},{"text":1866},"A prompt supplied by an MCP server does not automatically outrank the host's system or security instructions. The host decides how prompt material enters its context hierarchy.",{},{"id":483,"data":1869,"type":218,"tunes":1871},{"text":1870},"Protocol-provided prompt content should therefore be treated as capability data with explicit trust semantics, not as unrestricted instruction authority.",{},{"id":488,"data":1873,"type":42,"tunes":1875},{"text":1874,"level":254},"Tool or resource?",{},{"id":493,"data":1877,"type":376,"tunes":1899},{"content":1878,"stretched":43,"withHeadings":14},[1879,1882,1885,1888,1891,1893,1896],[1880,1881],"Need","Prefer",[1883,1884],"Perform an action with structured arguments","Tool",[1886,1887],"Read a specific stable artifact","Resource",[1889,1890],"Search or calculate dynamically","Usually tool",[1892,1884],"Modify external state",[1894,1895],"Package reusable prompt instructions","Prompt",[1897,1898],"Long-running asynchronous execution","Tool plus application\u002Fruntime task handling or an MCP extension",{},{"id":518,"data":1901,"type":42,"tunes":1903},{"text":1902,"level":254},"Where is the AI model?",{},{"id":523,"data":1905,"type":218,"tunes":1907},{"text":1906},"MCP does not require the model to run on the MCP server. The model can be cloud-hosted, locally hosted, embedded in the desktop application or reached through another provider.",{},{"id":528,"data":1909,"type":218,"tunes":1911},{"text":1910},"The host normally owns the model interaction. The MCP server exposes external capability. A local MCP server can therefore be used by a host whose model runs in the cloud, and a remote MCP server can be used by a host whose model runs locally.",{},{"id":533,"data":1913,"type":218,"tunes":1915},{"text":1914},"If the MCP server itself calls an LLM internally, that model is part of the server's implementation behind the protocol boundary; it is not required by MCP.",{},{"id":538,"data":1917,"type":226,"tunes":1920},{"body":1918,"title":1919,"variant":233},"\u003Cstrong>Local MCP does not imply local inference, and remote MCP does not imply remote inference.\u003C\u002Fstrong> Connection location, tool-execution location and model\u002Fprovider location are separate architecture dimensions.","Protocol location ≠ inference location",{},{"id":544,"data":1922,"type":42,"tunes":1924},{"text":1923,"level":254},"MCP does not replace APIs",{},{"id":549,"data":1926,"type":218,"tunes":1928},{"text":1927},"An MCP server often wraps existing APIs or services. REST, GraphQL, SQL, SDK calls and internal service contracts can remain exactly where they are.",{},{"id":554,"data":1930,"type":218,"tunes":1932},{"text":1931},"MCP adds an AI-facing interoperability layer. The underlying domain API can remain the authoritative application contract for ordinary deterministic clients.",{},{"id":559,"data":1934,"type":218,"tunes":1936},{"text":1935},"The usual architecture is therefore API\u002Fservice first, selected AI-facing capability second — not “replace every API with MCP.”",{},{"id":564,"data":1938,"type":42,"tunes":1940},{"text":1939,"level":254},"MCP vs function calling",{},{"id":569,"data":1942,"type":425,"tunes":1961},{"rows":1943,"title":1956,"layout":376,"columns":1957},[1944,1947,1950,1953],{"id":573,"label":1945,"values":1946},"Scope",[401,401],{"id":577,"label":1948,"values":1949},"Tool definition",[401,401],{"id":581,"label":1951,"values":1952},"Portability",[401,401],{"id":585,"label":1954,"values":1955},"Can they coexist?",[401,401],"Function calling and MCP are related but not identical",[1958,1960],{"id":591,"label":1959},"Function calling",{"id":594,"label":595},{},{"id":598,"data":1963,"type":218,"tunes":1965},{"text":1964},"OpenAI currently exposes remote MCP servers as one tool type alongside ordinary function calling, web search, shell and other tools. That implementation illustrates the architectural relationship: MCP connectivity and the model's own tool-call interface can be composed.",{},{"id":603,"data":1967,"type":42,"tunes":1969},{"text":1968,"level":254},"MCP does not create the agent loop",{},{"id":608,"data":1971,"type":218,"tunes":1973},{"text":1972},"An AI agent needs a runtime that can decide, invoke tools, observe results, update state and continue or stop. MCP can supply some of the tools and data used by that loop.",{},{"id":613,"data":1975,"type":218,"tunes":1977},{"text":1976},"The MCP server does not automatically become the planner, memory system or orchestrator. Those responsibilities normally remain in the host or agent runtime.",{},{"id":618,"data":1979,"type":218,"tunes":1981},{"text":1980},"A non-agentic application can also use MCP. One deterministic MCP tool call does not require an autonomous multi-step agent.",{},{"id":623,"data":1983,"type":42,"tunes":1985},{"text":1984,"level":254},"MCP vs A2A",{},{"id":628,"data":1987,"type":218,"tunes":1989},{"text":1988},"MCP primarily connects an AI host or agent to capabilities such as tools, resources and data. A2A targets collaboration between independent agent systems.",{},{"id":633,"data":1991,"type":218,"tunes":1993},{"text":1992},"A remote agent can internally use MCP to reach databases and tools while exposing an A2A interface to other agents. The protocols can therefore be layered rather than substituted.",{},{"id":638,"data":1995,"type":218,"tunes":1997},{"text":1996},"The existing protocol-stack article owns the broader MCP\u002FA2A\u002FUCP\u002FAP2\u002FA2UI comparison; G02 remains the canonical MCP definition.",{},{"id":643,"data":1999,"type":649,"tunes":2003},{"url":645,"title":2000,"excerpt":2001,"ctaLabel":2002},"MCP vs A2A vs UCP vs AP2 vs A2UI: The Agent Protocol Stack Explained","A broader responsibility map showing how MCP composes with agent collaboration, commerce, payment authority and agent-driven UI protocols.","Read the protocol stack",{},{"id":652,"data":2005,"type":42,"tunes":2007},{"text":2006,"level":254},"Local and remote MCP use different transport realities",{},{"id":657,"data":2009,"type":218,"tunes":2011},{"text":2010},"MCP can connect to local and remote servers. Local desktop integrations commonly use process-level transports such as stdio; remote servers use HTTP-oriented transport.",{},{"id":662,"data":2013,"type":218,"tunes":2015},{"text":2014},"The 2026-07-28 revision makes the protocol core stateless. Requests carry the information needed for protocol handling instead of depending on the earlier protocol-level session model.",{},{"id":667,"data":2017,"type":218,"tunes":2019},{"text":2018},"The current revision also places method and capability names in HTTP headers so gateways, WAFs, rate limiters and load balancers can route and meter MCP traffic more naturally.",{},{"id":672,"data":2021,"type":42,"tunes":2023},{"text":2022,"level":254},"Why MCP version awareness matters",{},{"id":677,"data":2025,"type":376,"tunes":2038},{"content":2026,"stretched":43,"withHeadings":14},[2027,2030,2033,2035],[2028,2029],"Protocol era","Operational characteristic",[2031,2032],"2025-11-25 and earlier","Handshake\u002Fsession-oriented lifecycle and older Streamable HTTP behavior",[687,2034],"Stateless core, optional server discovery, self-describing requests, routing headers, cache hints, MRTR and authorization hardening",[2036,2037],"Extensions","Capabilities such as Tasks and MCP Apps can version separately from the base protocol",{},{"id":694,"data":2040,"type":218,"tunes":2042},{"text":2041},"SDK version and protocol version are also different things. The current TypeScript v2 SDK is the stable line for the 2026-07-28 revision, while older v1.x remains a maintenance line for 2025-era behavior.",{},{"id":699,"data":2044,"type":218,"tunes":2046},{"text":2045},"Architecture documentation should record both the SDK\u002Flibrary version and the protocol revision where interoperability behavior depends on them.",{},{"id":704,"data":2048,"type":42,"tunes":2050},{"text":2049,"level":254},"What changed in MCP 2026-07-28",{},{"id":709,"data":2052,"type":376,"tunes":2080},{"content":2053,"stretched":43,"withHeadings":14},[2054,2057,2060,2062,2065,2068,2071,2074,2077],[2055,2056],"Change","Why it matters",[2058,2059],"Stateless core","Remote servers can scale behind ordinary load balancers without protocol-level sticky sessions",[719,2061],"Clients can inspect server capabilities when needed",[2063,2064],"Self-describing requests","Protocol version and client capability metadata travel per request",[2066,2067],"Mcp-Method \u002F Mcp-Name headers","Gateways can route, meter and apply policy without parsing bodies",[2069,2070],"Cache hints","Lists\u002Fresource reads communicate freshness and sharing scope",[2072,2073],"Multi Round-Trip Requests","Servers can require additional input without the older bidirectional request model",[2075,2076],"Authorization hardening","Issuer validation and credential binding strengthen remote auth behavior",[2078,2079],"Extensions framework","Tasks, MCP Apps and other capabilities can evolve separately",{},{"id":741,"data":2082,"type":42,"tunes":2084},{"text":2083,"level":254},"Roots, sampling and logging are no longer the direction for new implementations",{},{"id":746,"data":2086,"type":218,"tunes":2088},{"text":2087},"The 2026-07-28 release marks roots, sampling and logging as deprecated protocol capabilities with a defined compatibility window.",{},{"id":751,"data":2090,"type":218,"tunes":2092},{"text":2091},"Older tutorials may still show these features as central primitives. New implementation work should follow the current specification rather than copy older lifecycle diagrams blindly.",{},{"id":756,"data":2094,"type":218,"tunes":2096},{"text":2095},"Deprecation does not mean immediate removal. It means new systems should avoid unnecessary new dependencies on capabilities the protocol is moving away from.",{},{"id":761,"data":2098,"type":42,"tunes":2100},{"text":2099,"level":254},"Long-running work is not the same as ordinary MCP tool invocation",{},{"id":766,"data":2102,"type":218,"tunes":2104},{"text":2103},"Long-running operations need lifecycle semantics beyond a simple immediate tool result. In the current ecosystem, Tasks moved into a dedicated MCP extension.",{},{"id":771,"data":2106,"type":218,"tunes":2108},{"text":2107},"This reinforces a useful design principle: the base protocol does not need to absorb every agent-runtime concern.",{},{"id":776,"data":2110,"type":218,"tunes":2112},{"text":2111},"An application can also keep long-running workflow ownership entirely in its own runtime and use ordinary MCP tools as underlying operations.",{},{"id":781,"data":2114,"type":42,"tunes":2116},{"text":2115,"level":254},"MCP Apps extend UI capability without redefining the core protocol",{},{"id":786,"data":2118,"type":218,"tunes":2120},{"text":2119},"MCP Apps associate richer interactive UI experiences with MCP tools through the extension model.",{},{"id":791,"data":2122,"type":218,"tunes":2124},{"text":2123},"The host still controls how that UI is embedded, sandboxed and secured.",{},{"id":796,"data":2126,"type":218,"tunes":2128},{"text":2127},"Core capability exchange and UI rendering should therefore remain separate architecture responsibilities.",{},{"id":801,"data":2130,"type":42,"tunes":2132},{"text":2131,"level":254},"MCP authorization is not your complete authorization model",{},{"id":806,"data":2134,"type":218,"tunes":2136},{"text":2135},"Remote MCP needs protocol-level authentication and authorization mechanisms so clients and servers can establish trusted access. The current specification continues to harden OAuth\u002FOIDC-related behavior.",{},{"id":811,"data":2138,"type":218,"tunes":2140},{"text":2139},"That layer answers whether a client is allowed to connect or request protocol scopes. It does not automatically answer whether Alice may refund order 123, whether an agent may write production configuration or whether Tenant A may read Tenant B data.",{},{"id":816,"data":2142,"type":218,"tunes":2144},{"text":2143},"Those domain decisions belong in the server\u002Fapplication authorization model and must be enforced before invoking the underlying operation.",{},{"id":821,"data":2146,"type":226,"tunes":2149},{"body":2147,"title":2148,"variant":240},"Connection trust, tool visibility, tool permission, user authorization, tenant isolation and business approval are different controls. Keep them separate.","Never map “authenticated MCP client” to “trusted for every tool”",{},{"id":827,"data":2151,"type":42,"tunes":2153},{"text":2152,"level":254},"Identity can cross several boundaries",{},{"id":832,"data":2155,"type":218,"tunes":2157},{"text":2156},"An MCP request may involve the MCP client application, the signed-in human, an agent\u002Fsession identity and a downstream service account.",{},{"id":837,"data":2159,"type":218,"tunes":2161},{"text":2160},"The server needs an explicit policy for which principal the operation is performed on behalf of. Otherwise a powerful service credential can become a confused-deputy path.",{},{"id":842,"data":2163,"type":218,"tunes":2165},{"text":2164},"For enterprise use, correlation between user identity, agent identity, MCP connection and downstream authorization is as important as protocol compatibility.",{},{"id":847,"data":2167,"type":42,"tunes":2169},{"text":2168,"level":254},"Tenant isolation remains outside MCP capability discovery",{},{"id":852,"data":2171,"type":218,"tunes":2173},{"text":2172},"A multi-tenant MCP server must apply tenant scope when it reads or changes tenant-owned resources. Returning a tool named search_documents does not define which tenant's documents are eligible.",{},{"id":857,"data":2175,"type":218,"tunes":2177},{"text":2176},"Tenant scope should be derived from trusted identity or membership and carried into databases, caches, vector search, object storage and downstream APIs.",{},{"id":862,"data":2179,"type":218,"tunes":2181},{"text":2180},"Retrieving cross-tenant content and asking the model not to use it is already an isolation failure.",{},{"id":867,"data":2183,"type":42,"tunes":2185},{"text":2184,"level":254},"MCP does not define Source of Truth",{},{"id":872,"data":2187,"type":218,"tunes":2189},{"text":2188},"An MCP server can expose a database, document repository, web search service or AI-generated summary. The protocol does not declare which source is authoritative for a claim.",{},{"id":877,"data":2191,"type":218,"tunes":2193},{"text":2192},"Source-of-Truth rules belong to application\u002Fdomain architecture. The host or server can encode authority through tool design, metadata, access policy or validation, but MCP itself does not make one capability “true.”",{},{"id":882,"data":2195,"type":218,"tunes":2197},{"text":2196},"A tool can therefore be perfectly callable through MCP and still return stale, secondary or non-authoritative information.",{},{"id":887,"data":2199,"type":42,"tunes":2201},{"text":2200,"level":254},"MCP and context engineering",{},{"id":892,"data":2203,"type":218,"tunes":2205},{"text":2204},"MCP can increase the capabilities and information available to an AI application, but context engineering still determines what reaches the model.",{},{"id":897,"data":2207,"type":218,"tunes":2209},{"text":2208},"Tool catalogs consume model-visible context in many hosts. Tool results can be large. Resources can be numerous. A host needs selection, filtering, dynamic loading and compaction rather than exposing everything on every turn.",{},{"id":902,"data":2211,"type":218,"tunes":2213},{"text":2212},"Capability availability and model-visible context should therefore be treated as separate layers.",{},{"id":907,"data":2215,"type":42,"tunes":2217},{"text":2216,"level":254},"Design MCP tools around outcomes and risk boundaries",{},{"id":912,"data":2219,"type":376,"tunes":2244},{"content":2220,"stretched":43,"withHeadings":14},[2221,2224,2226,2229,2232,2235,2238,2241],[2222,2223],"Weak tool design","Stronger tool design",[919,2225],"Narrow domain tools with validated operations",[2227,2228],"One admin tool for all actions","Separate read\u002Fwrite\u002Fapproval operations",[2230,2231],"Raw internal API mirrored 1:1","AI-facing contract around coherent user goals",[2233,2234],"One broad filesystem tool","Workspace-scoped read\u002Fwrite operations",[2236,2237],"Security policy only in description","Server enforces policy in code",[2239,2240],"Unbounded raw response","Structured decision-relevant output",[2242,2243],"Delete\u002Fupdate mixed with read","Separate side-effect tools with confirmation policy",{},{"id":941,"data":2246,"type":42,"tunes":2248},{"text":2247,"level":254},"Approvals belong in the execution architecture",{},{"id":946,"data":2250,"type":218,"tunes":2252},{"text":2251},"A host can require user approval before invoking selected MCP tools. OpenAI's current MCP integration supports automatic or explicit-approval execution patterns.",{},{"id":951,"data":2254,"type":218,"tunes":2256},{"text":2255},"Host approval is useful but should not be the server's only protection because another compatible MCP client may use a different approval model.",{},{"id":956,"data":2258,"type":218,"tunes":2260},{"text":2259},"For destructive or financially consequential actions, use defense in depth: clear tool contract, runtime approval where appropriate, server-side authorization, business validation and audit.",{},{"id":961,"data":2262,"type":42,"tunes":2264},{"text":2263,"level":254},"MCP observability should connect protocol calls to domain actions",{},{"id":966,"data":2266,"type":218,"tunes":2268},{"text":2267},"An MCP trace is most useful when it can be correlated with the underlying application call, database change or business transaction.",{},{"id":971,"data":2270,"type":218,"tunes":2272},{"text":2271},"The 2026-07-28 ecosystem standardizes W3C Trace Context propagation conventions, making it easier to follow a request across host, client, server and downstream services.",{},{"id":976,"data":2274,"type":218,"tunes":2276},{"text":2275},"Protocol logs alone are not enough for consequential operations. Audit evidence should also record relevant principal, tenant, target resource, approval and resulting state change.",{},{"id":981,"data":2278,"type":42,"tunes":2280},{"text":2279,"level":254},"What MCP cannot fix",{},{"id":986,"data":2282,"type":376,"tunes":2317},{"content":2283,"stretched":43,"withHeadings":14},[2284,2287,2290,2293,2296,2299,2302,2305,2308,2311,2314],[2285,2286],"Problem","Why MCP does not solve it",[2288,2289],"Bad business API","MCP can expose the bad API more consistently",[2291,2292],"Wrong data","Protocol validity does not create factual correctness",[2294,2295],"Missing tenant isolation","Tool discovery does not enforce resource ownership",[2297,2298],"Excessive privileges","A standardized tool can still be overprivileged",[2300,2301],"Poor agent planning","MCP exposes capabilities; runtime\u002Fmodel still chooses how to use them",[2303,2304],"Bad retry\u002Fidempotency design","Protocol calls do not make side effects safe",[2306,2307],"No Source of Truth","MCP does not decide which system owns a fact",[2309,2310],"Weak evaluation","Interoperability does not prove task success",[2312,2313],"No audit policy","Transport traces do not define retention or accountability",[2315,2316],"Protocol mismatch","Old\u002Fnew versions can still require migration or compatibility handling",{},{"id":1024,"data":2319,"type":42,"tunes":2321},{"text":2320,"level":254},"Original implementation evidence: Aaasaasa AI Client",{},{"id":1029,"data":2323,"type":226,"tunes":2326},{"body":2324,"title":2325,"variant":247},"Aaasaasa AI Client contains an authenticated local MCP connector\u002Fbroker for approved local directories and integration through Secure MCP Tunnel. This is concrete implementation evidence for the protocol boundary and permission architecture, not a claim of a general-purpose commercial MCP platform.","Implementation evidence",{},{"id":1035,"data":2328,"type":218,"tunes":2330},{"text":2329},"The application can run an authenticated Streamable HTTP MCP endpoint on loopback. The endpoint exposes only directories selected through the central workspace permission broker.",{},{"id":1040,"data":2332,"type":218,"tunes":2334},{"text":2333},"The local endpoint and remote route are separate concerns: the local connector can bind only to loopback, while a Secure MCP Tunnel can make the approved MCP service reachable to a permitted external AI client without exposing the whole local machine.",{},{"id":1045,"data":2336,"type":218,"tunes":2338},{"text":2337},"The central permission model distinguishes chat-only, read-only, project-write and custom-directory profiles. Direct Chat has no filesystem or shell access; tool-capable agent runtimes use the selected permission profile.",{},{"id":1050,"data":2340,"type":218,"tunes":2342},{"text":2341},"This is a direct implementation of the G02 boundary: MCP provides the standardized capability connection, while the application-owned permission broker decides which directories the server may expose.",{},{"id":1055,"data":2344,"type":376,"tunes":2367},{"content":2345,"stretched":43,"withHeadings":14},[2346,2349,2352,2355,2358,2361,2364],[2347,2348],"Implemented element","Architecture evidence",[2350,2351],"Authenticated local MCP endpoint","MCP server can be a local deterministic capability service",[2353,2354],"Loopback binding","Network exposure and protocol capability are separate decisions",[2356,2357],"Secure MCP Tunnel integration","Private\u002Flocal MCP can be bridged through a controlled route",[2359,2360],"Central permission broker","MCP capability is constrained by application policy",[2362,2363],"Selected directory scope","Filesystem visibility is explicitly bounded",[2365,2366],"Direct Chat without OS tools","Model access does not automatically imply tool access",{},{"id":1081,"data":2369,"type":226,"tunes":2372},{"body":2370,"title":2371,"variant":240},"The implementation demonstrates MCP connectivity and permission-scoped local directory exposure. It does not imply that every MCP primitive, every 2026-07-28 feature or every enterprise authorization extension is implemented.","Evidence boundary",{},{"id":1087,"data":2374,"type":42,"tunes":2376},{"text":2375,"level":254},"When MCP is a good fit",{},{"id":1092,"data":2378,"type":376,"tunes":2398},{"content":2379,"stretched":43,"withHeadings":14},[2380,2383,2386,2389,2392,2395],[2381,2382],"MCP is a strong fit when","A direct integration may be simpler when",[2384,2385],"The same capability should be reusable across multiple AI hosts","One application owns both sides and portability has little value",[2387,2388],"An external system wants to publish discoverable AI-facing tools\u002Fresources","A single stable internal API call is sufficient",[2390,2391],"You want a standard boundary around local tools\u002Fdata","There is no AI-facing interoperability requirement",[2393,2394],"Tool providers and AI clients evolve independently","The integration is intentionally private and tightly coupled",[2396,2397],"You want ecosystem-compatible capability discovery","The capability set is tiny and fixed in application code",{},{"id":1115,"data":2400,"type":42,"tunes":2402},{"text":2401,"level":254},"When you do not need MCP",{},{"id":1120,"data":2404,"type":218,"tunes":2406},{"text":2405},"Do not add MCP merely because the application uses AI. If your backend already calls one internal API and no independent MCP client needs that capability, an ordinary function or service call may be clearer.",{},{"id":1125,"data":2408,"type":218,"tunes":2410},{"text":2409},"MCP adds value at an interoperability boundary. Without that boundary, the protocol can become an unnecessary adapter layer.",{},{"id":1130,"data":2412,"type":218,"tunes":2414},{"text":2413},"The architectural question is not “Does this project have AI?” but “Do independently evolving AI hosts and capability providers benefit from a standard contract?”",{},{"id":1135,"data":2416,"type":42,"tunes":2418},{"text":2417,"level":254},"MCP security checklist",{},{"id":1140,"data":2420,"type":376,"tunes":2461},{"content":2421,"stretched":43,"withHeadings":14},[2422,2425,2428,2431,2434,2437,2440,2443,2446,2449,2452,2455,2458],[2423,2424],"Boundary","Question",[2426,2427],"Server identity","Which MCP server am I actually connected to?",[2429,2430],"Client identity","Which application\u002Fclient is requesting access?",[2432,2433],"End-user identity","On whose behalf is the operation performed?",[2435,2436],"Tool allowlist","Which capabilities may this host\u002Fagent discover and call?",[2438,2439],"Business permission","May this principal perform this operation?",[2441,2442],"Tenant scope","Which tenant\u002Fresource boundary applies?",[2444,2445],"Credential isolation","Are credentials bound correctly and kept outside model context?",[2447,2448],"Approval","Which side effects require human confirmation?",[2450,2451],"Input validation","Are tool arguments validated independently of model output?",[2453,2454],"Output trust","Can returned content contain untrusted instructions or sensitive data?",[2456,2457],"Network exposure","Is a local server accidentally exposed beyond intended interfaces?",[2459,2460],"Audit","Can a protocol call be correlated with the downstream action?",{},{"id":1184,"data":2463,"type":42,"tunes":2465},{"text":2464,"level":254},"Common misconceptions",{},{"id":1189,"data":2467,"type":376,"tunes":2508},{"content":2468,"stretched":43,"withHeadings":14},[2469,2472,2475,2478,2481,2484,2487,2490,2493,2496,2499,2502,2505],[2470,2471],"Misconception","Correction",[2473,2474],"“An MCP server is an AI server.”","It can be ordinary deterministic software exposing capabilities.",[2476,2477],"“I need my own LLM on the MCP server.”","No. The model can live entirely on the host side.",[2479,2480],"“MCP replaces REST APIs.”","MCP often wraps existing APIs for AI-facing interoperability.",[2482,2483],"“MCP is an agent framework.”","MCP supplies capabilities; an agent runtime manages iteration and state.",[2485,2486],"“MCP and function calling compete.”","A host can bridge MCP capabilities into its model tool interface.",[2488,2489],"“MCP replaces A2A.”","MCP focuses on capability integration; A2A focuses on agent collaboration.",[2491,2492],"“If a tool is listed, the user may call it.”","Discovery is not authorization.",[2494,2495],"“OAuth solves business permissions.”","Connection authorization does not replace domain authorization or tenant isolation.",[2497,2498],"“Local MCP means local AI.”","Tool-server location and inference location are independent.",[2500,2501],"“MCP makes tool output trustworthy.”","Data quality, authority and provenance still belong to the source\u002Fapplication.",[2503,2504],"“One giant generic tool is flexible.”","Over-broad tools weaken permissions, validation and observability.",[2506,2507],"“Old tutorials are implementation-current.”","The 2026-07-28 revision materially changed lifecycle and transport behavior.",{},{"id":1233,"data":2510,"type":42,"tunes":2512},{"text":2511,"level":254},"A practical MCP design sequence",{},{"id":1238,"data":2514,"type":324,"tunes":2553},{"steps":2515,"title":2552,"orientation":323},[2516,2519,2522,2525,2528,2531,2534,2537,2540,2543,2546,2549],{"label":2517,"description":2518},"1. Identify the interoperability boundary","Confirm that independent AI hosts actually need reusable access.",{"label":2520,"description":2521},"2. Keep the domain API authoritative","Preserve the real application\u002Fservice contract behind MCP.",{"label":2523,"description":2524},"3. Choose primitives deliberately","Use tools, resources and prompts according to their semantics.",{"label":2526,"description":2527},"4. Split by risk and permission","Separate read, write, destructive and approval-required operations.",{"label":2529,"description":2530},"5. Define identity propagation","Know which client, user, agent and downstream principal each call represents.",{"label":2532,"description":2533},"6. Enforce business authorization","Validate permissions, tenant scope and target ownership.",{"label":2535,"description":2536},"7. Choose local or remote transport","Match deployment topology to the real need.",{"label":2538,"description":2539},"8. Pin protocol\u002FSDK expectations","Document 2026-07-28 versus older compatibility.",{"label":2541,"description":2542},"9. Add approvals for consequential actions","Use risk-appropriate confirmation controls.",{"label":2544,"description":2545},"10. Design structured outputs","Return concise machine-usable results.",{"label":2547,"description":2548},"11. Add tracing and audit correlation","Connect MCP calls to downstream service\u002Fbusiness events.",{"label":2550,"description":2551},"12. Test portability","Verify more than one client where interoperability is a stated requirement.","Design the boundary before implementing the server",{},{"id":1280,"data":2555,"type":42,"tunes":2557},{"text":2556,"level":254},"MCP architecture checklist",{},{"id":1285,"data":2559,"type":376,"tunes":2608},{"content":2560,"stretched":43,"withHeadings":14},[2561,2563,2566,2569,2572,2575,2578,2581,2584,2587,2590,2593,2596,2599,2602,2605],[2424,2562],"Expected answer",[2564,2565],"Why is MCP needed?","A real AI-facing interoperability boundary",[2567,2568],"What does the server expose?","Explicit tools\u002Fresources\u002Fprompts",[2570,2571],"Where does the model run?","Independent host\u002Fprovider decision",[2573,2574],"Where does tool execution run?","Named server\u002Fruntime location",[2576,2577],"Which protocol revision is expected?","Version-aware contract",[2579,2580],"Who is the requesting principal?","Client\u002Fuser\u002Fagent identity model",[2582,2583],"Which tools may be discovered?","Allowlist\u002Fcapability policy",[2585,2586],"Which operations may execute?","Server-side business authorization",[2588,2589],"How is tenant\u002Fresource scope enforced?","Trusted tenant\u002Fresource ownership checks",[2591,2592],"Which actions need approval?","Risk-based confirmation policy",[2594,2595],"How are credentials protected?","Trusted runtime storage, not model-visible secrets",[2597,2598],"How is output bounded?","Structured relevant result contract",[2600,2601],"How are calls traced?","Correlation through MCP to downstream action",[2603,2604],"What happens if MCP is unavailable?","Defined fallback\u002Ffailure behavior",[2606,2607],"Can another compatible host use it?","Portability validated where required",{},{"id":1337,"data":2610,"type":42,"tunes":2612},{"text":2611,"level":254},"Edge cases and limitations",{},{"id":1342,"data":2614,"type":218,"tunes":2616},{"text":2615},"A local stdio MCP server can have little network exposure while still be dangerous if the process itself has excessive filesystem or shell permissions.",{},{"id":1347,"data":2618,"type":218,"tunes":2620},{"text":2619},"A remote MCP server may expose only public documentation or highly sensitive enterprise actions. “Remote MCP” says little about risk without the capability and authorization context.",{},{"id":1352,"data":2622,"type":218,"tunes":2624},{"text":2623},"Some servers may use only tools and ignore resources\u002Fprompts. MCP compatibility does not require every optional primitive to be equally important.",{},{"id":1357,"data":2626,"type":218,"tunes":2628},{"text":2627},"A host can translate between its own internal tool model and MCP. Users may never see the protocol boundary directly, which is acceptable if security and attribution remain clear.",{},{"id":1362,"data":2630,"type":218,"tunes":2632},{"text":2631},"MCP continues to evolve rapidly. Extensions, authorization patterns, SDK APIs and ecosystem conventions can change faster than the core architectural distinction.",{},{"id":1367,"data":2634,"type":42,"tunes":2636},{"text":2635,"level":254},"What would change this answer?",{},{"id":1372,"data":2638,"type":218,"tunes":2640},{"text":2639},"Future MCP revisions can change lifecycle, transports, authorization and extension mechanisms. The July 2026 revision already demonstrates why implementation-specific claims must be dated.",{},{"id":1377,"data":2642,"type":218,"tunes":2644},{"text":2643},"The canonical boundary would change only if MCP expanded from an interoperability protocol into an end-to-end application\u002Fagent architecture standard. That is not what the current protocol defines.",{},{"id":1382,"data":2646,"type":218,"tunes":2648},{"text":2647},"For implementation work, always check the current specification and exact SDK line instead of copying version-sensitive examples from older tutorials.",{},{"id":1387,"data":2650,"type":42,"tunes":2652},{"text":2651,"level":254},"Related canonical knowledge",{},{"id":1392,"data":2654,"type":218,"tunes":2656},{"text":2655},"MCP belongs downstream of Agentic AI: first understand the agent\u002Fruntime\u002Ftool boundary, then use MCP when external capabilities need a portable protocol contract.",{},{"id":1397,"data":2658,"type":218,"tunes":2660},{"text":2659},"MCP also depends on RBAC and tenant isolation because protocol-level capability exposure does not determine application authorization.",{},{"id":1402,"data":2662,"type":218,"tunes":2664},{"text":2663},"The broader protocol-stack article explains where MCP sits beside A2A, UCP, AP2 and A2UI. G02 remains the canonical source for MCP itself.",{},{"id":1407,"data":2666,"type":649,"tunes":2671},{"url":2667,"title":2668,"excerpt":2669,"ctaLabel":2670},"https:\u002F\u002Fstajic.de\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough","AI Agent Reliability: Why the Final Answer Is Not Enough","MCP tool calls become part of an agent trajectory; reliable systems need to evaluate actions and observations, not only final text.","Read the agent reliability article",{},{"id":1415,"data":2673,"type":42,"tunes":2675},{"text":2674,"level":254},"Frequently asked questions",{},{"id":1420,"data":2677,"type":1420,"tunes":2710},{"items":2678,"title":2709},[2679,2682,2685,2688,2691,2694,2697,2700,2703,2706],{"id":1424,"answer":2680,"question":2681},"The Model Context Protocol is an open client-server protocol for connecting AI applications to external tools, resources, prompts and capability providers through a standardized contract.","What is MCP?",{"id":1428,"answer":2683,"question":2684},"No. An MCP server can be completely deterministic software. The model normally runs in the AI host or agent runtime, although a server may optionally use AI internally.","Does an MCP server need an AI model?",{"id":1432,"answer":2686,"question":2687},"The client is the protocol component used by an AI host to communicate with capability providers. The server publishes and executes the capabilities it exposes.","What is the difference between an MCP client and server?",{"id":1436,"answer":2689,"question":2690},"No. Function\u002Ftool calling is how a model invokes configured capabilities. MCP standardizes discovery and communication with external capability servers. A host can bridge the two.","Does MCP replace function calling?",{"id":1440,"answer":2692,"question":2693},"No. MCP servers frequently wrap existing REST, GraphQL, database or service APIs and provide an AI-facing interoperability layer.","Does MCP replace REST APIs?",{"id":1444,"answer":2695,"question":2696},"No. MCP exposes capabilities. Agent planning, state, memory, context management, retries, orchestration and stopping belong to the surrounding runtime.","Is MCP an agent framework?",{"id":1448,"answer":2698,"question":2699},"MCP primarily connects an AI host or agent to tools and data providers. A2A connects independent agent systems for collaboration and delegation.","What is the difference between MCP and A2A?",{"id":1452,"answer":2701,"question":2702},"MCP includes protocol-level authorization mechanisms, especially for remote servers, but the application must still enforce business permissions, resource ownership and tenant isolation.","Does MCP handle authorization?",{"id":1456,"answer":2704,"question":2705},"Yes. Model location is independent of MCP. A local-model host can call local or remote MCP servers, and a cloud-model host can use approved local or remote MCP servers through an appropriate connection architecture.","Can MCP work with local models?",{"id":1460,"answer":2707,"question":2708},"As of 8 October 2026, the current specification revision is 2026-07-28. Older 2025-era implementations remain in use, so compatibility must be checked.","What is the current MCP specification version?","Model Context Protocol FAQ",{},{"id":1466,"data":2712,"type":42,"tunes":2714},{"text":2713,"level":254},"Glossary",{},{"id":1471,"data":2716,"type":1471,"tunes":2745},{"title":2717,"entries":2718},"Key MCP terms",[2719,2721,2724,2726,2728,2730,2732,2734,2736,2738,2740,2742],{"term":595,"anchor":594,"definition":2720},"Model Context Protocol, an open protocol for interoperable connections between AI hosts\u002Fclients and external capability servers.",{"term":2722,"anchor":1479,"definition":2723},"MCP host","The AI application or runtime that owns model interaction and uses MCP clients to connect to servers.",{"term":1773,"anchor":1482,"definition":2725},"Protocol component on the host side that communicates with an MCP server.",{"term":1776,"anchor":1485,"definition":2727},"Capability provider that implements MCP and exposes tools, resources, prompts or supported extensions.",{"term":1884,"anchor":1488,"definition":2729},"Callable structured capability exposed by an MCP server.",{"term":1887,"anchor":1491,"definition":2731},"Readable data or content exposed through MCP resource methods.",{"term":1895,"anchor":1495,"definition":2733},"Reusable prompt template exposed by an MCP server for compatible hosts.",{"term":1498,"anchor":1499,"definition":2735},"HTTP-oriented MCP transport used for remote\u002Fnetworked server communication.",{"term":1502,"anchor":1502,"definition":2737},"Process standard-input\u002Foutput transport commonly used for local MCP server integrations.",{"term":719,"anchor":1505,"definition":2739},"Modern MCP method that lets a client inspect server capabilities in the 2026-07-28 protocol era.",{"term":1508,"anchor":1509,"definition":2741},"Multi Round-Trip Requests, a mechanism for obtaining additional input during a request in the 2026-07-28 protocol era.",{"term":2743,"anchor":1513,"definition":2744},"MCP extension","Capability that composes with the base protocol and can evolve\u002Fversion separately, such as Tasks or MCP Apps.",{},{"id":1517,"data":2747,"type":42,"tunes":2749},{"text":2748,"level":254},"Conclusion",{},{"id":1522,"data":2751,"type":218,"tunes":2753},{"text":2752},"MCP is easiest to understand when its boundary stays narrow: it connects AI applications to external capabilities through a standard protocol.",{},{"id":1527,"data":2755,"type":218,"tunes":2757},{"text":2756},"The model does not have to live on the MCP server. The server does not become the agent runtime. A listed tool does not become an authorized business action. And MCP does not replace the underlying API, Source of Truth, tenant isolation or domain architecture.",{},{"id":1532,"data":2759,"type":218,"tunes":2761},{"text":2760},"That narrowness is the protocol's strength. MCP can standardize how AI systems reach tools and data while leaving application ownership, security, business semantics and model choice in the layers that actually own them.",{},{"id":1537,"data":2763,"type":42,"tunes":2765},{"text":2764,"level":254},"Primary sources and current documentation",{},{"id":1542,"data":2767,"type":218,"tunes":2769},{"text":2768},"MCP is evolving quickly, so version-sensitive claims in this article are tied to the 8 October 2026 state. The Aaasaasa AI Client section is original implementation evidence and is explicitly limited to the verified MCP connector and permission-broker scope.",{},{"id":1547,"data":2771,"type":1554,"tunes":2775},{"link":1549,"meta":2772},{"image":2773,"title":1552,"description":2774},{"url":401},"Current stable TypeScript SDK documentation implementing the 2026-07-28 MCP specification and server\u002Fclient primitives.",{},{"id":1557,"data":2777,"type":1554,"tunes":2782},{"link":1559,"meta":2778},{"image":2779,"title":2780,"description":2781},{"url":401},"Model Context Protocol — 2026-07-28 Specification Release","Official release explanation for the current MCP protocol revision, including stateless core, MRTR, routing, caching, authorization hardening, extensions and deprecations.",{},{"id":1566,"data":2784,"type":1554,"tunes":2789},{"link":1568,"meta":2785},{"image":2786,"title":2787,"description":2788},{"url":401},"MCP TypeScript SDK — Supporting protocol revision 2026-07-28","Version-specific implementation guidance for the current protocol revision and earlier-era compatibility.",{},{"id":1575,"data":2791,"type":1554,"tunes":2796},{"link":1577,"meta":2792},{"image":2793,"title":2794,"description":2795},{"url":401},"OpenAI — MCP servers","Current OpenAI guidance for connecting models to remote MCP servers and local\u002Fprivate MCP servers through Secure MCP Tunnel.",{},{"id":1584,"data":2798,"type":1554,"tunes":2803},{"link":1586,"meta":2799},{"image":2800,"title":2801,"description":2802},{"url":401},"OpenAI — MCP connections for Agents API","Current MCP connection guidance covering service, environment and stdio locations plus allowed-tool controls.",{},{"id":1593,"data":2805,"type":1554,"tunes":2810},{"link":1595,"meta":2806},{"image":2807,"title":2808,"description":2809},{"url":401},"OpenAI — Tools","Current overview placing remote MCP servers alongside function calling, web search, shell and other model tools.",{},{"id":1602,"data":2812,"type":1554,"tunes":2817},{"link":1604,"meta":2813},{"image":2814,"title":2815,"description":2816},{"url":401},"OpenAI — MCP server concept","Current description of MCP servers exposing tools, resources and prompts for external service integrations.",{},"2.31.6","Model Context Protocol connects AI applications to external tools, resources and prompts through a standard client-server boundary. Learn what MCP does, what it does not do, and where it fits in agent architecture.",{"lang":7,"title":208,"content":210,"contentJson":2821,"excerpt":1611},{"time":212,"blocks":2822,"version":1610},[2823,2826,2829,2832,2835,2838,2841,2844,2847,2850,2853,2856,2859,2862,2865,2876,2879,2882,2885,2888,2891,2902,2905,2908,2911,2927,2930,2933,2936,2939,2942,2945,2948,2951,2954,2957,2960,2963,2966,2977,2980,2983,2986,2989,2992,2995,2998,3001,3004,3007,3022,3025,3028,3031,3034,3037,3040,3043,3046,3049,3052,3055,3058,3061,3064,3067,3075,3078,3081,3084,3097,3100,3103,3106,3109,3112,3115,3118,3121,3124,3127,3130,3133,3136,3139,3142,3145,3148,3151,3154,3157,3160,3163,3166,3169,3172,3175,3178,3181,3184,3187,3190,3193,3196,3199,3211,3214,3217,3220,3223,3226,3229,3232,3235,3238,3253,3256,3259,3262,3265,3268,3271,3282,3285,3288,3298,3301,3304,3307,3310,3313,3330,3333,3350,3353,3369,3372,3392,3395,3398,3401,3404,3407,3410,3413,3416,3419,3422,3425,3428,3431,3434,3437,3440,3454,3457,3473,3476,3479,3482,3485,3488,3491,3496,3501,3506,3511,3516,3521],{"id":215,"data":2824,"type":218,"tunes":2825},{"text":217},{},{"id":221,"data":2827,"type":226,"tunes":2828},{"body":223,"title":224,"variant":225},{},{"id":229,"data":2830,"type":226,"tunes":2831},{"body":231,"title":232,"variant":233},{},{"id":236,"data":2833,"type":226,"tunes":2834},{"body":238,"title":239,"variant":240},{},{"id":243,"data":2836,"type":226,"tunes":2837},{"body":245,"title":246,"variant":247},{},{"id":250,"data":2839,"type":255,"tunes":2840},{"title":252,"maxLevel":253,"minLevel":254},{},{"id":258,"data":2842,"type":42,"tunes":2843},{"text":260,"level":254},{},{"id":263,"data":2845,"type":218,"tunes":2846},{"text":265},{},{"id":268,"data":2848,"type":218,"tunes":2849},{"text":270},{},{"id":273,"data":2851,"type":218,"tunes":2852},{"text":275},{},{"id":278,"data":2854,"type":42,"tunes":2855},{"text":280,"level":254},{},{"id":283,"data":2857,"type":218,"tunes":2858},{"text":285},{},{"id":288,"data":2860,"type":218,"tunes":2861},{"text":290},{},{"id":293,"data":2863,"type":218,"tunes":2864},{"text":295},{},{"id":298,"data":2866,"type":324,"tunes":2875},{"steps":2867,"title":322,"orientation":323},[2868,2869,2870,2871,2872,2873,2874],{"label":302,"description":303},{"label":305,"description":306},{"label":308,"description":309},{"label":311,"description":312},{"label":314,"description":315},{"label":317,"description":318},{"label":320,"description":321},{},{"id":327,"data":2877,"type":42,"tunes":2878},{"text":329,"level":254},{},{"id":332,"data":2880,"type":218,"tunes":2881},{"text":334},{},{"id":337,"data":2883,"type":218,"tunes":2884},{"text":339},{},{"id":342,"data":2886,"type":218,"tunes":2887},{"text":344},{},{"id":347,"data":2889,"type":42,"tunes":2890},{"text":349,"level":254},{},{"id":352,"data":2892,"type":376,"tunes":2901},{"content":2893,"stretched":43,"withHeadings":14},[2894,2895,2896,2897,2898,2899,2900],[356,357],[359,360],[362,363],[365,366],[368,369],[371,372],[374,375],{},{"id":379,"data":2903,"type":218,"tunes":2904},{"text":381},{},{"id":384,"data":2906,"type":218,"tunes":2907},{"text":386},{},{"id":389,"data":2909,"type":42,"tunes":2910},{"text":391,"level":254},{},{"id":394,"data":2912,"type":425,"tunes":2926},{"rows":2913,"title":414,"layout":376,"columns":2922},[2914,2916,2918,2920],{"id":398,"label":399,"values":2915},[401,401,401],{"id":403,"label":404,"values":2917},[401,401,401],{"id":407,"label":408,"values":2919},[401,401,401],{"id":411,"label":412,"values":2921},[401,401,401],[2923,2924,2925],{"id":417,"label":418},{"id":420,"label":421},{"id":423,"label":424},{},{"id":428,"data":2928,"type":42,"tunes":2929},{"text":430,"level":254},{},{"id":433,"data":2931,"type":218,"tunes":2932},{"text":435},{},{"id":438,"data":2934,"type":218,"tunes":2935},{"text":440},{},{"id":443,"data":2937,"type":218,"tunes":2938},{"text":445},{},{"id":448,"data":2940,"type":42,"tunes":2941},{"text":450,"level":254},{},{"id":453,"data":2943,"type":218,"tunes":2944},{"text":455},{},{"id":458,"data":2946,"type":218,"tunes":2947},{"text":460},{},{"id":463,"data":2949,"type":218,"tunes":2950},{"text":465},{},{"id":468,"data":2952,"type":42,"tunes":2953},{"text":470,"level":254},{},{"id":473,"data":2955,"type":218,"tunes":2956},{"text":475},{},{"id":478,"data":2958,"type":218,"tunes":2959},{"text":480},{},{"id":483,"data":2961,"type":218,"tunes":2962},{"text":485},{},{"id":488,"data":2964,"type":42,"tunes":2965},{"text":490,"level":254},{},{"id":493,"data":2967,"type":376,"tunes":2976},{"content":2968,"stretched":43,"withHeadings":14},[2969,2970,2971,2972,2973,2974,2975],[497,498],[500,501],[503,504],[506,507],[509,501],[511,512],[514,515],{},{"id":518,"data":2978,"type":42,"tunes":2979},{"text":520,"level":254},{},{"id":523,"data":2981,"type":218,"tunes":2982},{"text":525},{},{"id":528,"data":2984,"type":218,"tunes":2985},{"text":530},{},{"id":533,"data":2987,"type":218,"tunes":2988},{"text":535},{},{"id":538,"data":2990,"type":226,"tunes":2991},{"body":540,"title":541,"variant":233},{},{"id":544,"data":2993,"type":42,"tunes":2994},{"text":546,"level":254},{},{"id":549,"data":2996,"type":218,"tunes":2997},{"text":551},{},{"id":554,"data":2999,"type":218,"tunes":3000},{"text":556},{},{"id":559,"data":3002,"type":218,"tunes":3003},{"text":561},{},{"id":564,"data":3005,"type":42,"tunes":3006},{"text":566,"level":254},{},{"id":569,"data":3008,"type":425,"tunes":3021},{"rows":3009,"title":588,"layout":376,"columns":3018},[3010,3012,3014,3016],{"id":573,"label":574,"values":3011},[401,401],{"id":577,"label":578,"values":3013},[401,401],{"id":581,"label":582,"values":3015},[401,401],{"id":585,"label":586,"values":3017},[401,401],[3019,3020],{"id":591,"label":592},{"id":594,"label":595},{},{"id":598,"data":3023,"type":218,"tunes":3024},{"text":600},{},{"id":603,"data":3026,"type":42,"tunes":3027},{"text":605,"level":254},{},{"id":608,"data":3029,"type":218,"tunes":3030},{"text":610},{},{"id":613,"data":3032,"type":218,"tunes":3033},{"text":615},{},{"id":618,"data":3035,"type":218,"tunes":3036},{"text":620},{},{"id":623,"data":3038,"type":42,"tunes":3039},{"text":625,"level":254},{},{"id":628,"data":3041,"type":218,"tunes":3042},{"text":630},{},{"id":633,"data":3044,"type":218,"tunes":3045},{"text":635},{},{"id":638,"data":3047,"type":218,"tunes":3048},{"text":640},{},{"id":643,"data":3050,"type":649,"tunes":3051},{"url":645,"title":646,"excerpt":647,"ctaLabel":648},{},{"id":652,"data":3053,"type":42,"tunes":3054},{"text":654,"level":254},{},{"id":657,"data":3056,"type":218,"tunes":3057},{"text":659},{},{"id":662,"data":3059,"type":218,"tunes":3060},{"text":664},{},{"id":667,"data":3062,"type":218,"tunes":3063},{"text":669},{},{"id":672,"data":3065,"type":42,"tunes":3066},{"text":674,"level":254},{},{"id":677,"data":3068,"type":376,"tunes":3074},{"content":3069,"stretched":43,"withHeadings":14},[3070,3071,3072,3073],[681,682],[684,685],[687,688],[690,691],{},{"id":694,"data":3076,"type":218,"tunes":3077},{"text":696},{},{"id":699,"data":3079,"type":218,"tunes":3080},{"text":701},{},{"id":704,"data":3082,"type":42,"tunes":3083},{"text":706,"level":254},{},{"id":709,"data":3085,"type":376,"tunes":3096},{"content":3086,"stretched":43,"withHeadings":14},[3087,3088,3089,3090,3091,3092,3093,3094,3095],[713,714],[716,717],[719,720],[722,723],[725,726],[728,729],[731,732],[734,735],[737,738],{},{"id":741,"data":3098,"type":42,"tunes":3099},{"text":743,"level":254},{},{"id":746,"data":3101,"type":218,"tunes":3102},{"text":748},{},{"id":751,"data":3104,"type":218,"tunes":3105},{"text":753},{},{"id":756,"data":3107,"type":218,"tunes":3108},{"text":758},{},{"id":761,"data":3110,"type":42,"tunes":3111},{"text":763,"level":254},{},{"id":766,"data":3113,"type":218,"tunes":3114},{"text":768},{},{"id":771,"data":3116,"type":218,"tunes":3117},{"text":773},{},{"id":776,"data":3119,"type":218,"tunes":3120},{"text":778},{},{"id":781,"data":3122,"type":42,"tunes":3123},{"text":783,"level":254},{},{"id":786,"data":3125,"type":218,"tunes":3126},{"text":788},{},{"id":791,"data":3128,"type":218,"tunes":3129},{"text":793},{},{"id":796,"data":3131,"type":218,"tunes":3132},{"text":798},{},{"id":801,"data":3134,"type":42,"tunes":3135},{"text":803,"level":254},{},{"id":806,"data":3137,"type":218,"tunes":3138},{"text":808},{},{"id":811,"data":3140,"type":218,"tunes":3141},{"text":813},{},{"id":816,"data":3143,"type":218,"tunes":3144},{"text":818},{},{"id":821,"data":3146,"type":226,"tunes":3147},{"body":823,"title":824,"variant":240},{},{"id":827,"data":3149,"type":42,"tunes":3150},{"text":829,"level":254},{},{"id":832,"data":3152,"type":218,"tunes":3153},{"text":834},{},{"id":837,"data":3155,"type":218,"tunes":3156},{"text":839},{},{"id":842,"data":3158,"type":218,"tunes":3159},{"text":844},{},{"id":847,"data":3161,"type":42,"tunes":3162},{"text":849,"level":254},{},{"id":852,"data":3164,"type":218,"tunes":3165},{"text":854},{},{"id":857,"data":3167,"type":218,"tunes":3168},{"text":859},{},{"id":862,"data":3170,"type":218,"tunes":3171},{"text":864},{},{"id":867,"data":3173,"type":42,"tunes":3174},{"text":869,"level":254},{},{"id":872,"data":3176,"type":218,"tunes":3177},{"text":874},{},{"id":877,"data":3179,"type":218,"tunes":3180},{"text":879},{},{"id":882,"data":3182,"type":218,"tunes":3183},{"text":884},{},{"id":887,"data":3185,"type":42,"tunes":3186},{"text":889,"level":254},{},{"id":892,"data":3188,"type":218,"tunes":3189},{"text":894},{},{"id":897,"data":3191,"type":218,"tunes":3192},{"text":899},{},{"id":902,"data":3194,"type":218,"tunes":3195},{"text":904},{},{"id":907,"data":3197,"type":42,"tunes":3198},{"text":909,"level":254},{},{"id":912,"data":3200,"type":376,"tunes":3210},{"content":3201,"stretched":43,"withHeadings":14},[3202,3203,3204,3205,3206,3207,3208,3209],[916,917],[919,920],[922,923],[925,926],[928,929],[931,932],[934,935],[937,938],{},{"id":941,"data":3212,"type":42,"tunes":3213},{"text":943,"level":254},{},{"id":946,"data":3215,"type":218,"tunes":3216},{"text":948},{},{"id":951,"data":3218,"type":218,"tunes":3219},{"text":953},{},{"id":956,"data":3221,"type":218,"tunes":3222},{"text":958},{},{"id":961,"data":3224,"type":42,"tunes":3225},{"text":963,"level":254},{},{"id":966,"data":3227,"type":218,"tunes":3228},{"text":968},{},{"id":971,"data":3230,"type":218,"tunes":3231},{"text":973},{},{"id":976,"data":3233,"type":218,"tunes":3234},{"text":978},{},{"id":981,"data":3236,"type":42,"tunes":3237},{"text":983,"level":254},{},{"id":986,"data":3239,"type":376,"tunes":3252},{"content":3240,"stretched":43,"withHeadings":14},[3241,3242,3243,3244,3245,3246,3247,3248,3249,3250,3251],[990,991],[993,994],[996,997],[999,1000],[1002,1003],[1005,1006],[1008,1009],[1011,1012],[1014,1015],[1017,1018],[1020,1021],{},{"id":1024,"data":3254,"type":42,"tunes":3255},{"text":1026,"level":254},{},{"id":1029,"data":3257,"type":226,"tunes":3258},{"body":1031,"title":1032,"variant":247},{},{"id":1035,"data":3260,"type":218,"tunes":3261},{"text":1037},{},{"id":1040,"data":3263,"type":218,"tunes":3264},{"text":1042},{},{"id":1045,"data":3266,"type":218,"tunes":3267},{"text":1047},{},{"id":1050,"data":3269,"type":218,"tunes":3270},{"text":1052},{},{"id":1055,"data":3272,"type":376,"tunes":3281},{"content":3273,"stretched":43,"withHeadings":14},[3274,3275,3276,3277,3278,3279,3280],[1059,1060],[1062,1063],[1065,1066],[1068,1069],[1071,1072],[1074,1075],[1077,1078],{},{"id":1081,"data":3283,"type":226,"tunes":3284},{"body":1083,"title":1084,"variant":240},{},{"id":1087,"data":3286,"type":42,"tunes":3287},{"text":1089,"level":254},{},{"id":1092,"data":3289,"type":376,"tunes":3297},{"content":3290,"stretched":43,"withHeadings":14},[3291,3292,3293,3294,3295,3296],[1096,1097],[1099,1100],[1102,1103],[1105,1106],[1108,1109],[1111,1112],{},{"id":1115,"data":3299,"type":42,"tunes":3300},{"text":1117,"level":254},{},{"id":1120,"data":3302,"type":218,"tunes":3303},{"text":1122},{},{"id":1125,"data":3305,"type":218,"tunes":3306},{"text":1127},{},{"id":1130,"data":3308,"type":218,"tunes":3309},{"text":1132},{},{"id":1135,"data":3311,"type":42,"tunes":3312},{"text":1137,"level":254},{},{"id":1140,"data":3314,"type":376,"tunes":3329},{"content":3315,"stretched":43,"withHeadings":14},[3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328],[1144,1145],[1147,1148],[1150,1151],[1153,1154],[1156,1157],[1159,1160],[1162,1163],[1165,1166],[1168,1169],[1171,1172],[1174,1175],[1177,1178],[1180,1181],{},{"id":1184,"data":3331,"type":42,"tunes":3332},{"text":1186,"level":254},{},{"id":1189,"data":3334,"type":376,"tunes":3349},{"content":3335,"stretched":43,"withHeadings":14},[3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348],[1193,1194],[1196,1197],[1199,1200],[1202,1203],[1205,1206],[1208,1209],[1211,1212],[1214,1215],[1217,1218],[1220,1221],[1223,1224],[1226,1227],[1229,1230],{},{"id":1233,"data":3351,"type":42,"tunes":3352},{"text":1235,"level":254},{},{"id":1238,"data":3354,"type":324,"tunes":3368},{"steps":3355,"title":1277,"orientation":323},[3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367],{"label":1242,"description":1243},{"label":1245,"description":1246},{"label":1248,"description":1249},{"label":1251,"description":1252},{"label":1254,"description":1255},{"label":1257,"description":1258},{"label":1260,"description":1261},{"label":1263,"description":1264},{"label":1266,"description":1267},{"label":1269,"description":1270},{"label":1272,"description":1273},{"label":1275,"description":1276},{},{"id":1280,"data":3370,"type":42,"tunes":3371},{"text":1282,"level":254},{},{"id":1285,"data":3373,"type":376,"tunes":3391},{"content":3374,"stretched":43,"withHeadings":14},[3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390],[1145,1289],[1291,1292],[1294,1295],[1297,1298],[1300,1301],[1303,1304],[1306,1307],[1309,1310],[1312,1313],[1315,1316],[1318,1319],[1321,1322],[1324,1325],[1327,1328],[1330,1331],[1333,1334],{},{"id":1337,"data":3393,"type":42,"tunes":3394},{"text":1339,"level":254},{},{"id":1342,"data":3396,"type":218,"tunes":3397},{"text":1344},{},{"id":1347,"data":3399,"type":218,"tunes":3400},{"text":1349},{},{"id":1352,"data":3402,"type":218,"tunes":3403},{"text":1354},{},{"id":1357,"data":3405,"type":218,"tunes":3406},{"text":1359},{},{"id":1362,"data":3408,"type":218,"tunes":3409},{"text":1364},{},{"id":1367,"data":3411,"type":42,"tunes":3412},{"text":1369,"level":254},{},{"id":1372,"data":3414,"type":218,"tunes":3415},{"text":1374},{},{"id":1377,"data":3417,"type":218,"tunes":3418},{"text":1379},{},{"id":1382,"data":3420,"type":218,"tunes":3421},{"text":1384},{},{"id":1387,"data":3423,"type":42,"tunes":3424},{"text":1389,"level":254},{},{"id":1392,"data":3426,"type":218,"tunes":3427},{"text":1394},{},{"id":1397,"data":3429,"type":218,"tunes":3430},{"text":1399},{},{"id":1402,"data":3432,"type":218,"tunes":3433},{"text":1404},{},{"id":1407,"data":3435,"type":649,"tunes":3436},{"url":1409,"title":1410,"excerpt":1411,"ctaLabel":1412},{},{"id":1415,"data":3438,"type":42,"tunes":3439},{"text":1417,"level":254},{},{"id":1420,"data":3441,"type":1420,"tunes":3453},{"items":3442,"title":1463},[3443,3444,3445,3446,3447,3448,3449,3450,3451,3452],{"id":1424,"answer":1425,"question":1426},{"id":1428,"answer":1429,"question":1430},{"id":1432,"answer":1433,"question":1434},{"id":1436,"answer":1437,"question":1438},{"id":1440,"answer":1441,"question":1442},{"id":1444,"answer":1445,"question":1446},{"id":1448,"answer":1449,"question":1450},{"id":1452,"answer":1453,"question":1454},{"id":1456,"answer":1457,"question":1458},{"id":1460,"answer":1461,"question":1462},{},{"id":1466,"data":3455,"type":42,"tunes":3456},{"text":1468,"level":254},{},{"id":1471,"data":3458,"type":1471,"tunes":3472},{"title":1473,"entries":3459},[3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471],{"term":595,"anchor":594,"definition":1476},{"term":1478,"anchor":1479,"definition":1480},{"term":362,"anchor":1482,"definition":1483},{"term":365,"anchor":1485,"definition":1486},{"term":501,"anchor":1488,"definition":1489},{"term":504,"anchor":1491,"definition":1492},{"term":1494,"anchor":1495,"definition":1496},{"term":1498,"anchor":1499,"definition":1500},{"term":1502,"anchor":1502,"definition":1503},{"term":719,"anchor":1505,"definition":1506},{"term":1508,"anchor":1509,"definition":1510},{"term":1512,"anchor":1513,"definition":1514},{},{"id":1517,"data":3474,"type":42,"tunes":3475},{"text":1519,"level":254},{},{"id":1522,"data":3477,"type":218,"tunes":3478},{"text":1524},{},{"id":1527,"data":3480,"type":218,"tunes":3481},{"text":1529},{},{"id":1532,"data":3483,"type":218,"tunes":3484},{"text":1534},{},{"id":1537,"data":3486,"type":42,"tunes":3487},{"text":1539,"level":254},{},{"id":1542,"data":3489,"type":218,"tunes":3490},{"text":1544},{},{"id":1547,"data":3492,"type":1554,"tunes":3495},{"link":1549,"meta":3493},{"image":3494,"title":1552,"description":1553},{"url":401},{},{"id":1557,"data":3497,"type":1554,"tunes":3500},{"link":1559,"meta":3498},{"image":3499,"title":1562,"description":1563},{"url":401},{},{"id":1566,"data":3502,"type":1554,"tunes":3505},{"link":1568,"meta":3503},{"image":3504,"title":1571,"description":1572},{"url":401},{},{"id":1575,"data":3507,"type":1554,"tunes":3510},{"link":1577,"meta":3508},{"image":3509,"title":1580,"description":1581},{"url":401},{},{"id":1584,"data":3512,"type":1554,"tunes":3515},{"link":1586,"meta":3513},{"image":3514,"title":1589,"description":1590},{"url":401},{},{"id":1593,"data":3517,"type":1554,"tunes":3520},{"link":1595,"meta":3518},{"image":3519,"title":1598,"description":1599},{"url":401},{},{"id":1602,"data":3522,"type":1554,"tunes":3525},{"link":1604,"meta":3523},{"image":3524,"title":1607,"description":1608},{"url":401},{},"Post erfolgreich abgerufen",{"items":3528,"source":3613,"manualIds":3614,"manualMatchedIds":3615},[3529,3536,3543,3550,3557,3564,3571,3578,3585,3592,3599,3606],{"id":3530,"slug":3531,"title":3532,"excerpt":3533,"featuredImage":3534,"publishedAt":3535},"486","source-of-truth-in-ai-systems-where-reliable-knowledge-actually-comes-from","Источник истины в системах ИИ: откуда на самом деле берутся надёжные знания","Источник истины определяет, какой источник является авторитетным для конкретного факта или состояния. Узнайте, чем он отличается от RAG, происхождения данных, памяти, контекста, векторных баз данных и систем учёта.","\u002Fuploads\u002F2026\u002F10\u002Fsource-of-truth-in-ai-systems-where-reliable-knowledge-actually-comes-from-1791479103235-6bq9em.webp","2026-10-08T13:02:00.000Z",{"id":3537,"slug":3538,"title":3539,"excerpt":3540,"featuredImage":3541,"publishedAt":3542},"480","when-should-an-ai-stop-trusting-its-own-knowledge-the-retrieval-trigger","Когда ИИ должен перестать доверять собственным знаниям? — Триггер извлечения","Модель ИИ не нуждается в поиске для каждого вопроса. Важная проблема — знать, когда её внутренних знаний уже недостаточно. Триггер поиска — это практическая граница принятия решений, которая определяет, когда система ИИ должна перестать полагаться исключительно на знания модели и получить внешние доказательства перед ответом.","\u002Fuploads\u002F2026\u002F09\u002Fwhen-should-an-ai-stop-trusting-its-own-knowledge-the-retrieval-trigger-1790574991244-f4rpyg.webp","2026-09-28T01:49:00.000Z",{"id":3544,"slug":3545,"title":3546,"excerpt":3547,"featuredImage":3548,"publishedAt":3549},"494","air-gapped-ai-how-ai-systems-work-without-internet-or-cloud-access","Air-Gapped AI: как работают ИИ-системы без интернета и облачного доступа","AI-системы в изолированной среде запускают модели, RAG и AI-приложения внутри изолированного домена безопасности без зависимости от интернета или облачных сервисов. Узнайте, как модели, данные, обновления и инструменты работают в автономном режиме.","\u002Fuploads\u002F2026\u002F10\u002Fair-gapped-ai-how-ai-systems-work-without-internet-or-cloud-access-1791487983978-e6xqf0.webp","2026-10-08T11:32:00.000Z",{"id":3551,"slug":3552,"title":3553,"excerpt":3554,"featuredImage":3555,"publishedAt":3556},"489","agentic-ai-explained-when-an-ai-system-can-plan-use-tools-and-act","Агентный ИИ: когда система ИИ может планировать, использовать инструменты и действовать","Агентный ИИ использует модели внутри многошаговых циклов выполнения, где они могут выбирать инструменты, наблюдать результаты, обновлять состояние и адаптировать своё следующее действие в рамках явных границ времени выполнения и разрешений.","\u002Fuploads\u002F2026\u002F10\u002Fagentic-ai-explained-when-an-ai-system-can-plan-use-tools-and-act-1791481499084-wnji2a.webp","2026-10-08T11:43:00.000Z",{"id":3558,"slug":3559,"title":3560,"excerpt":3561,"featuredImage":3562,"publishedAt":3563},"490","rbac-vs-tenant-isolation-two-different-security-boundaries","RBAC против изоляции арендаторов: две разные границы безопасности","RBAC определяет, что пользователь может делать; изоляция тенантов определяет, к ресурсам какого тенанта это действие может получить доступ. Узнайте, почему безопасность многотенантного SaaS требует обеих границ.","\u002Fuploads\u002F2026\u002F10\u002Frbac-vs-tenant-isolation-two-different-security-boundaries-1791485111528-qqtzby.webp","2026-10-08T14:43:00.000Z",{"id":3565,"slug":3566,"title":3567,"excerpt":3568,"featuredImage":3569,"publishedAt":3570},"478","what-is-rag-the-simplest-explanation-of-how-it-works","Что такое RAG? Самое простое объяснение того, как это работает","RAG звучит сложно, но идея проста: прежде чем ИИ ответит, он сначала находит полезную информацию из источника знаний и передаёт эту информацию языковой модели. В этом руководстве объясняются RAG, LLM, состояние, память и инструменты с помощью одной простой ментальной модели.","\u002Fuploads\u002F2026\u002F09\u002Fwhat-is-rag-the-simplest-explanation-of-how-it-works-1790377492124-khjagt.webp","2026-09-25T19:03:00.000Z",{"id":3572,"slug":3573,"title":3574,"excerpt":3575,"featuredImage":3576,"publishedAt":3577},"467","the-answer-validity-boundary-the-missing-layer-between-relevance-and-reliable-ai-answers","Граница достоверности ответа: недостающий слой между релевантностью и надёжными ответами ИИ","Источник может быть релевантным, авторитетным и при этом неверным для задаваемого вопроса. Недостающий слой — применимость: условия, при которых ответ остаётся в силе, и изменения, вынуждающие пересмотреть его. В этой статье вводится понятие «Граница действительности ответа» как паттерн проектирования источников для людей, ИИ-поиска и RAG-систем.","\u002Fuploads\u002F2026\u002F09\u002Fthe-answer-validity-boundary-the-missing-layer-between-relevance-and-reliable-ai-answers-1790272901306-1g5jly.webp","2026-09-24T11:59:00.000Z",{"id":3579,"slug":3580,"title":3581,"excerpt":3582,"featuredImage":3583,"publishedAt":3584},"483","what-is-an-ai-solution-architect-system-boundaries-responsibilities-and-trade-offs","Что такое архитектор ИИ-решений? Границы системы, обязанности и компромиссы","Архитектор решений ИИ превращает бизнес-требования в готовую к производству систему ИИ, охватывающую данные, модели, инструменты, безопасность, среду выполнения, оценку и операции.","\u002Fuploads\u002F2026\u002F10\u002Fwhat-is-an-ai-solution-architect-system-boundaries-responsibilities-and-trade-offs-1791476643267-1st5xz.webp","2026-10-08T12:23:00.000Z",{"id":3586,"slug":3587,"title":3588,"excerpt":3589,"featuredImage":3590,"publishedAt":3591},"476","mcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained","MCP vs A2A vs UCP vs AP2 vs A2UI: разбор стека протоколов агентов","MCP, A2A, UCP, AP2 и A2UI часто представляют как конкурирующие агентские стандарты. В основном они решают разные проблемы интероперабельности. Это руководство сопоставляет каждый протокол с границей, которую он фактически стандартизирует,—и показывает, как они могут работать вместе в одной промышленной системе.","\u002Fuploads\u002F2026\u002F09\u002Fmcp-vs-a2a-vs-ucp-vs-ap2-vs-a2ui-the-agent-protocol-stack-explained-1790352625869-2ezle0.webp","2026-09-25T12:09:00.000Z",{"id":3593,"slug":3594,"title":3595,"excerpt":3596,"featuredImage":3597,"publishedAt":3598},"471","how-to-know-whether-an-ai-agent-actually-used-the-right-evidence","Как узнать, действительно ли ИИ-агент использовал правильные доказательства","ИИ-агент может ссылаться на источники и при этом использовать неверные доказательства. В этой статье представлен практический метод проверки обоснованности утверждений, авторитетности источников, применимости, происхождения и того, действительно ли доказательства повлияли на ответ.","\u002Fuploads\u002F2026\u002F09\u002Fhow-to-know-whether-an-ai-agent-actually-used-the-right-evidence-1790351317188-o5z9ve.webp","2026-09-25T11:47:00.000Z",{"id":3600,"slug":3601,"title":3602,"excerpt":3603,"featuredImage":3604,"publishedAt":3605},"481","generative-ai-explained-models-retrieval-tools-and-applications-are-not-the-same-thing","Генеративный ИИ: модели, поиск, инструменты и приложения — это не одно и то же","Генеративный ИИ — это больше, чем модель. Узнайте, как модели, поиск информации, инструменты, контекст, среды выполнения и приложения сочетаются друг с другом в производственных системах ИИ.","\u002Fuploads\u002F2026\u002F10\u002Fgenerative-ai-explained-models-retrieval-tools-and-applications-are-not-the-same-thing-1791475411822-pp0dvz.webp","2026-10-08T12:00:00.000Z",{"id":3607,"slug":3608,"title":3609,"excerpt":3610,"featuredImage":3611,"publishedAt":3612},"485","enterprise-ai-architecture-what-changes-when-ai-enters-a-company","Архитектура ИИ на предприятии: что меняется, когда ИИ приходит в компанию","Архитектура ИИ для предприятий объясняет, как ИИ меняет корпоративные системы в таких областях, как полномочия на данные, идентификация, разрешения, поставщики, риски, управление, оценка, соответствие требованиям и операции.","\u002Fuploads\u002F2026\u002F10\u002Fenterprise-ai-architecture-what-changes-when-ai-enters-a-company-1791478161363-czrwaq.webp","2026-10-08T10:48:00.000Z","fallback",[],[]]