Структура проекта сервера
Организуйте файлы так, чтобы сервер было легко расширять.
«Структура проекта сервера» — бесплатный урок MCP Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения MCP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс MCP Academy содержит 4 уроков всего.
Структура создаёт основу для развития
Небольшой сервер помещается в одном файле, но хорошая структура позволяет ему расти, не превращаясь в беспорядок. Небольшое планирование сейчас избавит вас от серьёзных проблем позже. 🗂️
Начните с одного файла
Большинство серверов начинают с одного файла server.py. В нём находятся экземпляр FastMCP и один-два инструмента — этого достаточно для запуска.
pyproject.toml — это карта проекта
В корне находится pyproject.toml, где указаны имя проекта и его зависимости. uv читает этот файл, чтобы точно знать, что установить.
Файл блокировки остаётся в проекте
Рядом с ним находится uv.lock — зафиксированный список всех разрешённых версий. Добавьте его в систему контроля версий, чтобы участники команды могли воссоздать точно такую же настройку.
Не добавляйте .venv в Git
Папка .venv создаётся автоматически и не является исходным кодом. Добавьте её в .gitignore, чтобы не фиксировать тяжёлое окружение, зависящее от конкретной машины.
.venv/
__pycache__/Группируйте по примитивам
По мере роста разделяйте код по назначению. Если разместить инструменты, ресурсы и подсказки в отдельных модулях, каждый файл останется focused и удобным для чтения.
Типичная структура
Растущий сервер часто выглядит так: точка входа сервера и отдельная папка для каждого типа возможностей. Понятные папки ускоряют навигацию. 🌳
my-server/
server.py
tools/
resources/
prompts/Одна точка входа
Оставьте одну точку входа, которая создаёт экземпляр FastMCP и регистрирует всё необходимое. Клиентам достаточно запускать только этот файл.
Импортируйте, а не встраивайте
Определяйте инструменты в собственных модулях, а затем импортируйте и регистрируйте их в файле входа. Ваш server.py останется коротким и удобным для просмотра.
from tools.math import register_math
register_math(mcp)Добавьте README
Краткий README с инструкциями по установке и запуску сервера сделает его удобным для распространения. Вы из будущего поблагодарите себя из настоящего.
Храните секреты отдельно
Никогда не записывайте ключи непосредственно в коде. Читайте их из переменных окружения и храните пример .env, чтобы конфигурация оставалась безопасной и переносимой. 🔐
Быстрая проверка
Вы решаете, что добавить в систему контроля версий.
Структура, готовая к развитию
Вы научились начинать с одного файла, хранить под контролем pyproject.toml и файл блокировки, не добавлять .venv и разделять код по примитивам. Ваш сервер может расти аккуратно. ✅
Изучай Python с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 30
- Уроки
- 120
Часто задаваемые вопросы
Урок «Структура проекта сервера» бесплатный?
Да — полный текст урока «Структура проекта сервера» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс MCP Academy, подпишись на CoddyKit PRO. Курс MCP Academy содержит 4 уроков всего.
Чему я научусь в уроке «Структура проекта сервера»?
Организуйте файлы так, чтобы сервер было легко расширять. Ты практикуешь MCP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать MCP Academy?
Предыдущий опыт не требуется. MCP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Структура проекта сервера»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке MCP Academy?
Да. Каждый урок MCP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Установка Python и uv
- Добавление Python SDK для MCP
- Знакомство с CLI mcp
- Структура проекта сервера