Ошибки протокола и сбои инструментов
Отличайте сбои транспорта от ошибок бизнес-логики.
«Ошибки протокола и сбои инструментов» — бесплатный урок MCP Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения MCP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс MCP Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Two Very Different Failures
MCP has two kinds of failure: a protocol error in the wire itself, and a tool failure inside your business logic. They are handled differently.
Protocol Errors Live in JSON-RPC
A protocol error means the message could not be processed at all, like an unknown method or malformed params. It rides in the JSON-RPC error field.
{"jsonrpc": "2.0", "id": 7,
"error": {"code": -32601,
"message": "Method not found"}}Tool Failures Live in the Result
A tool failure means the call reached your function but the work went wrong. It returns a normal result marked with isError true.
Why the Split Matters
The model should see and react to tool failures, but protocol errors usually signal a bug the client must handle, not something the AI can retry.
Standard JSON-RPC Codes
Protocol codes are negative and standardized: -32601 is method not found, -32602 is invalid params, -32700 is a parse error.
Tool Failures Reach the Model
Because a tool failure is just a result, the model reads it as context and can decide to retry, adjust input, or explain it. 🔁
Raising Inside a Tool
When you raise an exception in a tool, FastMCP turns it into a tool failure result, not a protocol error. Your server keeps running.
@mcp.tool()
def fetch(url: str) -> str:
if not url.startswith("http"):
raise ValueError("url must be http")Unknown Tool Is Protocol-Level
If a client asks for a tool that does not exist, that is a protocol error. The request never reaches any function of yours.
Bad Arguments Can Be Either
Schema-level type mismatches surface as a protocol invalid-params error, while a valid type with a bad value is best a tool failure.
Match Failure to Audience
Ask who should react. If the model can fix it, make it a tool failure. If only the developer can, a protocol error is right.
Keep Transport Healthy
Never let business problems leak out as protocol errors. Doing so confuses clients and can tear down a session that should keep going.
Quick Check
Where does a failure inside your tool function get reported?
Recap
Protocol errors mean the message itself failed; tool failures mean your logic failed. Route each to who can act on it and keep transport healthy. ✅
Часто задаваемые вопросы
Урок «Ошибки протокола и сбои инструментов» бесплатный?
Да — полный текст урока «Ошибки протокола и сбои инструментов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс MCP Academy, подпишись на CoddyKit PRO. Курс MCP Academy содержит 4 уроков всего.
Чему я научусь в уроке «Ошибки протокола и сбои инструментов»?
Отличайте сбои транспорта от ошибок бизнес-логики. Ты практикуешь MCP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать MCP Academy?
Предыдущий опыт не требуется. MCP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Ошибки протокола и сбои инструментов»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке MCP Academy?
Да. Каждый урок MCP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Ошибки инструментов, видимые модели
- Ошибки протокола и сбои инструментов
- Проверка входных данных перед действием
- Безопасное завершение без зависаний