Hướng dẫn này cho bạn biết cách kết nối máy chủ MCP Kiến thức dành cho nhà phát triển từ xa với các khung tác nhân AI tuỳ chỉnh được tạo bằng LangChain, LlamaIndex và AutoGen.
Bằng cách kết nối các tác nhân AI tuỳ chỉnh với máy chủ Giao thức ngữ cảnh mô hình (MCP) từ xa, các tác nhân của bạn có thể tìm kiếm và truy xuất một cách linh hoạt tài liệu chính thức và mới nhất dành cho nhà phát triển của Google, bao gồm Google Cloud, Firebase, Android, Nền tảng Google Maps, Chrome và nhiều nền tảng khác.
Điều kiện tiên quyết
Hoàn tất các điều kiện tiên quyết sau đây trước khi bắt đầu:
- Tạo khoá Developer Knowledge API: bật Developer Knowledge API và tạo khoá API trong dự án trên đám mây của Google bằng cách làm theo hướng dẫn thiết lập khoá API.
- Tạo khoá Gemini API: tạo khoá API trong Google AI Studio để xác thực các mô hình Gemini hoặc dùng lại khoá API Google Cloud nếu Generative Language API được bật trên khoá đó.
Đặt các biến môi trường: đặt khoá API làm biến môi trường trong thiết bị đầu cuối:
export DEVELOPERKNOWLEDGE_API_KEY="YOUR_API_KEY" export GEMINI_API_KEY="YOUR_GEMINI_API_KEY"Cài đặt Python: xác minh rằng môi trường phát triển của bạn sử dụng Python 3.10 trở lên.
Kết nối bằng LangChain
Các ứng dụng LangChain có thể kết nối với các máy chủ MCP HTTP từ xa bằng cách sử dụng gói langchain-mcp-adapters hoặc các phương thức truyền tải máy khách MCP tiêu chuẩn.
Cài đặt các phần phụ thuộc
Cài đặt các gói Python cần thiết cho LangChain, Gemini và MCP:
pip install langgraph langchain-google-genai langchain-mcp-adapters mcp
Định cấu hình tác nhân LangChain
Ví dụ sau đây kết nối máy chủ MCP Kiến thức dành cho nhà phát triển với một tác nhân LangChain ReAct do Gemini cung cấp. Tập lệnh khởi tạo MultiServerMCPClient bằng cách sử dụng phương thức truyền streamable_http, đính kèm tiêu đề HTTP X-Goog-Api-Key và tải các công cụ từ xa vào create_react_agent:
import asyncio
import os
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain_mcp_adapters.client import MultiServerMCPClient
from langgraph.prebuilt import create_react_agent
async def run_langchain_agent():
api_key = os.environ.get("DEVELOPERKNOWLEDGE_API_KEY")
if not api_key:
raise ValueError(
"DEVELOPERKNOWLEDGE_API_KEY environment variable is required."
)
gemini_api_key = os.environ.get("GEMINI_API_KEY")
if not gemini_api_key:
raise ValueError("GEMINI_API_KEY environment variable is required.")
# Configure remote MCP connection for Developer Knowledge
client = MultiServerMCPClient(
{
"google-developer-knowledge": {
"url": "https://developerknowledge.googleapis.com/mcp",
"transport": "streamable_http",
"headers": {
"X-Goog-Api-Key": api_key,
},
}
}
)
tools = await client.get_tools()
# Initialize Gemini model and ReAct agent
llm = ChatGoogleGenerativeAI(
model="gemini-2.5-flash",
temperature=0,
google_api_key=gemini_api_key,
)
agent = create_react_agent(llm, tools)
# Run agent query
response = await agent.ainvoke(
{
"messages": [
(
"user",
"How do I list Google Cloud Storage buckets in Python?",
)
]
}
)
print("\nAgent Response:\n", response["messages"][-1].content)
if __name__ == "__main__":
asyncio.run(run_langchain_agent())
Kết nối bằng LlamaIndex
LlamaIndex hỗ trợ tích hợp máy chủ MCP thông qua thông số kỹ thuật của công cụ, cho phép các tác nhân truy xuất truy vấn tài liệu Developer Knowledge trong quá trình suy luận.
Cài đặt các phần phụ thuộc
Cài đặt các gói LlamaIndex cốt lõi, Gemini LLM và tích hợp các công cụ MCP:
pip install llama-index llama-index-tools-mcp llama-index-llms-google-genai
Định cấu hình tác nhân LlamaIndex
Ví dụ sau đây kết nối với máy chủ MCP từ xa bằng BasicMCPClient, gói máy chủ này bằng McpToolSpec và liên kết các công cụ đã truy xuất với LlamaIndex FunctionAgent dựa trên Gemini:
import asyncio
import os
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.google_genai import GoogleGenAI
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec
async def run_llamaindex_agent():
api_key = os.environ.get("DEVELOPERKNOWLEDGE_API_KEY")
if not api_key:
raise ValueError(
"DEVELOPERKNOWLEDGE_API_KEY environment variable is required."
)
gemini_api_key = os.environ.get("GEMINI_API_KEY")
if not gemini_api_key:
raise ValueError("GEMINI_API_KEY environment variable is required.")
# Connect to the remote Developer Knowledge MCP endpoint
mcp_client = BasicMCPClient(
"https://developerknowledge.googleapis.com/mcp",
headers={"X-Goog-Api-Key": api_key},
)
mcp_tool_spec = McpToolSpec(client=mcp_client)
tools = await mcp_tool_spec.to_tool_list_async()
# Create LlamaIndex FunctionAgent with Gemini
llm = GoogleGenAI(model="gemini-2.5-flash", api_key=gemini_api_key)
agent = FunctionAgent(tools=tools, llm=llm)
# Query the agent
response = await agent.run(
"What are the default limits and quotas for the Developer Knowledge"
" API?"
)
print("\nAgent Response:\n", str(response))
if __name__ == "__main__":
asyncio.run(run_llamaindex_agent())
Kết nối bằng AutoGen
Các tác nhân Microsoft AutoGen có thể tương tác với các máy chủ MCP từ xa bằng cách sử dụng tiện ích autogen-ext MCP, cho phép cộng tác nhiều tác nhân với quyền truy cập vào tài liệu chính thức dành cho nhà phát triển của Google.
Cài đặt các phần phụ thuộc
Cài đặt các gói tiện ích MCP và lõi AutoGen:
pip install autogen-agentchat "autogen-ext[mcp,openai]"
Định cấu hình tác nhân AutoGen
Ví dụ sau đây kết nối với máy chủ MCP từ xa bằng StreamableHttpServerParams và đăng ký các công cụ Kiến thức dành cho nhà phát triển bằng AutoGen AssistantAgent do Gemini hỗ trợ:
import asyncio
import os
from autogen_agentchat.agents import AssistantAgent
from autogen_agentchat.teams import RoundRobinGroupChat
from autogen_ext.models.openai import OpenAIChatCompletionClient
from autogen_ext.tools.mcp import StreamableHttpServerParams, mcp_server_tools
async def run_autogen_agent():
api_key = os.environ.get("DEVELOPERKNOWLEDGE_API_KEY")
if not api_key:
raise ValueError(
"DEVELOPERKNOWLEDGE_API_KEY environment variable is required."
)
gemini_api_key = os.environ.get("GEMINI_API_KEY")
if not gemini_api_key:
raise ValueError("GEMINI_API_KEY environment variable is required.")
# Retrieve remote MCP tools for Developer Knowledge by using Streamable HTTP
server_params = StreamableHttpServerParams(
url="https://developerknowledge.googleapis.com/mcp",
headers={"X-Goog-Api-Key": api_key},
)
dk_tools = await mcp_server_tools(server_params)
# Initialize model client with Gemini and assistant agent
model_client = OpenAIChatCompletionClient(
model="gemini-2.5-flash",
api_key=gemini_api_key,
base_url="https://generativelanguage.googleapis.com/v1beta/openai/",
)
developer_assistant = AssistantAgent(
name="google_docs_assistant",
model_client=model_client,
tools=dk_tools,
system_message=(
"You are a developer assistant specializing in Google APIs and"
" SDKs. Use Developer Knowledge tools to retrieve verified"
" documentation."
),
)
# Run query with team runner
team = RoundRobinGroupChat([developer_assistant], max_turns=5)
stream = team.run_stream(
task=(
"Explain how to configure Firebase Cloud Messaging topic"
" subscriptions."
)
)
async for message in stream:
print(message)
if __name__ == "__main__":
asyncio.run(run_autogen_agent())
Các phương pháp hay nhất để tích hợp tác nhân
Khi tạo các tác nhân AI tuỳ chỉnh bằng máy chủ MCP Kiến thức dành cho nhà phát triển, hãy tuân thủ các nguyên tắc sau:
- Tinh chỉnh cụm từ tìm kiếm: đưa tên sản phẩm cụ thể và từ khoá có liên quan vào cụm từ tìm kiếm bằng ngôn ngữ tự nhiên thay vì các thuật ngữ chung, vì các công cụ
search_documentsvàanswer_querysẽ so khớp dựa trên ngữ nghĩa của cụm từ tìm kiếm. - Quản lý mã thông báo trong cửa sổ ngữ cảnh: sử dụng
answer_queryđể nhận câu trả lời trực tiếp từ kho tài liệu và tránh yêu cầu nội dung toàn trang bằngget_documentstrừ phi thông tin chi tiết về đoạn trích từsearch_documentslà không đủ. - Bảo mật khoá API: lưu trữ khoá API Kiến thức dành cho nhà phát triển và khoá Gemini API trong các biến môi trường hoặc hệ thống quản lý bí mật tiêu chuẩn, đồng thời không bao giờ mã hoá cứng thông tin đăng nhập trong mã.
Bước tiếp theo
Khám phá các tài nguyên sau để tìm hiểu thêm về máy chủ MCP Kiến thức dành cho nhà phát triển:
- Đọc hướng dẫn lắp đặt đầy đủ về máy chủ MCP trong phần Kiến thức dành cho nhà phát triển.
- Xem xét các miền ngữ liệu có sẵn.
- Tìm hiểu cách tạo câu trả lời từ tài liệu.