Model Context Protocol (MCP): как ИИ-агенты «разговаривают» с внешним миром
Если вы читали или смотрели видео про MCP, то наверняка сталкивались с таким комментарием: «Спасибо, ещё одна статья, из которой я ничего не понял».Аналогии и пояснения вроде «MCP — это как USB Type-C» или «MCP — это Tools, Resources и Prompts» лично мне не добавляли понимания. Поэтому я решил подробно изучить данную технологию и написать статью, где будет понятно, достоверно и применимо. Без магии. Попутно я прошёл обучение у Anthropic (ссылки дам, сертификаты выдают, курсы бесплатные, cправда на английском). Я ставил себе цель ответить на вопросы:Что такое MCP и как он связан с ИИ?Как чат GPT (большая языковая модель, LLM) может вызвать какой-то инструмент (tool)? Модель же языковая, т.е. она умеет говорить, рассуждать, отвечать, но никак не делать. Как LLM может читать файлы, вызывать программы, открывать интернет сайты, вызывать внешние API?Для программистов, кто в теме и уже использовал MCP-сервера, т.е. знает серверные примитивы: tools, resources и prompts, возможно будут интересны клиентские примитивы: sampling, roots, elicitation. Они звучат загадочно и трудно переводимы. И чтобы вас заинтриговать: MCP-сервер благодаря sampling может «сжигать» ваши LLM-токены для выполнения своих серверных задач. А благодаря roots получать доступ к файлам на вашем компьютере. Итак, поехали.