MCP Python SDK

MCP Python SDK
Cách nhanh để viết MCP server bằng Python.
Thư viện chính thức để viết MCP server và client bằng Python.
Giới thiệu
MCP Python SDK là bộ thư viện Python chính thức để xây cả MCP server lẫn MCP client. Với server, bạn khai báo tools, resources và prompts bằng các decorator đơn giản trên hàm Python có type hint; với client, bạn kết nối tới bất kỳ MCP server nào.
SDK yêu cầu Python 3.10 trở lên, hỗ trợ các kiểu truyền tải stdio, Streamable HTTP và SSE. Gói kèm phần mở rộng cli cung cấp lệnh mcp để chạy server, mở MCP Inspector hoặc cài server vào ứng dụng AI.
Đây là lựa chọn phù hợp cho doanh nghiệp đã có sẵn script Python, hệ thống dữ liệu hoặc tự động hóa bằng Python và muốn mở chúng ra cho trợ lý AI sử dụng.
Tính năng nổi bật
Chính thức, giấy phép MIT
SDK do dự án MCP phát triển, cấp phép MIT.
Khai báo bằng decorator
Dùng @mcp.tool() và @mcp.resource() trên hàm Python để biến chúng thành công cụ và dữ liệu cho AI.
Cả server và client
Vừa xây server, vừa có lớp Client để gọi tool của server khác.
Ba kiểu truyền tải
Hỗ trợ stdio, Streamable HTTP và SSE.
Lệnh mcp tiện lợi
mcp dev mở server trong Inspector, mcp run chạy server, mcp install cài vào ứng dụng.
Có tài liệu nâng cấp
Trang tài liệu có mục giới thiệu v2 và hướng dẫn chuyển đổi.
Dùng để làm gì
Mở dữ liệu bán hàng cho AI
Viết tool Python truy vấn cơ sở dữ liệu đơn hàng để trợ lý AI trả lời câu hỏi doanh số.
Tái dùng script có sẵn
Bọc các script xử lý Excel, báo cáo thành tool để nhân viên gọi qua AI.
Kết nối hệ thống nội bộ
Tạo server gọi API phần mềm CRM hay kho của công ty.
Xây agent riêng
Dùng phần Client để ứng dụng Python của bạn gọi tool từ nhiều MCP server.
Triển khai server từ xa
Chạy server qua Streamable HTTP để nhiều người trong công ty dùng chung.
Cách dùng
- 1
Cài SDK bằng uv
Dự án dùng uv có thể thêm gói kèm phần CLI.
$uv add "mcp[cli]" - 2
Hoặc cài bằng pip
Dùng pip nếu không dùng uv; bỏ phần [cli] nếu không cần lệnh mcp.
$pip install "mcp[cli]" - 3
Viết server tối thiểu
Tạo file server.py, khởi tạo MCPServer và gắn @mcp.tool() cho hàm có type hint.
- 4
Thử trong Inspector
Mở server trong MCP Inspector để gọi thử tool trước khi nối vào ứng dụng AI.
$uv run mcp dev server.py - 5
Chạy qua HTTP
Phục vụ server bằng Streamable HTTP, endpoint mặc định trong README là localhost:8000/mcp.
$uv run mcp run server.py --transport streamable-http
Video hướng dẫn
Intro to MCP Servers – Model Context Protocol with Python Course
freeCodeCamp.org
Build Anything With a CUSTOM MCP Server - Python Tutorial
Tech With Tim
Python + MCP: Building MCP servers with FastMCP
Microsoft Reactor
Ví dụ thực tế
Một chuỗi cửa hàng mỹ phẩm ở TP.HCM có sẵn script Python tổng hợp doanh thu theo chi nhánh. Lập trình viên bọc hàm đó thành tool bằng MCP Python SDK, thử trong Inspector, rồi chạy server qua Streamable HTTP trên máy chủ nội bộ. Quản lý vùng hỏi trợ lý AI về doanh thu chi nhánh tuần trước và AI gọi đúng hàm đã có thay vì nhân viên phải chạy tay.
Mẹo & lưu ý
Viết type hint đầy đủ
SDK dựa vào kiểu dữ liệu của hàm để mô tả tham số cho AI.
Đặt tên và mô tả tool rõ ràng
Mô tả tốt giúp mô hình chọn đúng công cụ.
Luôn thử bằng mcp dev
Kiểm tra tool trong Inspector trước khi đưa cho người dùng.
Xem tài liệu v2
Nếu theo hướng dẫn cũ, đối chiếu trang migration vì ví dụ hiện dùng MCPServer.
Câu hỏi thường gặp
Cần Python phiên bản nào?
Python 3.10 trở lên.
Có bắt buộc cài phần [cli] không?
Không. Chỉ cần nếu bạn muốn dùng lệnh mcp như mcp dev, mcp run, mcp install.
SDK có miễn phí không?
Có, mã nguồn mở theo giấy phép MIT.
Có thể làm client không?
Có, SDK cung cấp lớp Client để kết nối và gọi tool trên server HTTP hoặc stdio.
Liên kết hữu ích
Muốn áp dụng vào doanh nghiệp của bạn?
2dm khảo sát quy trình, chọn công cụ phù hợp và triển khai cùng đội ngũ của bạn. Buổi tư vấn đầu tiên miễn phí.
Cùng chủ đề

Model Context Protocol
4.5
Trang tài liệu chính thức của MCP, chuẩn mở để kết nối trợ lý AI với dữ liệu và công cụ bên ngoài.

MCP Servers
4.5
Kho các MCP server tham khảo và danh sách server do cộng đồng xây dựng.

Đặc tả MCP
3.5
Bản đặc tả kỹ thuật đầy đủ của giao thức: tools, resources, prompts và cách client, server trao đổi.


