0
0
Lập trình
Hưng Nguyễn Xuân 1
Hưng Nguyễn Xuân 1xuanhungptithcm

Bắt đầu với MCP: Kết nối Clients & 10 MCP Quan Trọng

Đăng vào 1 tháng trước

• 11 phút đọc

Giới thiệu về MCP và Tầm Quan Trọng của Nó

Nếu bạn là một lập trình viên đang sử dụng Cursor, Windsurf, hoặc Claude, hoặc thường xuyên xây dựng những thứ kết hợp giữa mã nguồn, tài liệu, nhiệm vụ và thiết kế — bạn có thể đang rất háo hức để kết nối nhiều công cụ hơn vào quy trình làm việc của mình. Đó chính là lúc MCP (Model Context Protocol) phát huy tác dụng: nó cho phép các công cụ của bạn (máy chủ MCP) giao tiếp với client agent của bạn theo cách tiêu chuẩn, giúp agent có quyền truy cập vào ngữ cảnh mà nếu không có sẽ không thể có được.

Bài viết này là phần thứ hai trong loạt ba bài viết về MCP. Trong phần đầu tiên, chúng ta đã khám phá MCP là gì, các khái niệm cơ bản và lý do đứng sau nó. Nếu bạn chưa xem, bạn có thể đọc bài viết đó ở đây.

Trong bài viết này, chúng ta sẽ đề cập đến:

  • Cách thêm MCP vào client (như Cursor, Windsurf, hoặc Claude Desktop).
  • Cách cấu hình mcp.json.
  • Các máy chủ MCP phổ biến thường được sử dụng (Notion, Linear, GitHub, Figma, Supabase).
  • Ví dụ về các prompt hệ thống mà bạn có thể thử với mỗi MCP.

Cuối bài, bạn sẽ có khả năng kết nối với các MCP từ IDE của bạn và bắt đầu đưa chúng vào quy trình làm việc hàng ngày.

Cách Thêm Client MCP & Cấu Hình

Bây giờ, hãy đi vào thực tiễn. Để kết nối máy chủ MCP (các công cụ như Notion, Linear, Supabase, v.v.) với client của bạn, bạn cơ bản cần hai điều:

  • Bật hỗ trợ client MCP trong công cụ của bạn (Cursor/Windsurf/Claude).
  • Viết một cấu hình (thường là mcp.json hoặc tương tự), chỉ đến các máy chủ MCP với thông tin xác thực đúng.

Dưới đây là cách thiết lập môi trường của bạn với cấu hình mẫu và nơi để đặt tệp.

1. Tạo tệp cấu hình mới

Tạo một tệp có tên mcp.json trong dự án của bạn (hoặc trong một vị trí cấu hình toàn cầu).

Dưới đây là một mẫu chung:

json Copy
{
  "mcpServers": {
    "notion": {
      "url": "https://mcp.notion.com/mcp",
      "auth": {
        "type": "oauth",
        "token": "YOUR_NOTION_OAUTH_TOKEN_HERE"
      }
    },
    "linear": {
      "url": "https://mcp.linear.com",
      "auth": {
        "type": "apiKey",
        "key": "YOUR_LINEAR_API_KEY_HERE"
      }
    }
  }
}

Bạn sẽ thay thế các chuỗi placeholder bằng các token hoặc key thực tế của mình, và đảm bảo các URL là chính xác.

2. Thiết lập cụ thể cho Client

Dưới đây là hướng dẫn cho một số client phổ biến về nơi đặt tệp cấu hình và cách bật hỗ trợ MCP.

Cursor

  • Đặt tệp trong thư mục gốc của dự án dưới dạng .cursor/mcp.json.
  • Nếu bạn muốn nó ở chế độ toàn cầu, bạn cũng có thể đặt nó trong ~/.cursor/mcp.json để nó áp dụng cho tất cả các dự án.
  • Trong Cursor → Cài đặt → Ngữ cảnh / MCP, bật “Enable MCP servers” nếu nó chưa được bật.
  • Đôi khi bạn có thể cần khởi động lại Cursor hoặc làm mới trong Cài đặt để các máy chủ MCP mới hiển thị.

Windsurf

  • Thêm mcp.json vào gốc thư mục workspace/dự án của bạn.
  • Trong Windsurf → Plugins hoặc Tích hợp → “Thêm máy chủ MCP bên ngoài” (hoặc bảng cài đặt tương đương) — dán URL hoặc nhập lệnh/cấu hình.
  • Nếu máy chủ là từ xa, cung cấp thông tin xác thực trong cấu hình. Nếu là máy chủ cục bộ, đảm bảo lệnh/tham số được cung cấp nếu cần.

Claude Desktop

  • Trên macOS: chỉnh sửa ~/Library/Application Support/Claude/claude_desktop_config.json (hoặc đường dẫn tệp cấu hình tương đương).
  • Trên Windows/Linux: các đường dẫn cấu hình tương tự (kiểm tra tài liệu của Claude).
  • Chèn các mục mcpServers của bạn vào tệp cấu hình đó.
  • Đảm bảo MCP đã được bật trong cài đặt của Claude. Đôi khi cần cấp quyền (cho các máy chủ cục bộ hoặc truy cập hệ thống tập tin).

Các Máy Chủ MCP Phổ Biến Bạn Có Thể Thử Ngay

Dưới đây là một số MCP hữu ích mà bạn có thể bắt đầu với.

1. Notion

Notion không chỉ là một công cụ ghi chú — nó là nơi mà nhiều lập trình viên giữ tài liệu, kế hoạch và thậm chí là cơ sở dữ liệu. Notion MCP cung cấp cho agent của bạn quyền truy cập an toàn vào không gian làm việc Notion của bạn: tài liệu, cơ sở dữ liệu, bình luận, v.v. Rất tuyệt vời để kéo vào các thông số kỹ thuật, tài liệu PRD, nội dung cơ sở kiến thức mà không cần xuất thủ công.

Cấu hình:

json Copy
{
  "mcpServers": {
    "notionMCP": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.notion.com/mcp"]
    }
  }
}

Thử prompt này:

text Copy
“Lấy thông số kỹ thuật yêu cầu sản phẩm từ Notion cho Dự án Alpha và cho tôi một danh sách các nhiệm vụ cần thực hiện.”

👉 Tài liệu tham khảo: Notion MCP GitHub

2. GitHub

GitHub là nơi mà mã nguồn của bạn sống. GitHub MCP cho phép agent của bạn truy cập repos, pull request, và các vấn đề. Hữu ích cho việc xem xét mã, lấy ngữ cảnh mã, tự động tạo changelog, v.v.

Cấu hình:

json Copy
{
  "mcpServers": {
    "github": {
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer YOUR_GITHUB_PAT"
      }
    }
  }
}

Thử prompt này:

text Copy
“Liệt kê các PR đang mở trong repo/backend, xác định các PR thất bại và soạn thảo tóm tắt về các thay đổi cần thiết.”

👉 Tài liệu tham khảo: GitHub MCP

3. Linear

Linear rất phổ biến cho việc theo dõi vấn đề và dự án. Với Linear MCP, agent của bạn có thể lấy thông tin ticket, đọc tiêu chí chấp nhận, cập nhật trạng thái, v.v. Tốt cho việc quản lý quy trình làm việc phát triển.

Cấu hình:

json Copy
{
  "mcpServers": {
    "linear": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.linear.app/sse"]
    }
  }
}

Thử prompt này:

text Copy
“Lấy ticket Linear với ID LNR-123, đọc nội dung và tiêu chí chấp nhận của nó, sau đó tạo một kế hoạch thực hiện.”

👉 Tài liệu tham khảo: Linear MCP

4. Figma

Các tệp thiết kế thường chứa ngữ cảnh quan trọng. Đối với các nhà thiết kế hoặc lập trình viên front-end, Figma MCP cho phép bạn truy vấn tài liệu thiết kế hoặc kéo thông số kỹ thuật trực tiếp.

Cấu hình:

json Copy
{
   "mcpServers": {
     "figmaRemoteMcp": {
       "url": "https://mcp.figma.com/mcp"
     }
   }
 }

Thử prompt này:

text Copy
"Lấy thiết kế màn hình đăng nhập mới nhất từ Figma và tạo một scaffold component React với các kiểu dáng.”

👉 Tài liệu tham khảo: Figma MCP

5. Supabase

Supabase là một dịch vụ backend-as-a-service. Với Supabase MCP, bạn có thể truy vấn cơ sở dữ liệu của mình trực tiếp từ client. Nó cung cấp cho agent quyền truy cập vào sơ đồ cơ sở dữ liệu, dữ liệu bảng và cho phép thực hiện truy vấn. Hữu ích cho việc phát triển backend, quy trình làm việc dữ liệu, v.v.

Cấu hình:

json Copy
{
  "mcpServers": {
    "supabase": {
      "command": "npx",
      "args": [
        "-y",
        "@supabase/mcp-server-supabase",
        "--read-only",
        "--project-ref=<project-ref>"
      ],
      "env": {
        "SUPABASE_ACCESS_TOKEN": "<access-token>"
      }
    }
  }
}

Thử prompt này:

text Copy
“Lấy sơ đồ bảng người dùng từ Supabase, tạo các loại TypeScript và đề xuất các chỉ mục cho các truy vấn trên created_at.”

👉 Tài liệu tham khảo: Supabase MCP

6. Slack

Slack đã trở thành kênh giao tiếp chính cho hầu hết các startup và cộng đồng lập trình viên. Slack MCP có thể kéo thông điệp, thông báo, kiểm tra trạng thái, gửi tin nhắn, v.v. Slack MCP cũng giúp liên kết dữ liệu giao tiếp vào quy trình làm việc của agent.

Cấu hình:

json Copy
{
  "mcpServers": {
    "slack": {
      "command": "npx",
      "args": [
        "-y",
        "slack-mcp-server@latest",
        "--transport",
        "stdio"
      ],
      "env": {
        "SLACK_MCP_XOXP_TOKEN": "xoxp-..."
      }
    }
  }
}

Thử prompt này:

text Copy
“Lấy các thông điệp từ kênh #dev trong Slack trong tuần qua và tóm tắt các vấn đề lớn mà đội đã đề cập; sau đó đề xuất các vấn đề mà tôi nên ưu tiên.”

👉 Tài liệu tham khảo: Slack MCP

7. Hệ thống Tệp

Đôi khi bạn chỉ cần agent của mình truy cập vào các tệp cục bộ. Hệ thống Tệp MCP cho phép agent của bạn truy cập vào các tệp cục bộ — mã nguồn, cấu hình, tài liệu markdown, v.v. Tuyệt vời khi bạn muốn agent tìm kiếm dự án của bạn hoặc đọc các tài liệu cục bộ.

Cấu hình:

json Copy
{
  "mcpServers": {
    "filezop": {
      "type": "stdio",
      "command": "npx",
      "args": ["filezop", "start"]
    }
  }
}

Thử prompt này:

text Copy
“Tìm kiếm các tệp trong thư mục có các trường hợp của TODO và cho tôi một danh sách nhanh về những gì cần phải làm.”

👉 Tài liệu tham khảo: Hệ thống Tệp MCP

8. Playwright

Playwright rất tuyệt vời cho tự động hóa và kiểm tra trình duyệt. Playwright MCP có thể khởi động các phiên trình duyệt và kiểm tra các luồng và agent của bạn có thể điều hướng các trang web, lấy dữ liệu, điền biểu mẫu, kiểm tra giao diện tự động.

Cấu hình:

json Copy
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}

Thử prompt này:

text Copy
“Dùng Playwright MCP để kiểm tra xem biểu mẫu đăng ký trên trang web của tôi có bị hỏng không: điều hướng đến trang đăng ký, mô phỏng đăng ký, báo cáo bất kỳ lỗi JS nào.”

👉 Tài liệu tham khảo: Playwright MCP

9. Postman

Đối với các lập trình viên làm việc với API, Postman MCP cho phép agent của bạn truy cập các bộ sưu tập API trong Postman, xem các điểm cuối, kiểm tra API, môi trường. Hữu ích cho việc kiểm tra, tự động hóa các tác vụ API.

Cấu hình:

json Copy
{
  "mcpServers": {
    "postman_mcp_server": {
      "url": "https://mcp.postman.com/minimal",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

Thử prompt này:

text Copy
“Trong bộ sưu tập Postman của tôi ‘Quản lý Người dùng’, liệt kê tất cả các điểm cuối được gán nhãn ‘admin’ và hiển thị các tham số cần thiết của chúng.”

👉 Tài liệu tham khảo: Postman MCP

10. Peekaboo

Peekaboo rất hữu ích cho việc gỡ lỗi trực quan hoặc các quy trình làm việc cần ngữ cảnh UI. Đây là máy chủ MCP chỉ dành cho macOS, ghi lại ảnh chụp màn hình hoặc việc sử dụng ứng dụng, cho phép các agent AI thấy nội dung UI hoặc màn hình của bạn. Peekaboo MCP rất tiện lợi cho an ninh và khả năng quan sát — quét hoặc giám sát các hệ thống qua client của bạn.

Cấu hình:

json Copy
{
  "mcpServers": {
    "peekaboo": {
      "command": "npx",
      "args": ["-y", "@steipete/peekaboo-mcp@beta"],
      "env": {
        "PEEKABOO_AI_PROVIDERS": "openai/gpt-4.1,ollama/llava:latest",
        "OPENAI_API_KEY": "your-openai-api-key-here"
      }
    }
  }
}

Thử prompt này:

text Copy
"Chạy một quét bảo mật nhanh trên ứng dụng UI. Lấy ảnh chụp màn hình bảng điều khiển của tôi, làm nổi bật tất cả các nút có nhãn trùng lặp, và liệt kê chúng.”

👉 Tài liệu tham khảo: Peekaboo MCP

Tại sao MCP Quan Trọng trong Phát Triển

MCP không chỉ giảm thiểu việc chuyển đổi ngữ cảnh. Nó cho phép trình soạn thảo của bạn, agent của bạn, và quy trình làm việc của bạn nhận thức về công cụ và tài nguyên của bạn. Thay vì kéo tài liệu thủ công, sao chép văn bản, chuyển tab, bạn chỉ cần hỏi agent của mình và nó sẽ đi đến nguồn — Notion, Linear, Supabase, GitHub, v.v.

MCP cho phép agent của bạn làm việc thông minh hơn, nhanh hơn và tích hợp hơn:

  • Tăng tốc độ khởi động cho các dự án mới vì agent đã có ngữ cảnh không gian làm việc của bạn.
  • Giảm thiểu ma sát — ít phải chuyển đổi giữa các công cụ hơn.
  • Tính nhất quán hơn: agent của bạn có thể hoạt động với thông tin cập nhật, tránh tài liệu cũ hoặc lỗi sao chép thủ công.
  • Khả năng mở rộng: khi bạn thêm nhiều công cụ hơn, agent của bạn có thể kéo chúng vào mà không cần thêm mã glue.

Đó là tất cả! Bạn đã học cách kết nối các client MCP như Claude, Cursor và Windsurf đến các máy chủ MCP khác nhau, thiết lập các cấu hình đúng, và thử nghiệm với các MCP phổ biến như Notion, GitHub, Linear, Supabase, Postman, và nhiều hơn nữa.

Trong phần tiếp theo (Xây dựng các MCP của riêng bạn), chúng ta sẽ đi sâu hơn vào cách xây dựng máy chủ MCP của riêng bạn, để bạn có thể tích hợp các công cụ và quy trình làm việc tùy chỉnh của mình.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào