0Pricing
MCP Academy · Leçon

Demander une complétion à l’hôte

Appelez le client pour exécuter une instruction LLM.

Demander une complétion à l’hôte est une leçon MCP Academy gratuite sur CoddyKit. Ceci est la leçon 2 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.

The Request Method

To ask for a generation, your server sends a sampling/createMessage request to the client over the protocol.

{ "method": "sampling/createMessage" }

Reach the Client via Context

Inside a tool you get a Context object. Its session is your line back to the client that can run sampling.

async def tool(topic: str, ctx: Context) -> str:
    ...

Call create_message

The Python SDK exposes ctx.session.create_message. Await it, pass your messages, and you get the model’s reply back.

result = await ctx.session.create_message(
    messages=[...],
    max_tokens=100,
)

Build a SamplingMessage

Each turn you send is a SamplingMessage with a role like user and a content block holding the actual text.

SamplingMessage(role="user",
    content=TextContent(type="text", text=prompt))

Wrap Text in TextContent

Plain text goes inside TextContent with type set to text. That typed wrapper is how MCP carries the message body.

TextContent(type="text", text="Summarize this report")

Always Set max_tokens

Give the model a ceiling with max_tokens. It caps how long the generated reply can be and keeps cost predictable.

max_tokens=200

Read the Result

The reply’s content is a typed block. Check its type, and if it is text, read result.content.text for the answer.

if result.content.type == "text":
    return result.content.text

Inspect Which Model Ran

The result also reports the model the client chose, so you can log exactly which model produced your output.

print(result.model)  # e.g. claude-3-sonnet-20240307

Know Why It Stopped

A stopReason field tells you why generation ended — like endTurn or hitting your max token limit.

result.stopReason  # "endTurn"

A Whole Tool, Briefly

So a sampling tool is: build a message, await create_message, then return the text — just a few lines.

r = await ctx.session.create_message(
    messages=[msg], max_tokens=100)
return r.content.text

It Can Be Rejected

Remember the request may be denied by the user. Treat a rejection like any failure and handle it gracefully.

Quick Check

One detail about making the call from your tool.

Recap

Send sampling/createMessage via ctx.session, wrap prompts in SamplingMessage and TextContent, set max_tokens, then read result.content.text. 💬

Questions Fréquemment Posées

La leçon « Demander une complétion à l’hôte » est-elle gratuite ?

Oui — le texte complet de « Demander une complétion à l’hôte » 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 « Demander une complétion à l’hôte » ?

Appelez le client pour exécuter une instruction LLM. 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 2 sur 4.

Combien de temps prend la leçon « Demander une complétion à l’hôte » ?

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

  1. Ce que permet l’échantillonnage
  2. Demander une complétion à l’hôte
  3. Structurer les messages et les préférences
  4. Approbation avec intervention humaine
← Retour à MCP Academy