0Pricing
MCP Academy · Урок

Проверка входных данных перед действием

Отклоняйте некорректные аргументы с понятными сообщениями.

«Проверка входных данных перед действием» — бесплатный урок MCP Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения MCP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс MCP Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Trust Nothing the Model Sends

The arguments your tool receives come from an AI, which can guess. Validate every input before you touch a file, a database, or an API.

Check First, Act Second

Run your checks at the very top of the function. Confirm the input is sane before doing any real or irreversible work.

@mcp.tool()
def set_age(age: int) -> str:
    if age < 0 or age > 130:
        raise ValueError("age out of range")

Reject With a Clear Reason

When input fails a check, say exactly why. A precise message lets the model send a corrected value on the next attempt.

Type Hints Catch a Lot

Your parameter hints become the tool schema, so basic type mismatches are caught before your code even runs. Lean on them first.

@mcp.tool()
def repeat(text: str, times: int) -> str:
    return text * times

Hints Are Not Enough

Types alone cannot express ranges, formats, or allowed values. You still validate that a count is positive or a status is one you accept.

Bound Your Ranges

Guard numeric inputs against extremes. A limit on page size or loop count stops the model from accidentally overloading your server.

if limit > 100:
    raise ValueError("limit must be 100 or less")

Whitelist Allowed Values

For fixed choices, check membership instead of trusting free text. A whitelist rejects anything outside the options you actually support.

if status not in {"open", "closed"}:
    raise ValueError("status must be open or closed")

Sanitize Paths and Queries

Model input that becomes a file path or SQL query is dangerous. Sanitize it so a stray .. or quote cannot reach beyond what you intend.

Required Fields Must Exist

Confirm that anything mandatory is actually present and non-empty. An early guard beats a confusing failure deep inside your logic.

if not query.strip():
    raise ValueError("query cannot be empty")

Validation Doubles as Docs

Clear checks teach the model your rules. After one rejection it learns the format and sends valid input the rest of the session.

Fail Before Side Effects

The golden rule: never start an irreversible action until every input has passed. Validate up front so half-done writes never happen.

Quick Check

Why validate inputs before performing the tool's real work?

Recap

Treat model input as untrusted: validate types, ranges, and choices at the top, reject with clear reasons, and never act before checks pass. ✅

Часто задаваемые вопросы

Урок «Проверка входных данных перед действием» бесплатный?

Да — полный текст урока «Проверка входных данных перед действием» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс MCP Academy, подпишись на CoddyKit PRO. Курс MCP Academy содержит 4 уроков всего.

Чему я научусь в уроке «Проверка входных данных перед действием»?

Отклоняйте некорректные аргументы с понятными сообщениями. Ты практикуешь MCP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать MCP Academy?

Предыдущий опыт не требуется. MCP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Проверка входных данных перед действием»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке MCP Academy?

Да. Каждый урок MCP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Ошибки инструментов, видимые модели
  2. Ошибки протокола и сбои инструментов
  3. Проверка входных данных перед действием
  4. Безопасное завершение без зависаний
← Назад к MCP Academy