告別複雜代碼!Python輕鬆實現你的第一個AI Agent
從上一篇文章中,學完之後已經可以通過創建agent來跟大模型對話,並且在創建agent的時候,發現是可以指定tools的。那麼今天來學習一下怎麼創建tools。這裏會要用到mcp協議。讓我們先來看一下MCP是什麼?
MCP(Model Context Protocol,模型上下文協議) 是由Anthropic於2024年11月推出的開放標準協議,旨在統一大語言模型(LLM)與外部數據源、工具之間的通信方式。
MCP支持兩種傳輸模式:
- STDIO:本地進程間通信,適用於同一設備
- HTTP + SSE:遠程通信,支持跨網絡訪問
後面推出了Streamable HTTP用來替代傳統HTTP+SSE,更靈活高效。
接下來推薦幾個mcp servers的地址:
https://www.mcpworld.com/
https://mcp.so/
https://mcpservers.org/
接下來看看通過python是怎麼創建一個mcp的工具:
import asynciofrom langchain_mcp_adapters.client import MultiServerMCPClient
def get_zhipu_web_search_mcp_tools(): client = MultiServerMCPClient( { "search": { "url": "https://open.bigmodel.cn/api/mcp/web_search/sse?Authorization=2a2760c8282d48a9a5d46952a801f906.S8rgYPM5tP9yszZB", "transport": "sse", } } ) tools = asyncio.run(client.get_tools()) return tools #接下來在創建agent的時候就可以指定使用tools了model = get_default_model()
agent = create_agent( model=model, tools=get_zhipu_web_search_mcp_tools(), system_prompt="You are a helpful assistant")
配合UI頁面調用的話效果如下:在與AI對話的時候,會自動的幫我們去調用工具進行搜索。
更多的mcp工具也可以從上面的幾個網站上去搜索進行使用,關於在langchain裏面用mcp tools,也可以參考官網的一些文檔:
https://docs.langchain.com/oss/javascript/langchain/mcp#use-mcp-tools