MCP 鸭鸭研究者是一个结合了 DuckDuckGo 搜索功能、网页内容提取和截图功能的 MCP(模型上下文协议)服务器,它成功弥合了信息检索与程序化访问网络内容之间的差距,为用户提供便捷的网络信息获取途径。
# 克隆仓库
git clone https://github.com/yourusername/mcp-duckduckresearch.git
cd mcp-duckduckresearch
# 安装依赖
npm install
# 构建项目
npm run build
%APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json
添加以下配置:{
"mcpServers": {
"duckduckmcp": {
"command": "node",
"args": ["path/to/mcp-duckduckresearch/build/index.js"],
"disabled": false,
"alwaysAllow": []
}
}
}
将 path/to/mcp-duckduckresearch 替换为你实际克隆仓库的路径。
配置完成后,以下工具将在 Roo 代码中可用:
使用 DuckDuckGo 搜索网络。在 Roo 代码中的示例用法:
<server_name>duckduckmcpserver_name>
<tool_name>search_duckduckgotool_name>
<arguments>
{
"query": "typescript best practices",
"options": {
"region": "zh-cn",
"safeSearch": "MODERATE",
"numResults": 10
}
}
arguments>
访问网页并提取其内容为 Markdown 格式:
<server_name>duckduckmcpserver_name>
<tool_name>visit_pagetool_name>
<arguments>
{
"url": "https://example.com",
"takeScreenshot": false
}
arguments>
拍摄当前加载网页的截图:
<server_name>duckduckmcpserver_name>
<tool_name>take_screenshottool_name>
<arguments>
{}
arguments>
以下是搜索信息并访问结果的完整示例:
<server_name>duckduckmcpserver_name>
<tool_name>search_duckduckgotool_name>
<arguments>
{
"query": "人工智能",
"options": {
"region": "zh-cn",
"safeSearch": "MODERATE",
"numResults": 5
}
}
arguments>
<server_name>duckduckmcpserver_name>
<tool_name>visit_pagetool_name>
<arguments>
{
"url": "https://example.com",
"takeScreenshot": true
}
arguments>
项目使用 Vitest 进行测试,测试分为以下几类:
运行测试:
# 运行所有测试
npm test
# 带有覆盖率的测试
npm run test:coverage
git checkout -b feature/amazing-feature)。git commit -m '添加一些精彩的特性')。git push origin feature/amazing-feature)。此项目根据 MIT 许可证授权,有关详细信息,请参阅 LICENSE 文件。