Définir le bon type MIME
Indiquez aux clients si le contenu est du texte, du JSON ou autre chose.
Définir le bon type MIME est une leçon MCP Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage MCP Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours MCP Academy comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
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. 🏷️
Questions Fréquemment Posées
La leçon « Définir le bon type MIME » est-elle gratuite ?
Oui — le texte complet de « Définir le bon type MIME » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours MCP Academy, passe à CoddyKit PRO. Le cours MCP Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Définir le bon type MIME » ?
Indiquez aux clients si le contenu est du texte, du JSON ou autre chose. Tu pratiques MCP Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer MCP Academy ?
Aucune expérience préalable n'est requise. MCP Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Définir le bon type MIME » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon MCP Academy ?
Oui. Chaque leçon MCP Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Comprendre les URI de ressources
- Fournir une ressource textuelle statique
- Lire un fichier sur le disque
- Définir le bon type MIME