[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-nickclyde--duckduckgo-mcp-server":3,"tool-nickclyde--duckduckgo-mcp-server":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",145895,2,"2026-04-08T11:32:59",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":77,"owner_email":78,"owner_twitter":78,"owner_website":78,"owner_url":79,"languages":80,"stars":89,"forks":90,"last_commit_at":91,"license":92,"difficulty_score":32,"env_os":93,"env_gpu":94,"env_ram":94,"env_deps":95,"category_tags":101,"github_topics":78,"view_count":32,"oss_zip_url":78,"oss_zip_packed_at":78,"status":17,"created_at":102,"updated_at":103,"faqs":104,"releases":135},5553,"nickclyde\u002Fduckduckgo-mcp-server","duckduckgo-mcp-server","A Model Context Protocol (MCP) server that provides web search capabilities through DuckDuckGo, with additional features for content fetching and parsing.","duckduckgo-mcp-server 是一款基于模型上下文协议（MCP）构建的开源服务，旨在为大型语言模型（LLM）提供安全、高效的实时网络搜索能力。它通过集成 DuckDuckGo 搜索引擎，让 AI 助手能够突破训练数据的时间限制，获取最新的互联网信息，并智能提取和解析网页内容。\n\n该工具主要解决了大模型因缺乏实时联网能力而导致的信息滞后问题，同时规避了直接爬取网页时常见的反爬虫限制和速率限制风险。其内置的智能限流机制和完善的错误处理逻辑，确保了搜索过程的稳定性；而专为 LLM 优化的输出格式，则让模型能更准确地理解和使用搜索结果。\n\n它特别适合开发者、AI 研究人员以及希望增强本地或私有部署大模型能力的技术用户。无论是将其接入 Claude Desktop 实现个人智能助手升级，还是集成到自定义的 AI 应用工作流中，duckduckgo-mcp-server 都能提供开箱即用的支持。此外，它还支持灵活配置安全搜索级别和区域语言，满足不同场景下的合规与本地化需求，是构建具备实时感知能力 AI 应用的理想基础设施。","# DuckDuckGo Search MCP Server\n\n[![PyPI version](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fduckduckgo-mcp-server)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fduckduckgo-mcp-server\u002F)\n[![PyPI downloads](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fdm\u002Fduckduckgo-mcp-server)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fduckduckgo-mcp-server\u002F)\n[![Python versions](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fpyversions\u002Fduckduckgo-mcp-server)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fduckduckgo-mcp-server\u002F)\n\nA Model Context Protocol (MCP) server that provides web search capabilities through DuckDuckGo, with additional features for content fetching and parsing.\n\n## Quick Start\n\n```bash\nuvx duckduckgo-mcp-server\n```\n\n## Features\n\n- **Web Search**: Search DuckDuckGo with advanced rate limiting and result formatting\n- **Content Fetching**: Retrieve and parse webpage content with intelligent text extraction\n- **Rate Limiting**: Built-in protection against rate limits for both search and content fetching\n- **Error Handling**: Comprehensive error handling and logging\n- **LLM-Friendly Output**: Results formatted specifically for large language model consumption\n\n## Installation\n\nInstall from PyPI using `uv`:\n\n```bash\nuv pip install duckduckgo-mcp-server\n```\n\n## Usage\n\n### Running with Claude Desktop\n\n1. Download [Claude Desktop](https:\u002F\u002Fclaude.ai\u002Fdownload)\n2. Create or edit your Claude Desktop configuration:\n   - On macOS: `~\u002FLibrary\u002FApplication Support\u002FClaude\u002Fclaude_desktop_config.json`\n   - On Windows: `%APPDATA%\\Claude\\claude_desktop_config.json`\n\nAdd the following configuration:\n\n**Basic Configuration (No SafeSearch, No Default Region):**\n```json\n{\n    \"mcpServers\": {\n        \"ddg-search\": {\n            \"command\": \"uvx\",\n            \"args\": [\"duckduckgo-mcp-server\"]\n        }\n    }\n}\n```\n\n**With SafeSearch and Region Configuration:**\n```json\n{\n    \"mcpServers\": {\n        \"ddg-search\": {\n            \"command\": \"uvx\",\n            \"args\": [\"duckduckgo-mcp-server\"],\n            \"env\": {\n                \"DDG_SAFE_SEARCH\": \"STRICT\",\n                \"DDG_REGION\": \"cn-zh\"\n            }\n        }\n    }\n}\n```\n\n**Configuration Options:**\n- `DDG_SAFE_SEARCH`: SafeSearch filtering level (optional)\n  - `STRICT`: Maximum content filtering (kp=1)\n  - `MODERATE`: Balanced filtering (kp=-1, default if not specified)\n  - `OFF`: No content filtering (kp=-2)\n- `DDG_REGION`: Default region\u002Flanguage code (optional, examples below)\n  - `us-en`: United States (English)\n  - `cn-zh`: China (Chinese)\n  - `jp-ja`: Japan (Japanese)\n  - `wt-wt`: No specific region\n  - Leave empty for DuckDuckGo's default behavior\n\n3. Restart Claude Desktop\n\n### Running with Claude Code\n\n1. Download [Claude Code](https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fclaude-code)\n2. Ensure [`uvenv`](https:\u002F\u002Fgithub.com\u002Frobinvandernoord\u002Fuvenv) is installed and the `uvx` command is available\n3. Add the MCP server: `claude mcp add ddg-search uvx duckduckgo-mcp-server`\n\n### Running with SSE or Streamable HTTP\n\nThe server supports alternative transports for use with other MCP clients:\n\n```bash\n# SSE transport\nuvx duckduckgo-mcp-server --transport sse\n\n# Streamable HTTP transport\nuvx duckduckgo-mcp-server --transport streamable-http\n```\n\nThe default transport is `stdio`, which is used by Claude Desktop and Claude Code.\n\n### Development\n\nFor local development:\n\n```bash\n# Install dependencies\nuv sync\n\n# Run with the MCP Inspector\nmcp dev src\u002Fduckduckgo_mcp_server\u002Fserver.py\n\n# Install locally for testing with Claude Desktop\nmcp install src\u002Fduckduckgo_mcp_server\u002Fserver.py\n\n# Run all tests\nuv run python -m pytest src\u002Fduckduckgo_mcp_server\u002F -v\n\n# Run only unit tests\nuv run python -m pytest src\u002Fduckduckgo_mcp_server\u002Ftest_server.py -v\n\n# Run only e2e tests\nuv run python -m pytest src\u002Fduckduckgo_mcp_server\u002Ftest_e2e.py -v\n```\n\n## Available Tools\n\n### 1. Search Tool\n\n```python\nasync def search(query: str, max_results: int = 10, region: str = \"\") -> str\n```\n\nPerforms a web search on DuckDuckGo and returns formatted results.\n\n**Parameters:**\n- `query`: Search query string\n- `max_results`: Maximum number of results to return (default: 10)\n- `region`: (Optional) Region\u002Flanguage code to override the default. Leave empty to use the configured default region.\n\n**Region Code Examples:**\n- `us-en`: United States (English)\n- `cn-zh`: China (Chinese)\n- `jp-ja`: Japan (Japanese)\n- `de-de`: Germany (German)\n- `fr-fr`: France (French)\n- `wt-wt`: No specific region\n\n**Returns:**\nFormatted string containing search results with titles, URLs, and snippets.\n\n**Example Usage:**\n- Search with default settings: `search(\"python tutorial\")`\n- Search with specific region: `search(\"latest news\", region=\"jp-ja\")` for Japanese news\n\n### 2. Content Fetching Tool\n\n```python\nasync def fetch_content(url: str) -> str\n```\n\nFetches and parses content from a webpage.\n\n**Parameters:**\n- `url`: The webpage URL to fetch content from\n\n**Returns:**\nCleaned and formatted text content from the webpage.\n\n## Features in Detail\n\n### Rate Limiting\n\n- Search: Limited to 30 requests per minute\n- Content Fetching: Limited to 20 requests per minute\n- Automatic queue management and wait times\n\n### Result Processing\n\n- Removes ads and irrelevant content\n- Cleans up DuckDuckGo redirect URLs\n- Formats results for optimal LLM consumption\n- Truncates long content appropriately\n\n### Content Safety\n\n- **SafeSearch Filtering**: Configured at server startup via `DDG_SAFE_SEARCH` environment variable\n  - Controlled by administrators, not modifiable by AI assistants\n  - Filters inappropriate content based on the selected level\n  - Uses DuckDuckGo's official `kp` parameter\n\n- **Region Localization**:\n  - Default region set via `DDG_REGION` environment variable\n  - Can be overridden per search request by AI assistants\n  - Improves result relevance for specific geographic regions\n\n### Error Handling\n\n- Comprehensive error catching and reporting\n- Detailed logging through MCP context\n- Graceful degradation on rate limits or timeouts\n\n## Contributing\n\nIssues and pull requests are welcome! Some areas for potential improvement:\n\n- Enhanced content parsing options\n- Caching layer for frequently accessed content\n- Additional rate limiting strategies\n\n## License\n\nThis project is licensed under the MIT License.\n","# DuckDuckGo 搜索 MCP 服务器\n\n[![PyPI 版本](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fduckduckgo-mcp-server)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fduckduckgo-mcp-server\u002F)\n[![PyPI 下载量](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fdm\u002Fduckduckgo-mcp-server)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fduckduckgo-mcp-server\u002F)\n[![Python 版本](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fpyversions\u002Fduckduckgo-mcp-server)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fduckduckgo-mcp-server\u002F)\n\n一个基于模型上下文协议 (MCP) 的服务器，通过 DuckDuckGo 提供网页搜索功能，并具备内容抓取和解析的附加特性。\n\n## 快速开始\n\n```bash\nuvx duckduckgo-mcp-server\n```\n\n## 特性\n\n- **网页搜索**：使用高级限流和结果格式化功能进行 DuckDuckGo 搜索\n- **内容抓取**：智能提取文本内容并解析网页\n- **限流机制**：内置针对搜索和内容抓取的限流保护\n- **错误处理**：全面的错误处理与日志记录\n- **LLM 友好输出**：结果格式专为大型语言模型优化\n\n## 安装\n\n使用 `uv` 从 PyPI 安装：\n\n```bash\nuv pip install duckduckgo-mcp-server\n```\n\n## 使用方法\n\n### 与 Claude Desktop 配合使用\n\n1. 下载 [Claude Desktop](https:\u002F\u002Fclaude.ai\u002Fdownload)\n2. 创建或编辑您的 Claude Desktop 配置文件：\n   - macOS：`~\u002FLibrary\u002FApplication Support\u002FClaude\u002Fclaude_desktop_config.json`\n   - Windows：`%APPDATA%\\Claude\\claude_desktop_config.json`\n\n添加以下配置：\n\n**基础配置（无安全搜索，无默认地区）：**\n```json\n{\n    \"mcpServers\": {\n        \"ddg-search\": {\n            \"command\": \"uvx\",\n            \"args\": [\"duckduckgo-mcp-server\"]\n        }\n    }\n}\n```\n\n**包含安全搜索和地区配置：**\n```json\n{\n    \"mcpServers\": {\n        \"ddg-search\": {\n            \"command\": \"uvx\",\n            \"args\": [\"duckduckgo-mcp-server\"],\n            \"env\": {\n                \"DDG_SAFE_SEARCH\": \"STRICT\",\n                \"DDG_REGION\": \"cn-zh\"\n            }\n        }\n    }\n}\n```\n\n**配置选项：**\n- `DDG_SAFE_SEARCH`：安全搜索过滤级别（可选）\n  - `STRICT`：最高内容过滤级别（kp=1）\n  - `MODERATE`：平衡过滤级别（kp=-1，未指定时默认）\n  - `OFF`：不进行内容过滤（kp=-2）\n- `DDG_REGION`：默认地区\u002F语言代码（可选，示例如下）\n  - `us-en`：美国（英语）\n  - `cn-zh`：中国（中文）\n  - `jp-ja`：日本（日语）\n  - `wt-wt`：无特定地区\n  - 留空则采用 DuckDuckGo 默认行为\n\n3. 重启 Claude Desktop\n\n### 与 Claude Code 配合使用\n\n1. 下载 [Claude Code](https:\u002F\u002Fgithub.com\u002Fanthropics\u002Fclaude-code)\n2. 确保已安装 [`uvenv`](https:\u002F\u002Fgithub.com\u002Frobinvandernoord\u002Fuvenv)，并且 `uvx` 命令可用\n3. 添加 MCP 服务器：`claude mcp add ddg-search uvx duckduckgo-mcp-server`\n\n### 使用 SSE 或可流式 HTTP 运输\n\n该服务器支持其他 MCP 客户端使用的替代传输方式：\n\n```bash\n# SSE 传输\nuvx duckduckgo-mcp-server --transport sse\n\n# 可流式 HTTP 传输\nuvx duckduckgo-mcp-server --transport streamable-http\n```\n\n默认传输方式为 `stdio`，Claude Desktop 和 Claude Code 即使用此方式。\n\n### 开发\n\n本地开发步骤：\n\n```bash\n# 安装依赖\nuv sync\n\n# 使用 MCP Inspector 运行\nmcp dev src\u002Fduckduckgo_mcp_server\u002Fserver.py\n\n# 本地安装以供 Claude Desktop 测试\nmcp install src\u002Fduckduckgo_mcp_server\u002Fserver.py\n\n# 运行所有测试\nuv run python -m pytest src\u002Fduckduckgo_mcp_server\u002F -v\n\n# 仅运行单元测试\nuv run python -m pytest src\u002Fduckduckgo_mcp_server\u002Ftest_server.py -v\n\n# 仅运行端到端测试\nuv run python -m pytest src\u002Fduckduckgo_mcp_server\u002Ftest_e2e.py -v\n```\n\n## 可用工具\n\n### 1. 搜索工具\n\n```python\nasync def search(query: str, max_results: int = 10, region: str = \"\") -> str\n```\n\n在 DuckDuckGo 上执行网页搜索，并返回格式化的搜索结果。\n\n**参数：**\n- `query`：搜索查询字符串\n- `max_results`：最多返回的结果数量（默认：10）\n- `region`：（可选）用于覆盖默认设置的地区\u002F语言代码。留空则使用配置的默认地区。\n\n**地区代码示例：**\n- `us-en`：美国（英语）\n- `cn-zh`：中国（中文）\n- `jp-ja`：日本（日语）\n- `de-de`：德国（德语）\n- `fr-fr`：法国（法语）\n- `wt-wt`：无特定地区\n\n**返回值：**\n包含标题、URL 和摘要的格式化搜索结果字符串。\n\n**使用示例：**\n- 使用默认设置搜索：`search(\"python 教程\")`\n- 指定地区搜索：`search(\"最新新闻\", region=\"jp-ja\")` 以获取日本新闻\n\n### 2. 内容抓取工具\n\n```python\nasync def fetch_content(url: str) -> str\n```\n\n从网页抓取并解析内容。\n\n**参数：**\n- `url`：要抓取内容的网页 URL\n\n**返回值：**\n清理并格式化后的网页文本内容。\n\n## 功能详解\n\n### 限流机制\n\n- 搜索：限制为每分钟 30 次请求\n- 内容抓取：限制为每分钟 20 次请求\n- 自动队列管理和等待时间\n\n### 结果处理\n\n- 移除广告和无关内容\n- 清理 DuckDuckGo 重定向 URL\n- 格式化结果以适应 LLM 最佳使用\n- 对过长内容进行适当截断\n\n### 内容安全\n\n- **安全搜索过滤**：通过 `DDG_SAFE_SEARCH` 环境变量在服务器启动时配置\n  - 由管理员控制，AI 助手无法修改\n  - 根据所选级别过滤不当内容\n  - 使用 DuckDuckGo 官方的 `kp` 参数\n\n- **地区本地化**：\n  - 默认地区通过 `DDG_REGION` 环境变量设置\n  - 可被 AI 助手在每次搜索请求中覆盖\n  - 提高特定地理区域的结果相关性\n\n### 错误处理\n\n- 全面的错误捕获与报告\n- 通过 MCP 上下文进行详细日志记录\n- 在遇到限流或超时情况时实现优雅降级\n\n## 贡献\n\n欢迎提交问题和拉取请求！一些潜在的改进方向：\n\n- 更强大的内容解析选项\n- 针对频繁访问内容的缓存层\n- 更多的限流策略\n\n## 许可证\n\n本项目采用 MIT 许可证授权。","# DuckDuckGo Search MCP Server 快速上手指南\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：macOS、Windows 或 Linux\n*   **Python 版本**：支持主流 Python 版本（具体兼容版本见 PyPI 页面）\n*   **前置依赖**：推荐安装 [`uv`](https:\u002F\u002Fgithub.com\u002Fastral-sh\u002Fuv) 包管理器，它是运行此工具最便捷的方式。\n    *   安装 uv (macOS\u002FLinux): `curl -LsSf https:\u002F\u002Fastral.sh\u002Fuv\u002Finstall.sh | sh`\n    *   安装 uv (Windows PowerShell): `powershell -c \"irm https:\u002F\u002Fastral.sh\u002Fuv\u002Finstall.ps1 | iex\"`\n*   **客户端软件**（可选）：若需集成到桌面端，请提前下载并安装 [Claude Desktop](https:\u002F\u002Fclaude.ai\u002Fdownload)。\n\n> **提示**：国内开发者若访问 PyPI 或 GitHub 较慢，可配置国内镜像源加速 `uv` 或 `pip` 的下载过程。\n\n## 安装步骤\n\n推荐使用 `uv` 进行全局安装或直接通过 `uvx` 按需运行。\n\n### 方式一：直接运行（无需显式安装）\n使用 `uvx` 可以直接拉取并运行最新版本的服务器，适合快速测试：\n\n```bash\nuvx duckduckgo-mcp-server\n```\n\n### 方式二：正式安装\n若需将其作为项目依赖或固定版本使用：\n\n```bash\nuv pip install duckduckgo-mcp-server\n```\n\n## 基本使用\n\n本工具主要作为 MCP (Model Context Protocol) 服务器运行，需配合支持 MCP 的客户端（如 Claude Desktop 或 Claude Code）使用。\n\n### 1. 集成到 Claude Desktop\n\n编辑 Claude Desktop 的配置文件以注册该服务。\n\n*   **macOS 路径**: `~\u002FLibrary\u002FApplication Support\u002FClaude\u002Fclaude_desktop_config.json`\n*   **Windows 路径**: `%APPDATA%\\Claude\\claude_desktop_config.json`\n\n在配置文件的 `mcpServers` 节点中添加以下内容：\n\n```json\n{\n    \"mcpServers\": {\n        \"ddg-search\": {\n            \"command\": \"uvx\",\n            \"args\": [\"duckduckgo-mcp-server\"]\n        }\n    }\n}\n```\n\n**进阶配置（设置安全搜索与区域）**：\n若需针对中国用户优化搜索结果（如设置中文区域），可添加环境变量：\n\n```json\n{\n    \"mcpServers\": {\n        \"ddg-search\": {\n            \"command\": \"uvx\",\n            \"args\": [\"duckduckgo-mcp-server\"],\n            \"env\": {\n                \"DDG_SAFE_SEARCH\": \"MODERATE\",\n                \"DDG_REGION\": \"cn-zh\"\n            }\n        }\n    }\n}\n```\n\n*   `DDG_REGION`: 设置为 `cn-zh` 可优先获取中文结果。\n*   `DDG_SAFE_SEARCH`: 可选 `STRICT` (严格), `MODERATE` (适中), `OFF` (关闭)。\n\n保存文件后，**重启 Claude Desktop** 即可生效。\n\n### 2. 集成到 Claude Code\n\n如果您使用命令行版的 Claude Code，可通过以下命令添加服务：\n\n```bash\nclaude mcp add ddg-search uvx duckduckgo-mcp-server\n```\n\n### 3. 功能验证\n\n启动客户端后，AI 助手将自动拥有以下两个核心工具能力：\n\n*   **网络搜索 (`search`)**:\n    *   示例指令：“帮我搜索最新的 Python 教程”\n    *   底层调用：`search(query=\"最新的 Python 教程\", max_results=10, region=\"cn-zh\")`\n*   **内容抓取 (`fetch_content`)**:\n    *   示例指令：“读取并总结这个网址的内容：https:\u002F\u002Fexample.com\"\n    *   底层调用：`fetch_content(url=\"https:\u002F\u002Fexample.com\")`\n\n工具会自动处理速率限制、广告过滤及格式清洗，返回适合大模型阅读的结构化文本。","一位数据分析师正在利用 Claude Desktop 快速调研\"2024 年全球可再生能源政策最新变动”，需要即时获取并整合多源网页信息以撰写简报。\n\n### 没有 duckduckgo-mcp-server 时\n- 分析师必须手动在浏览器中搜索，将多个链接复制粘贴给 AI，过程繁琐且容易中断思路。\n- AI 因无法直接联网，只能依赖过时的训练数据回答，导致提供的政策信息滞后甚至错误。\n- 手动复制网页内容时常带入大量广告、导航栏等噪音，需要人工二次清洗才能使用。\n- 频繁搜索容易触发普通爬虫的速率限制，导致 IP 被暂时封锁，工作流被迫暂停。\n- 不同来源的格式混乱，分析师需花费大量时间统一文本结构以便后续处理。\n\n### 使用 duckduckgo-mcp-server 后\n- 分析师直接在对话中指令 Claude 调用 duckduckgo-mcp-server 进行搜索，工具自动返回最新结果，实现无缝衔接。\n- duckduckgo-mcp-server 实时抓取 DuckDuckGo 数据，确保 AI 基于当下的政策新闻生成准确报告。\n- 内置的智能解析功能自动提取正文核心内容，过滤掉无关杂质，直接输出纯净文本。\n- 工具自带的速率限制保护机制有效防止请求过载，保障长时间连续调研任务的稳定性。\n- 返回结果专为大模型优化，格式统一规范，可直接用于生成结构化表格或摘要文档。\n\nduckduckgo-mcp-server 通过将实时搜索与智能解析能力原生集成到 AI 工作流中，彻底消除了信息获取的延迟与噪音，让知识调研变得即时且精准。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnickclyde_duckduckgo-mcp-server_0512ab03.png","nickclyde","Nick Clyde","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fnickclyde_afd74049.png","Software engineer and proud dad to identical twin girls!","@skylight-hq ","Sacramento, CA",null,"https:\u002F\u002Fgithub.com\u002Fnickclyde",[81,85],{"name":82,"color":83,"percentage":84},"Python","#3572A5",98.5,{"name":86,"color":87,"percentage":88},"Dockerfile","#384d54",1.5,956,151,"2026-04-08T03:53:01","MIT","macOS, Windows","未说明",{"notes":96,"python":97,"dependencies":98},"该工具是一个基于 Model Context Protocol (MCP) 的 DuckDuckGo 搜索服务器。推荐使用 'uv' 包管理器进行安装和运行 (命令：uvx duckduckgo-mcp-server)。主要集成环境为 Claude Desktop 和 Claude Code。可通过环境变量 DDG_SAFE_SEARCH 和 DDG_REGION 配置安全搜索级别和默认区域。开发模式下需要安装 pytest 进行测试。","未说明 (通过 PyPI badge 推断支持主流版本，具体需查看 PyPI 页面)",[99,100],"uv","duckduckgo-search (隐含依赖)",[13,52],"2026-03-27T02:49:30.150509","2026-04-08T22:43:35.354859",[105,110,115,120,125,130],{"id":106,"question_zh":107,"answer_zh":108,"source_url":109},25198,"遇到“未找到搜索结果”或触发 DuckDuckGo 机器人检测（Bot detection）怎么办？","这是 DuckDuckGo 服务端的行为，无法在该项目层面直接修复。服务器已内置速率限制器（搜索每分钟 30 次，内容获取每分钟 20 次）以避免触发检测。如果遇到此问题，请尝试：\n1. 降低请求频率；\n2. 等待几分钟后再重试；\n3. 更换 IP 地址（例如使用 VPN 或切换网络），因为检测机制可能会暂时锁定你的 IP。","https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server\u002Fissues\u002F19",{"id":111,"question_zh":112,"answer_zh":113,"source_url":114},25199,"运行 fetch_content 时报错：module 'httpx' has no attribute 'TimeoutError' 如何解决？","这是一个已知的代码兼容性问题。发布的 PyPI 包中错误地使用了 `httpx.TimeoutError`，而正确的异常类应为 `httpx.TimeoutException`。\n解决方案：不要使用默认的 PyPI 版本，直接从 GitHub 主分支安装以获取修复后的版本：\n```bash\nuvx --from git+https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server duckduckgo-mcp-server\n```\n或者手动修改本地代码，将 `httpx.TimeoutError` 替换为 `httpx.TimeoutException`。该修复已包含在 v0.1.2 及更高版本中。","https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server\u002Fissues\u002F18",{"id":116,"question_zh":117,"answer_zh":118,"source_url":119},25200,"如何配置代理（Proxy）支持？","该项目默认支持代理，无需额外配置代码。底层使用的 httpx 客户端会自动读取标准环境变量。\n只需在运行服务器前设置以下环境变量即可：\n```bash\nexport HTTPS_PROXY=http:\u002F\u002Fyour-proxy:8080\nexport HTTP_PROXY=http:\u002F\u002Fyour-proxy:8080\n```\n如果在 Docker 中使用，可以通过 `-e` 参数传递：\n```bash\ndocker run -e HTTPS_PROXY=http:\u002F\u002FPROXY.FQDN:8080 -e HTTP_PROXY=http:\u002F\u002FPROXY.FQDN:8080 ... \n```\n如需信任环境变量，确保 `HTTPX_TRUST_ENV` 设置为 1（通常默认为真）。","https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server\u002Fissues\u002F4",{"id":121,"question_zh":122,"answer_zh":123,"source_url":124},25201,"如何在 Docker 或 Kubernetes 中将服务器绑定到 0.0.0.0 以便外部访问？","默认情况下服务器绑定到 127.0.0.1，容器内无法外部访问。虽然项目本身可能未直接暴露 host 参数，但可以通过 `mcp-proxy` 包装运行来解决：\n```bash\nFASTMCP_PORT=8001 uvx mcp-proxy --named-server-config config.json --allow-origin \"*\" --host 0.0.0.0 --port 8001 --stateless\n```\n这将允许服务器监听所有接口（0.0.0.0），从而在 Docker 或 Kubernetes 环境中接受外部连接。注意：直接设置某些环境变量可能无效，建议使用上述 proxy 方式。","https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server\u002Fissues\u002F32",{"id":126,"question_zh":127,"answer_zh":128,"source_url":129},25202,"如何在 Claude Code 中安装和配置此 MCP 服务器？","Claude Code 的安装说明已包含在项目的 README 文件中。通常需要使用类似以下的命令进行添加（具体请参考最新 README）：\n```bash\nclaude mcp add ...\n```\n由于文档已通过 PR #11 更新，请直接查阅仓库根目录下的 README.md 文件获取针对 Claude Code 的具体配置步骤和命令示例。","https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server\u002Fissues\u002F27",{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},25203,"为什么搜索功能正常但获取网页内容（fetch_content）时会报错？","这通常是因为安装了旧版本的 PyPI 包，其中存在 `httpx` 异常处理的 Bug（见错误：`module 'httpx' has no attribute 'TimeoutError'`）。\n搜索功能不依赖该异常处理逻辑，因此正常工作；而 `fetch_content` 会触发该错误。\n解决方法是升级到修复后的版本：\n```bash\nuvx --from git+https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server duckduckgo-mcp-server\n```\n这将安装包含正确 `httpx.TimeoutException` 处理的最新代码。","https:\u002F\u002Fgithub.com\u002Fnickclyde\u002Fduckduckgo-mcp-server\u002Fissues\u002F7",[]]