关于 DuckDuckGo Search with MCP Agent
DuckDuckGo Search with MCP Agent 是一个 Python 示例,将 DuckDuckGo 搜索与 LangChain Groq LLM Agent 结合。它通过 MCP 异步连接搜索服务并返回结果。
主要功能
- 01集成 DuckDuckGo MCP 服务
- 02使用 Groq LLM 推理
- 03异步 Python 执行
- 04模块化示例结构
适用场景
- 01运行 Agent 辅助的 DuckDuckGo 搜索
- 02了解 MCP 客户端与服务端集成
MCP 相关
示例启动 MCP 客户端并连接 duckduckgo-mcp-server,由其提供 DuckDuckGo 搜索能力。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
使用 MCP Agent 进行 DuckDuckGo 搜索
本项目演示如何将 DuckDuckGo MCP Server 与 LangChain Groq LLM Agent 搭配使用,通过 MCP(Micro Component Protocol)执行智能搜索任务。
功能
- MCP 服务集成(DuckDuckGo 搜索)
- 使用 Groq LLM(
deepseek-r1-distill-llama-70b)进行推理 - 异步 Python 执行
- 简单且模块化
安装
- 克隆代码仓库:
git clone https://github.com/alihassanml/Duckduckgo-with-MCP.git
cd Duckduckgo-with-MCP
- 安装依赖项:
pip install -r requirements.txt
(在 requirements.txt 中添加 langchain_groq、python-dotenv 等库。)
- 设置
.env文件:
GROQ_API_KEY=your_groq_api_key_here
- 安装 MCP 服务:
uvx -y duckduckgo-mcp-server
(请确保已安装 uvx。如果没有,请先安装。)
使用方法
运行主脚本:
python main.py
这将:
- 启动 MCP 客户端
- 连接到
duckduckgo-mcp-server - 使用 Groq LLM 执行智能搜索
- 打印结果
示例代码
import asyncio
import os
from dotenv import load_dotenv
from langchain_groq import ChatGroq
from mcp_use import MCPAgent, MCPClient
async def main():
load_dotenv()
config = {
"mcpServers": {
"ddg-search": {
"command": "uvx",
"args": ["-y", "duckduckgo-mcp-server"]
}
}
}
client = MCPClient.from_dict(config)
llm = ChatGroq(model="deepseek-r1-distill-llama-70b")
agent = MCPAgent(llm=llm, client=client, max_steps=30)
result = await agent.run("Find the best restaurant in San Francisco")
print(f"\nResult: {result}")
if __name__ == "__main__":
asyncio.run(main())
资源
许可证
本项目采用 MIT 许可证。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。