Выбор правильного типа MIME
Укажите клиентам, является ли содержимое текстом, JSON или чем-либо ещё.
«Выбор правильного типа MIME» — бесплатный урок MCP Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения MCP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс MCP Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
What a MIME Type Is
A MIME type is a short label that tells a client what kind of content a resource holds, such as plain text, JSON, or an image.
Why It Matters
The label lets the client render and parse content correctly. Without it, a client might show raw JSON as text or mishandle a binary blob. 🏷️
The Text Default
If you say nothing, MCP assumes text/plain. That suits notes and docs, but structured data deserves a more precise type.
Common Types
You will reach for a few often: text/plain for prose, application/json for data, and text/markdown for formatted documents the model can parse.
Declare It in FastMCP
Set the type with the mime_type argument on the resource decorator so clients know exactly how to read the body.
@mcp.resource("data://stats", mime_type="application/json")
def stats():
return '{"users": 42}'JSON the Right Way
For JSON, label it application/json and return a valid JSON string. Build it with the json library so quoting and escaping are always correct.
import json
@mcp.resource("data://stats", mime_type="application/json")
def stats():
return json.dumps({"users": 42})Markdown for Docs
Serving a README or guide? Use text/markdown so capable clients render headings and lists instead of showing raw symbols.
@mcp.resource("docs://readme", mime_type="text/markdown")
def readme():
return "# Welcome\nGetting started..."Match Type to Content
The type must honestly describe the body. Labeling plain text as JSON makes clients try to parse it and fail, so always keep them in sync.
Binary Needs Care
For images or PDFs you set a binary MIME type like image/png, and the bytes travel base64-encoded so they survive a text protocol.
Detect from Extension
When serving files, Python can guess a type from the filename. The mimetypes library maps an extension to its standard MIME type for you.
import mimetypes
mt, _ = mimetypes.guess_type("report.json")
# mt == "application/json"A Small Contract
Think of the MIME type as a tiny contract: it promises the client what shape the bytes take so both sides agree before parsing.
Quick Check
Pick the correct type for structured data.
Recap
The MIME type tells clients how to read a resource. Use mime_type to set text, JSON, markdown, or binary, and keep it honest. 🏷️
Часто задаваемые вопросы
Урок «Выбор правильного типа MIME» бесплатный?
Да — полный текст урока «Выбор правильного типа MIME» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс MCP Academy, подпишись на CoddyKit PRO. Курс MCP Academy содержит 4 уроков всего.
Чему я научусь в уроке «Выбор правильного типа MIME»?
Укажите клиентам, является ли содержимое текстом, JSON или чем-либо ещё. Ты практикуешь MCP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать MCP Academy?
Предыдущий опыт не требуется. MCP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Выбор правильного типа MIME»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке MCP Academy?
Да. Каждый урок MCP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Объяснение URI ресурсов
- Предоставление статического текстового ресурса
- Чтение файла с диска
- Выбор правильного типа MIME