MCP Python SDK

活跃
GitHub Python MIT

简介

MCP Python SDK 是官方 Python 实现,用于构建 MCP server 与 Agent 端集成,适合在 Python Agent 项目中快速接入标准化工具协议。

核心特性

  • FastMCP 高级接口 — 用装饰器快速定义 MCP Server 的工具、资源和提示词
  • 多传输协议支持 — 支持 stdio、SSE 和 Streamable HTTP 三种标准传输方式
  • 结构化输出 — 工具返回值自动序列化为结构化 JSON 响应
  • 资源与提示词系统 — 通过 Resources 暴露数据、通过 Prompts 定义交互模板
  • OAuth 认证支持 — 客户端内置 OAuth 认证流程支持
  • ASGI 挂载 — 可挂载到现有 FastAPI/Starlette 应用作为子应用运行

适用场景

💡 为 LLM 应用快速构建暴露数据库查询能力的 MCP Server
💡 将现有 Python API 包装为 MCP 兼容的工具服务供 Agent 调用
💡 构建连接 Claude Desktop 的本地 MCP Server 实现工具扩展
💡 在 FastAPI 应用中挂载 MCP Server 提供标准化的 LLM 上下文接口
💡 构建 MCP 客户端连接和调用任何标准 MCP Server

优势与不足

优势

  • 活跃维护,近期持续更新
  • 社区热度高(24.2k stars)
  • 开源许可证友好(MIT)

快速开始

uv init mcp-server-demo
cd mcp-server-demo
uv add "mcp[cli]"

# server.py
from mcp.server.fastmcp import FastMCP

mcp = FastMCP("Demo", json_response=True)

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

@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:
    return f"Hello, {name}!"

if __name__ == "__main__":
    mcp.run(transport="streamable-http")

相关项目

MCP Use

10.6k · TypeScript
活跃 A+

MCP Use 是一个围绕 Model Context Protocol 的工具编排项目,帮助 Agent 快速接入 MCP server、统一工具调用接口,并提升多工具协作的一致性与可移植性。

mcptoolsprotocol +1
  • · 全栈 MCP 框架,提供 TypeScript 和 Python 双语言 SDK
  • · 使用类型化工具定义和 Zod Schema 验证构建 MCP Server
  • · MCP Apps——可在 Claude、ChatGPT 等客户端间通用的交互式 React 组件

FastMCP

27.6k · Python
活跃 A+

FastMCP 是一个快速、Pythonic 的 MCP 服务器和客户端构建库,日均下载量超过 100 万次,让开发者轻松创建 Model Context Protocol 工具。

mcpserverprotocol +2
  • · 装饰器定义工具 — 用Python函数加@mcp.tool装饰器即可创建MCP工具,自动生成schema和文档
  • · MCP客户端 — 连接任意MCP服务器(本地或远程),支持完整的协议握手和会话管理
  • · 交互式App — 为工具生成可渲染在对话中的交互式UI界面

Awesome Claude Skills

74.7k · Python
活跃 A

精选 Claude Skills 资源和工具集合,帮助用户自定义和扩展 Claude AI 工作流。

mcptoolspython +1
  • · 1000+ 生产级 Skills — 覆盖文档处理、开发工具、数据分析、营销、写作等 9 大类别
  • · 跨 Agent 兼容 — 支持 Claude Code、Claude.ai、OpenAI Codex、Cursor、Gemini CLI、Windsurf 等
  • · 渐进式加载架构 — 每个 Skill 仅加载名称和描述(~100 tokens),完整内容按需加载,支持数百个 Skill 共存

相关文章