evo-scry
MCP服务器,用于通过直接谷歌和DuckDuckGo HTML抓取进行互联网搜索,并采用人工智能进行结果规范化。
python 搜索所需的API密钥为零。 可选通过GitHub Copilot代币或本地Ollama模型进行AI摘要。
特性
- 4个MCP工具:
web_search,search_google,search_duckduckgo,extract_content - 多引擎聚合:通过重复数据删除和跨引擎排名在Google+DuckDuckGo上进行并行搜索
- AI总结:通过GitHub Copilot或当地Ollama模型提供可选结果摘要
- 生产就绪:具有完整环境变量配置的系统化服务
- 尊重隐私:直接抓取HTML,无需第三方搜索API
- FastMCP模式:与evo-mem相同的架构——SSE+可流式http双传输
快速开始
# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate
# Install
pip install -e .
# Run (STDIO transport for local MCP clients)
python -m evoscry.mcp_server
# Run (SSE transport for remote/systemd)
python -m evoscry.mcp_server --transport sse --port 3000Claude桌面/VS代码配置
{
"mcpServers": {
"evo-scry": {
"command": "python",
"args": ["-m", "evoscry.mcp_server"]
}
}
}SSE传输(远程)
{
"mcpServers": {
"evo-scry": {
"url": "http://your-server:3000/sse"
}
}
}MCP工具
web_search
使用谷歌和DuckDuckGo搜索互联网。对结果进行汇总、重复数据消除和排序。
| 参数 | 类型 | 必填 | 默认 | 说明 |
|---|---|---|---|---|
| query | string | yes | -- | 搜索查询 |
| 引擎 | 列表 | 否 | 配置 | 要使用的引擎 |
| max_results | int | no | 10 | 每个引擎的最大结果 |
| language | string | no | “en” | 语言代码 |
| date_range | string | no | -- | “日”、“周”、“月”、“年” |
| summare | bool | no | false | AI总结结果 |
search_google / search_duckduckgo
具有相同参数的特定于引擎的搜索工具(减号 engines 和 summarize).
extract_content
获取URL并提取干净的文本或Markdown内容。
| 参数 | 类型 | 必填 | 默认 | 说明 | |
|---|---|---|---|---|---|
| url | str | list\[str\] | yes | -- | 要提取的url |
| format | string | no | “markdown” | “text”或“markdown” |
AI摘要设置
GitHub Copilot代币(推荐)
python -m evoscry.generate_copilot_token按照提示通过GitHub OAuth设备流进行身份验证。将生成的令牌添加到您的 .env 或systemd环境文件。
本地模型(Ollama)
# In .env or systemd env:
EVOSCRY_LOCAL_MODEL_URL=http://localhost:11434
EVOSCRY_LOCAL_MODEL_NAME=llama3系统化部署
# Install (requires root)
sudo bash install.sh
# Configure
sudo vim /etc/evo-scry/evo-scry.env
# Start
sudo systemctl enable --now evo-scrySSE端点: http://localhost:3000/sse 健康检查: http://localhost:3000/health
配置
所有选项均通过环境变量实现。看 .env.示例 查看完整列表。
| 变量 | 默认值 | 描述 |
|---|---|---|
EVOSCRY_TRANSPORT | stdio | stdio, sse,或 streamable-http |
EVOSCRY_HOST | 0.0.0.0 | HTTP绑定地址 |
EVOSCRY_PORT | 3000 | HTTP端口 |
EVOSCRY_SEARCH_ENGINES | duckduckgo | 启用发动机 |
EVOSCRY_MAX_RESULTS | 10 | 每台发动机的结果 |
EVOSCRY_REQUEST_DELAY_MS | 1000 | 速率限制延迟 |
EVOSCRY_USER_AGENT | rotate | UA轮换 |
EVOSCRY_PROXY_URL | -- | HTTP/SOCKS5代理 |
EVOSCRY_COPILOT_TOKEN | - | Copilot API令牌 |
EVOSCRY_COPILOT_REFRESH_TOKEN | -- | 用于自动刷新的GitHub OAuth令牌 |
EVOSCRY_LOCAL_MODEL_URL | - | 奥拉马终点 |
EVOSCRY_LOG_LEVEL | info | 日志冗长 |
EVOSCRY_CACHE_TTL_SECONDS | 300 | 缓存TTL |
许可证
麻省理工学院
