TIL: MCP 服务器不到 20 行 Python 就能写出来

💡 原文中文,约1300字,阅读约需3分钟。
📝

内容提要

Al Sweigart 演示了如何用不到 20 行 Python 代码创建一个简单的 MCP 服务器,提供当前时间和日期的功能。通过使用装饰器和标准输入输出,简化了代码和客户端连接。Claude Code 原生支持 MCP 协议,用户只需简单配置即可使用。

🎯

关键要点

  • Al Sweigart 演示了一个不到 20 行的 MCP 服务器,提供当前时间和日期功能。

  • 使用 @mcp.tool() 装饰器将普通函数注册为 MCP 工具,简化了代码。

  • 通过 stdio 传输,客户端与服务器通过管道通信,不需要网络连接。

  • Claude Code 原生支持 MCP 协议,用户只需简单配置即可使用。

  • 在项目根目录创建或编辑 .mcp.json 文件以配置 MCP 服务器。

🔎

延伸解读

MCP 服务器的简化设计

Al Sweigart 的 MCP 服务器示例展示了如何通过设计决策来简化代码。使用 @mcp.tool() 装饰器,开发者无需手动编写 JSON Schema,直接将函数注册为工具。这种方法不仅减少了代码量,还提高了开发效率,适合快速原型开发。

客户端连接的便利性

通过 stdio 传输,MCP 服务器与客户端的连接变得更加简单。客户端可以将服务器作为子进程启动,利用管道进行通信,无需复杂的网络设置。这种设计适合在本地环境中快速测试和使用,降低了入门门槛。

Claude Code 的原生支持

Claude Code 对 MCP 协议的原生支持使得用户可以轻松配置和使用 MCP 服务器。只需在项目根目录创建或编辑 .mcp.json 文件,便可快速集成时间查询功能。这种便捷性使得开发者能够专注于业务逻辑,而非底层实现。

延伸问答

如何用 Python 创建一个 MCP 服务器?

可以使用不到 20 行的 Python 代码,通过 FastMCP 类和 @mcp.tool() 装饰器来创建一个 MCP 服务器。

MCP 服务器提供哪些功能?

MCP 服务器提供获取当前时间和日期的功能。

如何配置 MCP 服务器?

在项目根目录创建或编辑 .mcp.json 文件,添加服务器配置。

客户端如何连接到 MCP 服务器?

客户端通过标准输入输出与服务器通信,无需网络连接,直接将服务器作为子进程启动。

使用 MCP 服务器时需要注意什么?

使用 @mcp.tool() 装饰器时,建议用英文编写工具描述,以提高 LLM 的调用效果。

Claude Code 如何支持 MCP 协议?

Claude Code 原生支持 MCP 协议,用户只需简单配置即可使用,且可以通过命令直接添加服务器。

🏷️

标签

➡️

继续阅读