Skip to content

基于FastMCP的SearXNG搜索MCP服务器,支持多分类、多语言、多引擎的聚合检索。

License

Notifications You must be signed in to change notification settings

noimank/searxng-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SearXNG MCP Server

License: MIT Python 3.8+ FastMCP

一个基于 FastMCP 框架的 SearXNG 搜索服务器,为 MCP (Model Context Protocol) 客户端提供强大的网络搜索功能。

✨ 特性

  • 🔍 通用网络搜索 - 支持网页、图片、新闻、视频等多种内容类型
  • 🎯 站内搜索 - 针对特定网站的精准搜索
  • 🌍 多语言支持 - 支持多种语言的搜索结果
  • 时间过滤 - 支持按时间范围筛选搜索结果
  • 🛡️ 安全搜索 - 可配置的安全搜索级别
  • 🚀 多种运行模式 - 支持 STDIO、HTTP、SSE 三种传输模式
  • ⚙️ 灵活配置 - 通过环境变量或命令行参数配置

🚀 快速开始

基本使用

# 使用默认配置启动(STDIO模式)
python run_server.py

HTTP 模式

python run_server.py --mode http --host 0.0.0.0 --port 8000

SSE 模式

python run_server.py --mode sse --host 0.0.0.0 --port 8000

🐳 Docker 部署SearXNG

参考:SearXNG 官方docker部署

环境变量

变量名 默认值 描述
SEARXNG_INSTANCE https://searx.be SearXNG 实例 URL
SEARXNG_TIMEOUT 30 请求超时时间(秒)
SEARXNG_MAX_RESULTS 20 最大结果数量
SEARXNG_DEFAULT_CATEGORIES general 默认搜索分类
SEARXNG_DEFAULT_LANGUAGE all 默认语言

命令行参数

python run_server.py --help

🛠️ 可用工具

search_web

通用网络搜索工具,支持多分类、多语言、时间过滤等高级参数。

参数:

  • query (str): 搜索查询
  • categories (str): 搜索分类,默认 "general"
  • engines (str, 可选): 指定搜索引擎
  • language (str): 语言代码,默认 "all"
  • pageno (int): 页码,默认 1
  • time_range (str, 可选): 时间范围 ("day"/"month"/"year")
  • safesearch (int): 安全搜索级别 (0=关闭, 1=中等, 2=严格)

search_site

指定网站内容搜索工具,仅返回特定站点下的结果。

参数:

  • query (str): 搜索查询
  • site (str): 目标网站域名
  • 其他参数同 search_web

🤝 贡献

欢迎贡献代码!请遵循以下步骤:

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m 'Add some amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 开启 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

🙏 致谢

📞 支持

如果你遇到问题或有建议,请:


注意: 请确保你使用的 SearXNG 实例允许 API 访问,并遵守相关的使用条款。

About

基于FastMCP的SearXNG搜索MCP服务器,支持多分类、多语言、多引擎的聚合检索。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages