0Pricing
MCP Academy · 课时

使用类型提示声明参数

使用 Python 类型提示来定义工具模式。

使用类型提示声明参数 是 CoddyKit 上的免费 MCP Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 MCP Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 MCP Academy 课程共包含 4 节课。

本课时的部分内容尚未翻译,以英文显示。

Parameters Become a Schema

Every argument of your tool function turns into part of an input schema the model must follow when it calls your tool. 🧩

Type Hints Do the Work

FastMCP reads your Python type hints and builds the JSON schema for you, so you rarely write schema by hand.

@mcp.tool()
def add(a: int, b: int) -> int:
    return a + b

str, int, float, bool

The basic types map cleanly: str becomes string, int and float become number, and bool becomes boolean in the schema.

Untyped Means Unclear

Skip the type hint and the model only sees a loose value with no rules, which invites wrong or invalid input.

def add(a, b):
    return a + b

Required by Default

A parameter with no default value is treated as required, so the model must always supply it when calling the tool.

Defaults Make It Optional

Give a parameter a default and it becomes optional. The model may omit it, and your function uses the fallback value.

@mcp.tool()
def greet(name: str, formal: bool = False) -> str:
    ...

Lists and Dicts

You can hint collections too. A list argument maps to a JSON array, and a dict maps to an object the model can fill in.

def tag(items: list[str]) -> int:
    return len(items)

Optional Values

Use Optional when an argument may be a value or None, signaling that the model can leave it empty on purpose.

from typing import Optional
def find(q: str, limit: Optional[int] = None):
    ...

Name Parameters Clearly

The model sees each parameter name in the schema, so city beats c and start_date beats arg2. Clear names guide better calls.

Hints Power Validation

Because hints define the schema, MCP can reject calls with the wrong type before your code runs, catching mistakes early.

Keep the Signature Small

Fewer, well-typed parameters are easier for the model to fill correctly than a long list of loosely related arguments.

Quick Check

What makes a tool parameter optional in FastMCP?

Recap

Your type hints build the tool schema: basic types map directly, defaults mean optional, and clear names guide the model. ✅

常见问题解答

「使用类型提示声明参数」课时是免费的吗?

是的 — 「使用类型提示声明参数」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 MCP Academy 课程的其余内容,请升级到 CoddyKit PRO。 MCP Academy 课程共包含 4 节课。

「使用类型提示声明参数」这节课中我会学到什么?

使用 Python 类型提示来定义工具模式。 你通过在浏览器中直接运行的动手代码来练习 MCP Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 MCP Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 MCP Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「使用类型提示声明参数」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 MCP Academy 课中编写并运行代码吗?

能。每节 MCP Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 为工具命名并写好描述
  2. 使用类型提示声明参数
  3. 返回有用的结果
  4. 从头到尾构建计算器工具
← 返回 MCP Academy