Name & Describe a Tool Well
Write descriptions the model can actually act on.
Name & Describe a Tool Well is a free MCP Academy lesson on CoddyKit — lesson 1 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the MCP Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
The Model Reads First
Before an AI ever runs your tool, it reads its name and description to decide whether this tool fits the task. 🧭
Name It Like a Verb
A good MCP tool name says what it does at a glance, like get_weather or send_email. Short, action-first, no surprises.
Where the Name Comes From
In FastMCP the tool name defaults to your Python function name, so name the function carefully and use snake_case.
@mcp.tool()
def get_weather(city: str) -> str:
...Override the Name
If the function name is not ideal, pass an explicit name to the decorator so the model sees exactly what you want.
@mcp.tool(name="get_weather")
def weather_lookup(city: str) -> str:
...The Description Is a Prompt
The tool description is read by the model as guidance. Treat it like a tiny prompt that tells the AI when and why to call this tool.
Docstrings Become Descriptions
FastMCP turns your function's docstring into the tool description automatically, so write it for the model, not just for humans.
@mcp.tool()
def get_weather(city: str) -> str:
"""Get the current weather for a city."""Say What It Returns
A strong description names the inputs and the output, so the model knows what it gets back before it ever calls the tool.
Be Specific About Limits
State the boundaries in the description: which cities, which formats, what it cannot do. Clear limits stop the model from misusing your tool.
Avoid Vague Verbs
Words like process or handle tell the model nothing. Use a precise verb so the AI can tell your tools apart at call time.
One Tool, One Job
Keep each tool focused on a single job. A narrow, well-named tool is far easier for the model to pick correctly than a do-everything one.
Test the Name Out Loud
Read the name and first line of the description together. If a stranger could not guess what it does, the model probably cannot either.
Quick Check
Where does FastMCP get a tool's description from by default?
Recap
The model reads the name and description first. Use action names, docstring descriptions, and clear limits so the AI calls your tool correctly. ✅
Frequently asked questions
Is the “Name & Describe a Tool Well” lesson free?
Yes — the full text of “Name & Describe a Tool Well” is free to read here on the web, and the MCP Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the MCP Academy course, upgrade to CoddyKit PRO.
What will I learn in “Name & Describe a Tool Well”?
Write descriptions the model can actually act on. You practise MCP Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start MCP Academy?
No prior experience is required. MCP Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 1 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Name & Describe a Tool Well” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this MCP Academy lesson?
Yes. Every MCP Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Name & Describe a Tool Well
- Declare Parameters with Type Hints
- Return Useful Results
- A Calculator Tool, Start to Finish