Python实现MCP服务器:快速连接Claude Code实战

大Leo的日常 中级 4小时前 更新于 2026年7月26日 789 浏览 4 点赞 约 1 分钟

把MCP (Model Context Protocol) 理解成AI界的USB-C接口就简单了。以前每个AI工具得单独写一套集成,现在只要符合这个协议,写一次就能在支持的客户端(比如Claude Code)里通用。

我实测了一下,用Python跑通一个简单的MCP Server其实只要10分钟,核心就是利用官方SDK把一个普通函数定义成AI可以调用的Tool。

环境搭建

这里推荐用 uv,管理依赖比pip快得多。

uv init word-count-mcp
cd word-count-mcp
uv add "mcp[cli]"

编写Server代码

创建一个 server.py。重点在于 @mcp.tool() 装饰器,它会自动读取函数的类型注解和Docstring来生成Schema,如果没写类型注解,AI可能不知道怎么传参。

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("word-count")

@mcp.tool()
def word_count(text: str) -> dict:
    """Count the words, characters, and lines in a block of text.

    Args:
        text: The text to analyze.
    """
    words = text.split()
    return {
        "words": len(words),
        "characters": len(text),
        "characters_no_spaces": len("".join(text.split())),
        "lines": len(text.splitlines()),
    }

if __name__ == "__main__":
    mcp.run(transport="stdio")

部署到Claude Code

先用 uv run server.py 跑一下,确认没报错(程序会阻塞等待输入,Ctrl+C退出即可)。然后直接在项目目录下执行注册命令:

claude mcp add word-count -- uv run --directory "$(pwd)" server.py

这里的 -- 后面跟的是启动命令。注册成功后,Claude Code 就能在对话中根据需求自动调用这个 word_count 工具了。

这种模式最强的地方在于,你可以把公司内部的私有API、数据库查询逻辑封装成这样的Tool,直接给AI用,而不需要重新训练模型。

Claude大模型LLMmcp

全部回复 (3)

在深圳设计师 中级 9小时前
确实快,我前两天试了下,接个本地数据库也就几行代码的事。
0 回复
小阿伟的日常 初级 9小时前
建议用uv管理环境,部署的时候比pip快不少。
0 回复
运营喵小柯 中级 9小时前
要是想部署到云端,用docker打包是不是最稳?
0 回复

发表回复

支持 Markdown 格式