A

mcp-builder

bởi anthropics

Hướng dẫn thực tiễn để thiết kế, xây dựng và đánh giá MCP server bằng Python hoặc Node/TypeScript, kèm tham khảo về thiết kế tool, lựa chọn transport, đặt tên và kiểm thử.

Stars104 N
Yêu thích0
Bình luận0
Danh mụcMCP Server Development
Lệnh cài đặt
npx skills add https://github.com/anthropics/skills --skill mcp-builder
Tổng quan

Overview

mcp-builder là gì

mcp-builder là một skill tập trung vào phát triển dành cho các nhóm đang xây dựng MCP (Model Context Protocol) server. Skill này được thiết kế để giúp lập trình viên tạo ra các server cho phép model sử dụng dịch vụ bên ngoài thông qua những tool được tổ chức bài bản, đồng thời cung cấp hướng dẫn thực tế về kiến trúc, cách đặt tên, transport, mẫu triển khai và đánh giá.

Thay vì đóng vai trò là một server có thể chạy trực tiếp, mcp-builder hoạt động như một bộ hướng dẫn xây dựng dựa trên tài liệu tham chiếu. Trong skill này, tài liệu cốt lõi là SKILL.md, đi kèm các tài liệu bổ trợ trong reference/ và các script hỗ trợ trong scripts/.

Ai nên dùng mcp-builder

Skill này đặc biệt phù hợp với:

  • Lập trình viên đang tạo một mcp-server mới cho API, nền tảng SaaS, hệ thống nội bộ hoặc quy trình làm việc
  • Các nhóm đang cân nhắc giữa triển khai bằng Python FastMCP và Node/TypeScript MCP SDK
  • Những người xây dựng cần cải thiện cách đặt tên mcp-tools, thiết kế schema và mẫu phản hồi cho Claude hoặc các quy trình tương thích Anthropic khác
  • Kỹ sư muốn có một cách lặp lại được để đánh giá chất lượng server bằng các câu hỏi thực tế dựa trên tool

mcp-builder giúp giải quyết những vấn đề gì

mcp-builder tập trung vào những phần của quá trình phát triển MCP server có ảnh hưởng lớn nhất đến khả năng sử dụng trong thực tế:

  • Chọn giữa việc bao phủ API rộng hay cung cấp các tool workflow ở mức cao hơn
  • Đặt tên server và tool sao cho agent có thể phát hiện và sử dụng đáng tin cậy hơn
  • Thiết kế đầu ra vừa phù hợp cho xử lý có cấu trúc vừa dễ đọc với người dùng
  • Chọn transport phù hợp, bao gồm stdio hoặc streamable HTTP
  • Triển khai server bằng Python hoặc Node/TypeScript theo các mẫu MCP SDK được hỗ trợ
  • Kiểm tra xem agent có thực sự hoàn thành được các tác vụ phức tạp với bộ tool hiện có hay không

Repository bao gồm những gì

Thông tin từ repository cho thấy cấu trúc ưu tiên tài liệu, đi kèm tài liệu tham chiếu cho triển khai và công cụ hỗ trợ đánh giá:

  • SKILL.md cho quy trình phát triển MCP server chính
  • reference/mcp_best_practices.md cho hướng dẫn về đặt tên, phân trang, định dạng phản hồi và transport
  • reference/python_mcp_server.md cho các mẫu Python FastMCP
  • reference/node_mcp_server.md cho các mẫu Node/TypeScript MCP SDK
  • reference/evaluation.md cho các nguyên tắc thiết kế đánh giá
  • scripts/evaluation.pyscripts/connections.py để chạy bộ khung đánh giá với MCP server
  • scripts/example_evaluation.xmlscripts/requirements.txt cho các tệp hỗ trợ đánh giá

Vì sao mcp-builder nổi bật

Điểm giá trị của mcp-builder là xem chất lượng server không chỉ đơn thuần là việc expose endpoint. Tài liệu nguồn nêu rõ rằng thành công được đo bằng việc một LLM có thể dùng MCP server để trả lời tốt các tác vụ thực tế hay không. Vì vậy, skill này đặc biệt hữu ích nếu bạn quan tâm đến hiệu quả thật sự của agent, chứ không chỉ là mức độ đầy đủ về mặt kỹ thuật.

Khi nào nên dùng mcp-builder

Hãy dùng mcp-builder khi bạn đang:

  • Lên kế hoạch cho một tích hợp MCP mới từ đầu
  • Tái cấu trúc một server hiện có với tên tool chưa rõ ràng hoặc schema còn yếu
  • So sánh cách triển khai bằng Python và TypeScript
  • Xây dựng checklist chất lượng nội bộ trước khi phát hành một MCP server
  • Tạo các câu hỏi đánh giá để xác minh rằng server hỗ trợ được những workflow thực tế

Khi nào mcp-builder có thể không phải lựa chọn phù hợp nhất

Skill này có thể kém phù hợp hơn nếu bạn cần:

  • Một gói MCP server dùng ngay cho một dịch vụ cụ thể mà không cần phát triển tùy chỉnh
  • Một hướng dẫn API tổng quát không liên quan đến MCP
  • Một sản phẩm hosted hoặc trải nghiệm thiết lập qua GUI

Nên hiểu mcp-builder như một cẩm nang dành cho người xây dựng và công cụ hỗ trợ đánh giá, không phải một tích hợp hoàn chỉnh cho người dùng cuối.

How to Use

Cài đặt mcp-builder

Thêm skill từ repository anthropics/skills:

npx skills add https://github.com/anthropics/skills --skill mcp-builder

Sau khi cài đặt, hãy mở các tệp skill trên máy và đọc theo đúng thứ tự dưới đây để làm quen nhanh nhất.

Bắt đầu với quy trình chính

Hãy bắt đầu với SKILL.md. Đây là tài liệu hướng dẫn chính của skill và giới thiệu quy trình phát triển để tạo ra các MCP server chất lượng cao.

Thông tin từ repository cho thấy quy trình bắt đầu từ khâu nghiên cứu và lập kế hoạch, bao gồm các lựa chọn thiết kế MCP hiện đại như:

  • cân bằng giữa độ bao phủ endpoint toàn diện và các tool workflow chuyên biệt
  • dùng tên tool rõ ràng, mang tính mô tả
  • giữ ngữ cảnh gọn gàng bằng mô tả ngắn gọn cùng hỗ trợ lọc hoặc phân trang

Xem tài liệu best practices trước khi viết code

Tiếp theo, mở reference/mcp_best_practices.md. Đây là cách nhanh nhất để hiểu các quy ước mang tính định hướng mà mcp-builder sử dụng.

Các chủ đề chính được đề cập gồm:

  • quy ước đặt tên server cho Python và Node/TypeScript
  • đặt tên tool theo kiểu snake_case có tiền tố dịch vụ
  • hướng dẫn định dạng phản hồi cho JSON và Markdown
  • kỳ vọng về phân trang như limit, has_more, next_offset, và total_count
  • khuyến nghị về transport, bao gồm streamable HTTP cho sử dụng từ xa và stdio cho tích hợp cục bộ

Tài liệu này đặc biệt hữu ích nếu bạn đang muốn chốt cách MCP server nên được thiết kế ra sao trước khi bắt đầu triển khai.

Chọn hướng triển khai phù hợp

Hướng Python với FastMCP

Nếu bạn xây dựng bằng Python, hãy xem reference/python_mcp_server.md.

Theo thông tin từ repository, tài liệu này bao gồm:

  • cách dùng FastMCP từ MCP Python SDK
  • đăng ký tool bằng decorator với @mcp.tool
  • các mẫu kiểm tra đầu vào dựa trên Pydantic
  • cách đặt tên server theo quy ước {service}_mcp

mcp-builder là lựa chọn phù hợp cho các nhóm Python muốn dùng framework ở mức trừu tượng cao hơn và mô hình đăng ký tool đơn giản, dễ áp dụng.

Hướng Node/TypeScript với MCP SDK

Nếu bạn xây dựng bằng Node hoặc TypeScript, hãy xem reference/node_mcp_server.md.

Thông tin từ repository cho thấy tài liệu này bao gồm:

  • thiết lập McpServer từ @modelcontextprotocol/sdk
  • cách dùng registerTool
  • các mẫu kiểm tra đầu vào dựa trên Zod
  • StreamableHTTPServerTransportStdioServerTransport
  • các mẫu đầu ra có cấu trúc bằng structuredContent

Hướng này rất phù hợp với các nhóm đã triển khai dịch vụ bằng TypeScript hoặc muốn tận dụng trải nghiệm định nghĩa schema tốt với Zod.

Dùng hướng dẫn đánh giá để kiểm tra khả năng sử dụng thực tế

Một trong những phần hữu ích nhất của mcp-builder là trọng tâm vào đánh giá. Hãy đọc reference/evaluation.md khi server của bạn đã đủ hoàn thiện để bắt đầu kiểm thử.

Theo tài liệu trong repository, phần hướng dẫn đánh giá khuyến nghị tạo 10 câu hỏi dễ đọc với con người và có các đặc điểm sau:

  • chỉ đọc
  • độc lập với nhau
  • không phá hủy dữ liệu
  • có thể trả lời bằng một giá trị duy nhất có thể xác minh
  • đủ phức tạp để cần nhiều lần gọi tool

Điều này khiến skill đặc biệt phù hợp với skill-testing như một trường hợp sử dụng bổ trợ. Nó giúp bạn xác minh liệu một LLM có thực sự sử dụng server hiệu quả hay không, thay vì chỉ kiểm tra việc handler của tool có chạy được hay không.

Xem các script hỗ trợ

Thư mục scripts/ cung cấp các thành phần hỗ trợ liên quan đến đánh giá.

Dựa trên thông tin từ repository:

  • scripts/connections.py chứa phần xử lý kết nối gọn nhẹ cho MCP server và hỗ trợ nhiều kiểu kết nối, bao gồm stdio, mã client liên quan đến SSE và mã client streamable HTTP
  • scripts/evaluation.py là bộ khung đánh giá MCP server, chạy các câu hỏi kiểm thử bằng Claude thông qua Anthropic API
  • scripts/example_evaluation.xml cung cấp cấu trúc XML mẫu cho các cặp câu hỏi và câu trả lời
  • scripts/requirements.txt liệt kê các dependency Python cho bộ công cụ đánh giá

Nếu mục tiêu của bạn là benchmark một MCP server với Claude trong quy trình thực tế, đây là những tệp rất đáng để xem kỹ.

Quy trình áp dụng được khuyến nghị

Một cách thực tế để dùng mcp-builder trong dự án mới là:

  1. Cài đặt skill.
  2. Đọc SKILL.md để nắm quy trình tổng thể.
  3. Xem reference/mcp_best_practices.md để chốt cách đặt tên, transport và định dạng phản hồi.
  4. Chọn reference/python_mcp_server.md hoặc reference/node_mcp_server.md tùy theo stack của bạn.
  5. Xây dựng bộ tool đầu tiên với tên gọi và schema rõ ràng.
  6. Tạo các câu hỏi đánh giá thực tế bằng reference/evaluation.md.
  7. Xem scripts/evaluation.py và các tệp liên quan nếu bạn muốn có bộ khung đánh giá tự động.

Lưu ý trước khi quyết định cài đặt

mcp-builder đặc biệt dễ khuyến nghị khi nhóm của bạn cần định hướng và tiêu chuẩn, chứ không chỉ vài đoạn mã mẫu. Nó đặc biệt có giá trị nếu bạn vẫn đang tìm lời giải cho những câu hỏi như:

  • Nên expose các thao tác API thô, các tool workflow, hay cả hai?
  • Nên đặt tên tool thế nào để Claude có thể tìm và dùng chúng một cách tự nhiên?
  • Nên dùng transport nào cho triển khai cục bộ và triển khai từ xa?
  • Làm sao để chứng minh server hoạt động tốt trong các tác vụ agent thực tế?

Nếu đây đúng là những vướng mắc hiện tại của bạn, skill này rất đáng để cài đặt.

FAQ

mcp-builder có phải là một MCP server có thể chạy trực tiếp không?

Không. Dựa trên cấu trúc repository và tài liệu đi kèm, mcp-builder là một skill mang tính hướng dẫn để xây dựng MCP server. Nó có tài liệu tham chiếu và công cụ hỗ trợ đánh giá, nhưng không được giới thiệu như một server dựng sẵn cho một dịch vụ cụ thể.

Cài đặt mcp-builder như thế nào?

Dùng lệnh:

npx skills add https://github.com/anthropics/skills --skill mcp-builder

Sau đó đọc SKILL.md và các tài liệu trong reference/ trên máy của bạn.

mcp-builder có hỗ trợ Python và Node không?

Có. Repository có tài liệu riêng cho cả hai:

  • reference/python_mcp_server.md
  • reference/node_mcp_server.md

Tài liệu Python dùng các mẫu FastMCP, còn tài liệu Node/TypeScript dùng MCP TypeScript SDK.

mcp-builder có hỗ trợ kiểm thử MCP server không?

Có. Đây là một trong những lợi ích thực tế nổi bật nhất của skill. reference/evaluation.md giải thích cách thiết kế các câu hỏi đánh giá sát thực tế, còn scripts/evaluation.py cung cấp bộ khung đánh giá sử dụng Claude thông qua Anthropic API.

mcp-builder đưa ra hướng dẫn gì về transport?

Tài liệu best practices khuyến nghị dùng streamable HTTP cho các kịch bản từ xa và nhiều client, còn stdio phù hợp cho tích hợp cục bộ và dùng qua dòng lệnh. Tài liệu này cũng lưu ý nên tránh SSE và ưu tiên streamable HTTP trong phần best practices.

mcp-builder khuyến nghị quy ước đặt tên nào?

Hướng dẫn trong repository khuyến nghị:

  • tên server Python như {service}_mcp
  • tên server Node/TypeScript như {service}-mcp-server
  • tên tool có tiền tố dịch vụ theo kiểu snake_case, ví dụ github_create_issue

Những quy ước này giúp tăng khả năng được tìm thấy khi có nhiều MCP tool cùng xuất hiện.

mcp-builder có phù hợp với các nhóm production không?

Có, đặc biệt với các nhóm muốn áp dụng quy trình phát triển MCP bài bản hơn. Skill này hữu ích cho việc lập kế hoạch production vì bao quát các mẫu triển khai, lựa chọn transport, tính nhất quán trong đặt tên và tiêu chí đánh giá. Tuy vậy, bạn vẫn cần tự xây dựng và duy trì phần triển khai server thực tế của riêng mình.

Khi nào nên bỏ qua mcp-builder?

Bạn có thể bỏ qua nếu đã có kiến trúc MCP server trưởng thành và chỉ cần một ví dụ code thật hẹp, hoặc nếu bạn hoàn toàn không xây dựng tooling MCP. mcp-builder có giá trị nhất ở giai đoạn thiết kế, triển khai và đánh giá cho các MCP server mới hoặc đang được cải thiện.

Đánh giá & nhận xét

Chưa có đánh giá nào
Chia sẻ nhận xét của bạn
Đăng nhập để chấm điểm và để lại nhận xét cho skill này.
G
0/10000
Nhận xét mới nhất
Đang lưu...