SDK Đại lý OpenAI hiện hỗ trợ MCP (Giao thức Ngữ cảnh Mô hình), một bước ngoặt cho khả năng tương tác của AI. Điều này cho phép các nhà phát triển kết nối các mô hình AI với các công cụ và nguồn dữ liệu bên ngoài hiệu quả. Trong hướng dẫn kỹ thuật này, chúng tôi sẽ hướng dẫn bạn xây dựng máy chủ MCP với SDK Đại lý OpenAI để nâng cao các ứng dụng AI của bạn.
Máy chủ MCP là gì và vì sao sử dụng chúng với SDK Đại lý OpenAI?
MCP (Giao thức Ngữ cảnh Mô hình) là một giao thức mở tiêu chuẩn hóa cách các ứng dụng cung cấp ngữ cảnh cho các mô hình ngôn ngữ lớn (LLMs). Hãy nghĩ về MCP như một cổng USB-C cho các ứng dụng AI - nó hoạt động như một kết nối phổ quát cho phép các mô hình AI tương tác với các nguồn dữ liệu và công cụ khác nhau một cách liền mạch.
SDK Đại lý OpenAI tích hợp các máy chủ MCP để cho phép các đại lý truy cập các công cụ và dữ liệu bên ngoài. Việc sử dụng các máy chủ MCP đảm bảo sự tương tác mượt mà giữa đại lý AI của bạn và cả các nguồn tài nguyên từ xa và địa phương. Sự tích hợp này giảm bớt độ phức tạp trong việc gọi công cụ và nâng cao chức năng của đại lý.
Dưới đây là một số ví dụ mà bạn có thể xây dựng với các kết hợp OpenAI + máy chủ MCP:
🕵️♂️ đã sử dụng gitingest để tải xuống tất cả các tài liệu từ @OpenAIDevs SDK Đại lý
— Dan Mac (@daniel_mac8) 23 tháng 3, 2025
xuất sắc cho việc cung cấp cho Đại lý Lập trình AI của bạn như là ngữ cảnh nếu xây dựng với SDK Đại lý OpenAI
tải xuống từ liên kết GitHub bên dưới ⬇️ pic.twitter.com/0szZ43wMTv
Các bước để sử dụng tích hợp OpenAI MCP
Điều kiện tiên quyết để xây dựng các máy chủ MCP với SDK Đại lý OpenAI
Trước khi bắt đầu, hãy đảm bảo bạn đã có:
- Cài đặt Python 3.8 hoặc cao hơn trên hệ thống của bạn
- Cài đặt SDK Đại lý OpenAI qua pip:
pip install openai-agents
- Cài đặt Node.js để chạy các lệnh máy chủ MCP như
npx
cho một số ví dụ - Thư mục dự án với môi trường ảo đã khởi tạo để quản lý dependency
- Hiểu biết cơ bản về lập trình bất đồng bộ trong Python, vì SDK sử dụng async/await
Bước 1: Thiết lập môi trường phát triển của bạn cho các máy chủ MCP
# Tạo một thư mục mới cho dự án của bạn
mkdir mcp-agent-project && cd mcp-agent-project
# Khởi tạo một môi trường ảo Python
python -m venv venv && source venv/bin/activate
# Cài đặt các phụ thuộc cần thiết
pip install openai-agents pyyaml
Tạo một tệp cấu hình có tên mcp_agent.config.yaml
để định nghĩa các máy chủ MCP. Tệp cấu hình này trỏ đến một máy chủ MCP trên filesystem để truy cập các tệp local.
Bước 2: Hiểu các loại máy chủ MCP trong SDK Đại lý OpenAI
Các máy chủ MCP có hai loại theo tiêu chuẩn MCP:
- máy chủ stdio: Chạy cục bộ như một quy trình con của ứng dụng của bạn
- máy chủ HTTP qua SSE: Hoạt động từ xa và kết nối qua một URL
SDK Đại lý OpenAI cung cấp hai lớp để xử lý các máy chủ này:
MCPServerStdio
: Dành cho máy chủ dựa trên quy trình con cục bộMCPServerSse
: Dành cho máy chủ HTTP qua SSE từ xa
Chọn loại máy chủ dựa trên kiến trúc ứng dụng và yêu cầu độ trễ của bạn. Các máy chủ stdio lý tưởng cho phát triển cục bộ, trong khi các máy chủ SSE thích hợp hơn cho các hệ thống phân tán.
Bước 3: Kết nối một máy chủ MCP với Đại lý OpenAI của bạn
Nhập các lớp cần thiết từ SDK Đại lý OpenAI và định nghĩa máy chủ MCP của bạn:
from openai_agents import Agent, MCPServerStdio
# Định nghĩa đường dẫn đến các tệp mẫu của bạn
samples_dir = "/path/to/your/files"
# Sử dụng trình quản lý ngữ cảnh bất đồng bộ để khởi tạo máy chủ
async with MCPServerStdio(
params={
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", samples_dir],
}
) as server:
# Liệt kê các công cụ mà máy chủ MCP cung cấp
tools = await server.list_tools()
# Tạo một đại lý sử dụng máy chủ MCP
agent = Agent(
name="Assistant",
instructions="Sử dụng các công cụ filesystem để giúp người dùng với các tác vụ của họ.",
mcp_servers=[server]
)
# Chạy đại lý
result = await agent.run("Liệt kê các tệp trong thư mục.")
Cài đặt này cho phép đại lý sử dụng các công cụ filesystem một cách linh hoạt trong quá trình thực hiện.
Bước 4: Tối ưu hóa hiệu suất với việc lưu cache công cụ
Các máy chủ MCP gọi list_tools()
mỗi khi một đại lý chạy, điều này có thể gây ra độ trễ, đặc biệt với các máy chủ từ xa. Để giảm thiểu chi phí này, bạn có thể kích hoạt việc lưu cache công cụ:
# Kích hoạt lưu cache khi khởi tạo máy chủ
async with MCPServerStdio(
params={
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", samples_dir],
},
cache_tools_list=True # Kích hoạt lưu cache
) as server:
# Danh sách công cụ sẽ được lưu cache sau lần gọi đầu tiên
tools = await server.list_tools()
Các yếu tố quan trọng cần xem xét khi lưu cache:
- Chỉ sử dụng lưu cache nếu bạn chắc chắn danh sách công cụ sẽ không thay đổi trong thời gian chạy
- Nếu các công cụ cần được cập nhật, hãy làm không hợp lệ cache:
await server.invalidate_tools_cache()
- Lưu cache hoạt động cho cả hai máy chủ stdio và SSE, với nhiều lợi ích về hiệu suất hơn cho các máy chủ từ xa
Bước 5: Thực hiện tích hợp máy chủ MCP với quy trình làm việc của đại lý của bạn
Để tích hợp hoàn toàn các máy chủ MCP với đại lý của bạn:
from openai_agents import Agent, MCPServerStdio, MCPServerSse
async def run_agent_with_mcp_servers():
# Khởi tạo máy chủ MCP stdio cục bộ
local_server = MCPServerStdio(
params={
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "./local_files"],
},
cache_tools_list=True
)
# Khởi tạo máy chủ MCP SSE từ xa (nếu cần)
remote_server = MCPServerSse(
url="",
cache_tools_list=True
)
async with local_server, remote_server:
# Tạo đại lý với cả hai máy chủ
agent = Agent(
name="MultiToolAgent",
instructions="Sử dụng các công cụ có sẵn để hoàn thành nhiệm vụ.",
mcp_servers=[local_server, remote_server]
)
# Chạy đại lý
result = await agent.run("Hoàn thành nhiệm vụ đã yêu cầu bằng các công cụ thích hợp.")
return result
Cách tiếp cận này cung cấp cho đại lý của bạn quyền truy cập vào cả công cụ cục bộ và từ xa thông qua các giao diện MCP tiêu chuẩn hóa.
Bước 6: Gỡ lỗi và theo dõi các máy chủ MCP của bạn
Các chiến lược gỡ lỗi và theo dõi hiệu quả bao gồm:
- Kiểm tra nhật ký máy chủ MCP để tìm lỗi trong quá trình thực thi công cụ
- Sử dụng bảng điều khiển theo dõi của SDK Đại lý OpenAI để theo dõi các cuộc gọi công cụ
- Kiểm tra các trường hợp biên như tên công cụ không hợp lệ hoặc thời gian ngừng hoạt động của máy chủ để đảm bảo tính ổn định
- Theo dõi độ trễ khi sử dụng máy chủ SSE từ xa và tối ưu hóa với lưu cache nếu cần
- Khai thác chức năng theo dõi tích hợp của SDK, tự động ghi lại:

- Các cuộc gọi đến máy chủ MCP để liệt kê công cụ
- Thông tin liên quan đến MCP về các cuộc gọi hàm
Hơn nữa, bạn cũng nên xem xét việc sử dụng một công cụ kiểm tra API Tất cả trong Một để làm cho chu kỳ phát triển API của bạn dễ dàng hơn.
Apidog là một công cụ mạnh mẽ giúp đơn giản hóa phát triển API, là một người bạn đồng hành tuyệt vời khi xây dựng các máy chủ MCP với SDK Đại lý OpenAI. Vì các máy chủ MCP thường liên quan đến việc tương tác với APIs—dù cho là cho các máy chủ HTTP từ xa qua SSE hay thử nghiệm các cuộc gọi công cụ—Apidog có thể nâng cao quy trình làm việc của bạn.

Kết luận
Xây dựng các máy chủ MCP với SDK Đại lý OpenAI mở ra những khả năng mới cho việc nâng cao các đại lý AI với các công cụ và nguồn dữ liệu bên ngoài. Giao diện MCP tiêu chuẩn hóa giúp việc tích hợp trở nên đơn giản và đáng tin cậy hơn trên các môi trường khác nhau.
Bằng cách làm theo hướng dẫn này, bạn có thể tạo ra các đại lý mạnh mẽ khai thác cả tài nguyên cục bộ và từ xa thông qua Giao thức Ngữ cảnh Mô hình. Khi hệ sinh thái MCP tiếp tục phát triển, các đại lý của bạn sẽ có khả năng truy cập vào một bộ công cụ và khả năng ngày càng mở rộng.
Để biết thêm ví dụ và tài liệu chi tiết, hãy truy cập tài liệu chính thức về MCP của SDK Đại lý OpenAI. Sự hỗ trợ của SDK cho MCP đại diện cho một bước tiến quan trọng trong việc làm cho các đại lý AI mạnh mẽ hơn và kết nối với thế giới kỹ thuật số.