# Python для учебного MCP Версия 1.1 · 11.10.2026. Python запускает школьный инструмент чтения файлов. Он не заменяет приложение ИИ или вход в аккаунт. Для текущего setup нужен Python **3.10 или новее** и файловые защиты macOS/Linux/подходящего WSL. Дополнительные библиотеки не нужны. Откройте терминал в папке `neurobrain-practice`. Сначала выполните: ```sh python3 --version python3 -B integration/preflight.py ``` Диагностика работает и на Python 3.9. Если она вернула `version_supported: false` и `select_supported_python`, выбран слишком старый интерпретатор. Это произошло при свежей проверке преподавательского Mac: обычный `python3` был 3.9.6. Наличие более нового Python в другой программе само по себе не меняет эту команду. Если Python 3.10+ уже установлен, проверьте его отдельной командой версии, затем выполните диагностику **тем же интерпретатором**. Например, при имеющемся Python 3.12: ```sh python3.12 --version python3.12 -B integration/preflight.py ``` Если команда не найдена, это имя не установлено в вашем PATH. Найдите установленный Python или установите подходящий выпуск через [официальную страницу Python](https://www.python.org/downloads/). Конкретная версия в примере не является требованием купить или переустановить программу. На macOS откройте официальный раздел загрузки для Mac и пакет `.pkg` подходящего поддерживаемого выпуска. В установщике прочитайте версию и требования, продолжите шаги установки и принятия лицензии самостоятельно. После завершения используйте `Install Certificates.command` из папки установленного Python, как описано в [официальной инструкции macOS](https://docs.python.org/3/using/mac.html). Откройте новое окно Terminal и повторите проверку версии. Системный `/usr/bin/python3` обслуживается Apple; оставьте его на месте. Два интерпретатора могут работать одновременно. На Linux/WSL выберите поддерживаемый Python из штатного менеджера вашей системы. Проверки выполняйте внутри того же Linux/WSL, где будет работать клиент и STDIO-сервер. В native Windows диагностика может показать `missing_file_protections`: текущий школьный MCP тогда не готов. Не отключайте файловые защиты. Основное файловое упражнение можно продолжить отдельно, отметив незавершённую интеграцию. ## Ученик: после успешного preflight В отдельном student-проекте достаточно `ready_for_school_mcp: true` и `next_step: connect_school_mcp`. Тестов, checker и эталонов в этом ZIP нет; добавлять их для подключения не требуется. Скопируйте поле `python_executable` из ответа preflight. Именно этот абсолютный путь укажите в **Command** конфигурации MCP. Если нужно получить его отдельно, используйте тот же проверенный Python: ```sh python3.12 -c 'import sys; print(sys.executable)' python3.12 -c 'from pathlib import Path; print(Path("integration/school_readonly_mcp.py").resolve())' ``` Замените `python3.12` своим проверенным именем. Вторая команда выполняется из корня student-проекта и печатает полный путь скрипта. Аргументы MCP: `-B` и этот путь отдельными строками. Для пути с пробелами используйте кавычки в shell; в JSON путь остаётся одной строкой. После регистрации откройте новое общение в учебном проекте. Проверьте две функции `school_read_context` и `school_read_messages`, затем настоящий ответ инструмента с `synthetic: true` и текущим `source_sha256`. Это подтверждение соединения клиента; сохранённого config для него недостаточно. ## Преподаватель: тесты отдельной proof-папки Только в распакованном преподавательском комплекте, вне текущего проекта модели, после успешного preflight выполните: ```sh python3.12 -B -m unittest discover -s integration -p 'test_exercise.py' -v ``` Должны выполниться девять тестов. `Ran 0 tests` не подтверждает проверку сервера: проверьте выбранную proof-папку и наличие `integration/test_exercise.py`. В комплекте преподавателя preflight может вернуть `next_step: run_integration_tests`; это отличается от ученической ветки. Preflight подтверждает версию и файловые защиты, тесты — школьный код, настоящий ответ tools — соединение приложения. Эти результаты не подтверждают оплату или установку в аккаунте ученика.