Model Context Protocol (MCP) do Anthropic khởi xướng đang nhanh chóng trở thành tiêu chuẩn vàng mở cho phép các mô hình AI (LLMs) kết nối trực tiếp và an toàn với các công cụ, cơ sở dữ liệu nội bộ và API của doanh nghiệp. Bài viết này sẽ hướng dẫn bạn từ A đến Z cách tự xây dựng một Local MCP Server bằng Python để tích hợp vào Claude Desktop và Cursor IDE.
1. Model Context Protocol (MCP) Là Gì & Tại Sao Lại Mang Tính Cách Mạng?
Trước khi có MCP, mỗi ứng dụng AI phải tự viết các hàm gọi công cụ (Custom Function Calling) riêng lẻ, gây phân mảnh và khó tái sử dụng. MCP giải quyết triệt để bài toán này theo mô hình Client – Host – Server tiêu chuẩn:
- MCP Host: Ứng dụng giao tiếp với người dùng (ví dụ: Claude Desktop, Cursor, Antigravity, Zed).
- MCP Client: Thành phần duy trì kết nối 1-1 với máy chủ giao thức.
- MCP Server: Cung cấp tài nguyên (Resources), câu lệnh mẫu (Prompts), và công cụ thực thi (Tools) từ môi trường cục bộ hoặc cơ sở dữ liệu nội bộ.
2. Kiến Trúc Local MCP Server Chuẩn Doanh Nghiệp
Với một Local MCP Server chạy trên hạ tầng nội bộ, dữ liệu nhạy cảm (như bảng giá, thông tin nhân sự, báo cáo tài chính SQLite/PostgreSQL) hoàn toàn không bị đưa lên Cloud công cộng để huấn luyện lại mô hình.
# local_mcp_server.py
from mcp.server.fastmcp import FastMCP
import sqlite3
# Khởi tạo MCP Server
mcp = FastMCP("Enterprise-Data-Connector")
@mcp.tool()
def query_sales_report(quarter: str, year: int) -> str:
# Truy vấn báo cáo doanh số theo quý và năm từ cơ sở dữ liệu nội bộ
conn = sqlite3.connect("enterprise_data.db")
cursor = conn.cursor()
cursor.execute("SELECT region, revenue, profit FROM sales WHERE quarter=? AND year=?", (quarter, year))
rows = cursor.fetchall()
conn.close()
if not rows:
return f"Không tìm thấy dữ liệu doanh số cho {quarter}/{year}."
result = [f"Khu vực: {r[0]} | Doanh thu: {r[1]:,} VNĐ | Lợi nhuận: {r[2]:,} VNĐ" for r in rows]
return "\n".join(result)
if __name__ == "__main__":
mcp.run()
3. Cấu Hình Tích Hợp Vào Claude Desktop & Cursor
Để Claude Desktop nhận diện MCP Server vừa tạo, bạn mở file cấu hình claude_desktop_config.json và thêm vào:
{
"mcpServers": {
"enterprise-data": {
"command": "python",
"args": ["C:/workspace/local_mcp_server.py"]
}
}
}
4. Bảng So Sánh MCP Với REST API Truyền Thống
| Tiêu chí | Giao thức MCP | Custom REST API / Function Calling |
|---|---|---|
| Khả năng tái sử dụng | Rất cao (Viết 1 lần dùng cho Claude, Cursor, Antigravity, v.v.) | Thấp (Phải viết lại schema cho từng LLM) |
| Bảo mật dữ liệu | Kiểm soát quyền truy cập cục bộ nghiêm ngặt | Dễ rò rỉ token hoặc lộ endpoint |
| Tốc độ phát triển | Rút ngắn 70% thời gian tích hợp | Tốn nhiều công bảo trì middleware |
5. Kết Luận & Lộ Trình Triển Khai
Giao thức MCP mở ra kỷ nguyên mới cho Autonomous AI Agents hoạt động trực tiếp trên máy tính và hạ tầng doanh nghiệp. Đội ngũ kỹ thuật của NIE khuyến nghị các đơn vị nên sớm chuẩn hóa các microservices nội bộ sang chuẩn MCP để sẵn sàng đón đầu làn sóng tác nhân tự trị 2026.
🤖 Đội Ngũ AI Tự Hành 24/7
Tự động hóa quy trình nghiệp vụ, cào dữ liệu, xử lý tài liệu và đối soát báo cáo liên tục không ngừng nghỉ.
✍️ AI Sáng Tạo Nội Dung
Tự động viết bài chuẩn SEO, thiết kế Infographic và phân phối đa kênh lên Website, Facebook Fanpage.
🔗 Kết Nối n8n & Webhooks
Tích hợp liền mạch với Google Workspace, CRM, Zalo OA, Telegram và hệ thống cơ sở dữ liệu doanh nghiệp.
🧠 Đa Mô Hình AI Tiên Tiến
Ứng dụng linh hoạt Google Gemini Pro, OpenAI GPT, Claude 3.5 và các mô hình mã nguồn mở DeepSeek/Ollama.
🎓 Khóa Học AI Thực Chiến
Chương trình đào tạo từ cơ bản đến nâng cao: Làm chủ AI Agents, Prompt Engineering và Tự động hóa 0đ chi phí.
💎 Tài Khoản AI Doanh Nghiệp
Cung cấp gói tài khoản Google One 2TB, Gemini Advanced, ChatGPT Plus bản quyền giá ưu đãi.
🏢 Đơn Vị Pháp Lý Rõ Ràng
HỘ KINH DOANH CÔNG NGHỆ VÀ GIÁO DỤC NGUYỄN THÔNG (MST: 6000861747-001). Cung cấp hóa đơn và hợp đồng đầy đủ.
🔒 Bảo Mật Dữ Liệu Khách Hàng
Tuân thủ nghiêm ngặt Nghị định 13/2023/NĐ-CP về bảo vệ dữ liệu cá nhân và bí mật kinh doanh của khách hàng.

