О чём урок
В предыдущем уроке мы подробно рассмотрели теоретические основы концепции "корней" (Roots) в Model Context Protocol (MCP) и их критическую роль в обеспечении безопасного и эффективного взаимодействия LLM с локальной файловой системой. Этот урок, "Roots walkthrough", посвящен практическому применению этих знаний. Мы сосредоточимся на том, как реализовать механизм, который позволяет вашему MCP серверу контролировать и ограничивать доступ LLM к файлам и директориям, обеспечивая при этом интуитивный пользовательский опыт. Как было упомянуто, MCP SDK не предоставляет автоматического применения ограничений Roots. Ваша задача — создать вспомогательную логику, которая будет проверять каждый запрос на доступ к файловой системе. Это включает в себя: Определение разрешенных Roots: Указание конкретных директорий, к которым LLM имеет право доступа. Это может быть список путей, настроенный при инициализации сервера или инструмента. Реализация функции валидации: Создание функции (подобной `is_path_allowed()`), которая принимает запрошенный путь к файлу или директории и определяет, находится ли он в пределах одного из разрешенных Roots. Эта функция должна быть достаточно надежной, чтобы обрабатывать различные сценарии, включая относительные пути и попытки выхода за пределы разрешенных директорий. Интеграция с логикой MCP сервера: Встраивание этой функции валидации в те части вашего сервера, которые обрабатывают запросы на чтение или запись файлов, или на поиск файлов. Перед выполнением любой операции с файловой системой необходимо убедиться, что запрошенный путь соответствует установленным Roots. Обработка ошибок доступа: Предоставление обратной связи LLM (и, следовательно, пользователю) в случае попытки доступа к файлу или директории, не входящим в разрешенные Roots. Это помогает пользователю понять ограничения и корректировать свои запросы. Практическое применение Roots позволяет не только повысить безопасность, предотвращая несанкционированный доступ к данным, но и значительно улучшить удобство использования для конечного пользователя, позволяя LLM находить и обрабатывать файлы без необходимости указывать полные пути.
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.