I started with a new idea this morning: create an MCP server that allows Claude to talk to the various OpenAI models.
Now I can ask Claude to ask any of the openAI models.
What I find more fascinating is how Claude is figuring out how to use these new tools. The key is in the description of the tool, the “manifest” that Claude gets when the server is initialised (and is probably injected at the beginning of every chat).
PS: if you want to try this at home, here’s the recipe.
As an example, here’s how the description of today’s MCP server looks like:
{
"name": "openai_conversation",
"description": "Send a message to OpenAI and get a response. Supports multi-turn conversations using response IDs.
CONVERSATION MANAGEMENT:
- For a new conversation: just send your input text
- To continue a conversation: include the previous_response_id from the last response
- Each response includes an ID that can be used to maintain conversation context
- No need to send conversation history - OpenAI maintains it server-side
MODEL SELECTION:
- Use "gpt-4.1" for regular tasks (default, latest model)
- Use "gpt-4o" for fast, efficient responses
- Use "o3" for complex reasoning, math, or coding tasks (default reasoning model)
- Use "o4-mini" for lighter reasoning tasks (fallback reasoning model)
EXAMPLE USAGE:
New conversation:
{
"input": "What's the capital of France?",
"model": "gpt-4.1" // Optional, uses default if not specified
}
Response includes: {"id": "resp_abc123...", "message": "The capital of France is Paris."}
Continue conversation:
{
"input": "Tell me more about its population",
"previous_response_id": "resp_abc123..."
}
Complex reasoning task:
{
"input": "Solve this complex math problem: ...",
"instructions": "You are an expert mathematician. Show your work step by step.",
"model": "o3",
"reasoning": {"enabled": true}
}
Lighter reasoning task:
{
"input": "What's 25% of 80?",
"model": "o4-mini"
}",
"inputSchema": {
"type": "object",
"properties": {
"input": {
"type": "string",
"description": "Text input to send to the model"
},
"previous_response_id": {
"type": "string",
"description": "ID of the previous response to continue the conversation"
},
"instructions": {
"type": "string",
"description": "System/developer message to set context"
},
"model": {
"type": "string",
"description": "OpenAI model to use (e.g., gpt-4o, o3, gpt-4, gpt-3.5-turbo)"
},
"temperature": {
"type": "number",
"description": "Temperature for response generation (0-2)"
},
"max_output_tokens": {
"type": "number",
"description": "Maximum tokens in response"
},
"store": {
"type": "boolean",
"description": "Whether to store the conversation for future reference",
"default": true
},
"reasoning": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "Enable reasoning for o-series models"
}
}
}
},
"required": ["input"]
}
}
If you want to have an idea of how this works, here’s a transcript of a conversation I just saw:
Bottle, Yo-yo, and Coffee Joke Collaboration
Initial Request
Paolo: I need an original joke about a bottle, a yoyo and a coffee. Why don’t you try to come up with something, then start a conversation with gpt-4.1 or even with o3 for some reasoning, until you come up with something you are all happy with.
Claude’s Initial Attempt
Claude: Here’s my initial attempt at a joke:
Why did the bottle, yo-yo, and coffee go to therapy together? Because the bottle had too much pressure, the yo-yo couldn’t handle the ups and downs, and the coffee was always getting into hot water!
Let me bounce this off GPT-4.1 to see if we can craft something better together.
Conversation with GPT-4.1
Claude to GPT-4.1:
I’m working on an original joke involving a bottle, a yo-yo, and coffee. Here’s what I came up with:
“Why did the bottle, yo-yo, and coffee go to therapy together? Because the bottle had too much pressure, the yo-yo couldn’t handle the ups and downs, and the coffee was always getting into hot water!”
What do you think? Can we improve on this or come up with something completely different that’s funnier? I’m looking for something original and clever that plays on the characteristics of all three items.
GPT-4.1’s Response:
That’s a fun premise! Your punchlines cleverly play on literal traits: pressure for the bottle, ups and downs for the yo-yo, and “hot water” for coffee. To take it a step further, we can try sharper wordplay or have the items interact more dynamically. Here are a few options and ideas to riff on:
1. Tightly Interwoven Punchline:
“Why did the bottle, the yo-yo, and the coffee start a support group? The bottle was bottling things up, the yo-yo was at the end of its string, and the coffee just couldn’t espresso its feelings!”
2. Play on shared characteristics:
“A bottle, a yo-yo, and a cup of coffee walked into a bar. The bartender asked, ‘What’s wrong?’ The bottle said, ‘I’m under pressure,’ the yo-yo sighed, ‘Life’s just one big letdown,’ and the coffee admitted, ‘I keep getting mugged!'”
3. A dialogue version:
“The bottle complained, ‘I’m always capped.’ The yo-yo replied, ‘At least you don’t hit rock bottom every day.’ Coffee sighed, ‘Guys, I can’t function without being filtered first.'”
4. A quick setup and punch:
“Why can’t the bottle, yo-yo, and coffee ever relax together? The bottle’s too tense, the yo-yo’s always wound up, and the coffee is just jittery!”
Let me know which style you like best, and we can fine-tune from there or come up with more!
Claude’s Follow-up:
I love the wordplay! The “espresso its feelings” and “getting mugged” lines are brilliant. Let’s refine option 2 – the bar joke format is classic and the puns work well together.
Could we tighten it up a bit? Maybe something like:
“A bottle, a yo-yo, and a cup of coffee walked into a bar. The bottle said ‘I’m under too much pressure,’ the yo-yo sighed ‘I keep hitting rock bottom,’ and the coffee complained ‘I keep getting mugged!'”
What do you think? Can we make the yo-yo line punchier to match the strength of the other two?
GPT-4.1’s Refinement:
Absolutely, great instincts! Tightening the yo-yo’s line for maximum punchiness is smart. Here are a few yo-yo puns to try to match the “under too much pressure” and “getting mugged” punchiness:
- “My life’s just one big letdown.”
- “I’m always at the end of my rope.”
- “Things keep going up and down for me.”
- “I’m wound up all the time.”
- “I’m just spinning my wheels.”
So, a polished version:
“A bottle, a yo-yo, and a cup of coffee walked into a bar. The bottle said, ‘I’m under too much pressure,’ the yo-yo sighed, ‘Life’s just one big letdown,’ and the coffee groaned, ‘I keep getting mugged!'”
Or, if you like the “rope” pun:
“…the yo-yo sighed, ‘I’m always at the end of my rope,’…”
Let me know which phrase resonates most or if you want to mix and match lines!
Conversation with O3 (Reasoning Model)
Claude to O3:
We’ve crafted this joke: “A bottle, a yo-yo, and a cup of coffee walked into a bar. The bottle said, ‘I’m under too much pressure,’ the yo-yo sighed, ‘Life’s just one big letdown,’ and the coffee groaned, ‘I keep getting mugged!'”
Can you analyze the comedic structure and timing? Are there any small tweaks that could make it land better? I’m particularly interested in whether the order of the three punchlines creates the best comedic rhythm.
O3’s Analysis:
How the joke works now
- Familiar opening – “_ walked into a bar.”
- Rule-of-three beat pattern: Object 1 / Object 2 / Object 3.
- Each object supplies a one-liner built on a double meaning of a keyword that relates both to the object itself and to a bar-room complaint.
• bottle → “pressure” (carbonation ⇔ stress)
• yo-yo → “let-down” (yo-yo’s drop ⇔ disappointment)
• coffee → “mugged” (coffee mug ⇔ robbery)
Why it basically works
- Symmetry: All three lines are the same length and start with a short emotional verb (“said,” “sighed,” “groaned”).
- Clear puns: no explanation needed.
- The third line is the darkest/most absurd, satisfying the audience’s expectation that “the third thing is the punchline.”
Where the rhythm feels a little off
“Under too much pressure” is not only the longest phrase but also the most ordinary; putting it first means the second beat (“let-down”) feels smaller, and momentum briefly dips before you reach the coffee line.
A simple structural fix
Re-order to create rising stakes and slightly tighten wording:
A yo-yo, a soda bottle, and a cup of coffee walk into a bar.
The yo-yo sighs, “Life’s just one long let-down.”
The bottle grumbles, “Try living under constant pressure.”
The coffee groans, “Buddy, I get mugged every day!”
Why this order usually lands better
- “Let-down” sets a low-stakes, self-deprecating tone.
- “Pressure” raises the stakes—stress, explosions—without stealing thunder from the closer.
- “Mugged” jumps from annoyance to actual crime, giving the biggest leap in absurdity on the final beat.
Additional micro-tweaks (optional)
- Swap “bottle” for “soda bottle” or “soda” to telegraph carbonation and make the pun snap faster.
- Change all verbs to the same meter if you like strict rhythm: “sighs / grumbles / groans” or “says / says / says.”
- Add a bartender reaction if you want one more laugh: “The bartender nodded—he’d heard this line before.”
Timing tips for delivery
- Beat 0: Quick setup, no pauses.
- After each punch, give a distinct half-second so the audience can process the wordplay.
- On the third line, lean into “mugged,” then button-up—silence lets the laugh land.
In short
The joke is solid; putting the yo-yo first, bottle second, coffee last gives a cleaner escalation and lets the biggest wordplay (“mugged”) finish the rhythm with the strongest laugh.
Final Result
Claude’s Summary: Brilliant analysis! The o3 model makes excellent points about comedic rhythm and escalation. Here’s our refined version based on the collaboration:
“A yo-yo, a bottle, and a cup of coffee walk into a bar. The yo-yo sighs, ‘Life’s just one big letdown.’ The bottle grumbles, ‘Try living under constant pressure.’ The coffee groans, ‘At least you don’t get mugged every day!'”
The progression works much better – starting with the mild self-deprecation of the yo-yo, escalating to the bottle’s stress, and finishing with the coffee’s absurd complaint about getting “mugged” daily. The rhythm builds nicely to the strongest punchline.
What do you think of our collaborative effort? The three of us managed to craft something that plays on each object’s characteristics while building to a solid comedic climax!
What a great experiment!
Thanks Jed. I posted the recipe in the next post if you want to give it a try.