Skip to main content
Glama
Knuckles-Team

SearXNG MCP Server

SearXNG - A2A | AG-UI | MCP

PyPI - Version MCP Server PyPI - Downloads GitHub Repo stars GitHub forks GitHub contributors PyPI - License GitHub

GitHub last commit (by committer) GitHub pull requests GitHub closed pull requests GitHub issues

GitHub top language GitHub language count GitHub repo size GitHub repo file count (file type) PyPI - Wheel PyPI - Implementation

Версия: 0.1.56

Обзор

SearXNG MCP Server + A2A Server

Включает сервер протокола контекста модели (MCP) и готового к использованию агента Agent2Agent (A2A).

Выполняйте конфиденциальный веб-поиск с помощью SearXNG через MCP-сервер!

Этот репозиторий активно поддерживается — мы приветствуем ваш вклад!

Поддерживает:

  • Конфиденциальный метапоиск

  • Настраиваемые параметры поиска (язык, временной диапазон, категории, движки)

  • Уровни безопасного поиска

  • Управление пагинацией

  • Поддержку базовой аутентификации

  • Выбор случайного экземпляра

MCP

Инструменты MCP

Имя функции

Описание

Тег(и)

web_search

Выполняет веб-поиск с использованием SearXNG, метапоисковой системы, уважающей конфиденциальность. Возвращает релевантный веб-контент с настраиваемыми параметрами.

search

Использование в качестве MCP-сервера

MCP-сервер может работать в двух режимах: stdio (для локального тестирования) или http (для сетевого доступа). Чтобы запустить сервер, используйте следующие команды:

Запуск в режиме stdio (по умолчанию):

searxng-mcp --transport "stdio"

Запуск в режиме HTTP:

searxng-mcp --transport "http"  --host "0.0.0.0"  --port "8000"

AI Prompt:

Search for information about artificial intelligence

AI Response:

Search completed successfully. Found 10 results for "artificial intelligence":

1. **What is Artificial Intelligence?**
   URL: https://example.com/ai
   Content: Artificial intelligence (AI) refers to the simulation of human intelligence in machines...

2. **AI Overview**
   URL: https://example.org/ai-overview
   Content: AI encompasses machine learning, deep learning, and more...

Агент A2A

Этот пакет также включает сервер агента A2A, который можно использовать для взаимодействия с MCP-сервером SearXNG.

Архитектура:

---
config:
  layout: dagre
---
flowchart TB
 subgraph subGraph0["Agent Capabilities"]
        C["Agent"]
        B["A2A Server - Uvicorn/FastAPI"]
        D["MCP Tools"]
        F["Agent Skills"]
  end
    C --> D & F
    A["User Query"] --> B
    B --> C
    D --> E["Platform API"]

     C:::agent
     B:::server
     A:::server
    classDef server fill:#f9f,stroke:#333
    classDef agent fill:#bbf,stroke:#333,stroke-width:2px
    style B stroke:#000000,fill:#FFD600
    style D stroke:#000000,fill:#BBDEFB
    style F fill:#BBDEFB
    style A fill:#C8E6C9
    style subGraph0 fill:#FFF9C4

Диаграмма взаимодействия компонентов

sequenceDiagram
    participant User
    participant Server as A2A Server
    participant Agent as Agent
    participant Skill as Agent Skills
    participant MCP as MCP Tools

    User->>Server: Send Query
    Server->>Agent: Invoke Agent
    Agent->>Skill: Analyze Skills Available
    Skill->>Agent: Provide Guidance on Next Steps
    Agent->>MCP: Invoke Tool
    MCP-->>Agent: Tool Response Returned
    Agent-->>Agent: Return Results Summarized
    Agent-->>Server: Final Response
    Server-->>User: Output

Использование

MCP CLI

Краткий флаг

Длинный флаг

Описание

-h

--help

Отобразить справочную информацию

-t

--transport

Метод транспорта: 'stdio', 'http' или 'sse' [устаревший] (по умолчанию: stdio)

-s

--host

Адрес хоста для HTTP-транспорта (по умолчанию: 0.0.0.0)

-p

--port

Номер порта для HTTP-транспорта (по умолчанию: 8000)

--auth-type

Тип аутентификации: 'none', 'static', 'jwt', 'oauth-proxy', 'oidc-proxy', 'remote-oauth' (по умолчанию: none)

--token-jwks-uri

JWKS URI для проверки JWT

--token-issuer

Эмитент для проверки JWT

--token-audience

Аудитория для проверки JWT

--oauth-upstream-auth-endpoint

Исходящая точка авторизации для OAuth Proxy

--oauth-upstream-token-endpoint

Исходящая точка токена для OAuth Proxy

--oauth-upstream-client-id

Исходящий ID клиента для OAuth Proxy

--oauth-upstream-client-secret

Исходящий секрет клиента для OAuth Proxy

--oauth-base-url

Базовый URL для OAuth Proxy

--oidc-config-url

URL конфигурации OIDC

--oidc-client-id

ID клиента OIDC

--oidc-client-secret

Секрет клиента OIDC

--oidc-base-url

Базовый URL для OIDC Proxy

--remote-auth-servers

Список серверов авторизации через запятую для Remote OAuth

--remote-base-url

Базовый URL для Remote OAuth

--allowed-client-redirect-uris

Список разрешенных URI перенаправления клиента через запятую

--eunomia-type

Тип авторизации Eunomia: 'none', 'embedded', 'remote' (по умолчанию: none)

--eunomia-policy-file

Файл политики для встроенного Eunomia (по умолчанию: mcp_policies.json)

--eunomia-remote-url

URL для удаленного сервера Eunomia

A2A CLI

Эндпоинты

  • Web UI: http://localhost:8000/ (если включен)

  • A2A: http://localhost:8000/a2a (Обнаружение: /a2a/.well-known/agent.json)

  • AG-UI: http://localhost:8000/ag-ui (POST)

Краткий флаг

Длинный флаг

Описание

-h

--help

Отобразить справочную информацию

--host

Хост для привязки сервера (по умолчанию: 0.0.0.0)

--port

Порт для привязки сервера (по умолчанию: 9000)

--reload

Включить автоперезагрузку

--provider

Провайдер LLM: 'openai', 'anthropic', 'google', 'huggingface'

--model-id

ID модели LLM (по умолчанию: nvidia/nemotron-3-super)

--base-url

Базовый URL LLM (для провайдеров, совместимых с OpenAI)

--api-key

API-ключ LLM

--mcp-url

URL MCP-сервера (по умолчанию: http://localhost:8000/mcp)

--web

Включить Pydantic AI Web UI

False (Env: ENABLE_WEB_UI)

Использование в качестве MCP-сервера

MCP-сервер может работать в двух режимах: stdio (для локального тестирования) или http (для сетевого доступа). Чтобы запустить сервер, используйте следующие команды:

Запуск в режиме stdio (по умолчанию):

searxng-mcp --transport "stdio"

Запуск в режиме HTTP:

searxng-mcp --transport "http"  --host "0.0.0.0"  --port "8000"

AI Prompt:

Search for information about artificial intelligence

AI Response:

Search completed successfully. Found 10 results for "artificial intelligence":

1. **What is Artificial Intelligence?**
   URL: https://example.com/ai
   Content: Artificial intelligence (AI) refers to the simulation of human intelligence in machines...

2. **AI Overview**
   URL: https://example.org/ai-overview
   Content: AI encompasses machine learning, deep learning, and more...

Агентный ИИ

searxng-mcp разработан для использования системами агентного ИИ. Он предоставляет набор инструментов, которые позволяют агентам искать информацию в сети с помощью SearXNG.

Агент-агент (A2A)

Этот пакет также включает сервер агента A2A, который можно использовать для взаимодействия с MCP-сервером SearXNG.

CLI

Аргумент

Описание

По умолчанию

--host

Хост для привязки сервера

0.0.0.0

--port

Порт для привязки сервера

9000

--reload

Включить автоперезагрузку

False

--provider

Провайдер LLM (openai, anthropic, google, huggingface)

openai

--model-id

ID модели LLM

nvidia/nemotron-3-super

--base-url

Базовый URL LLM (для провайдеров, совместимых с OpenAI)

http://ollama.arpa/v1

--api-key

API-ключ LLM

ollama

--mcp-url

URL MCP-сервера

http://searxng-mcp:8000/mcp

--allowed-tools

Список разрешенных инструментов MCP

web_search

Примеры

Запуск сервера A2A

searxng-agent --provider openai --model-id gpt-4 --api-key sk-... --mcp-url http://localhost:8000/mcp

Запуск с помощью Docker

docker run -e CMD=searxng-agent -p 8000:8000 searxng-mcp

Docker

Сборка

docker build -t searxng-mcp .

Запуск MCP-сервера

docker run -p 8000:8000 searxng-mcp

Запуск сервера A2A

docker run -e CMD=searxng-agent -p 8001:8001 searxng-mcp

Развертывание MCP-сервера как службы

Сервер ServiceNow MCP можно развернуть с помощью Docker с настраиваемой аутентификацией, промежуточным ПО и авторизацией Eunomia.

Использование Docker Run

docker pull knucklessg1/searxng-mcp:latest

docker run -d \
  --name searxng-mcp \
  -p 8004:8004 \
  -e HOST=0.0.0.0 \
  -e PORT=8004 \
  -e TRANSPORT=http \
  -e AUTH_TYPE=none \
  -e EUNOMIA_TYPE=none \
  -e SEARXNG_URL=https://searxng.example.com \
  -e SEARXNG_USERNAME=user \
  -e SEARXNG_PASSWORD=pass \
  -e USE_RANDOM_INSTANCE=false \
  knucklessg1/searxng-mcp:latest

Для расширенной аутентификации (например, JWT, OAuth Proxy, OIDC Proxy, Remote OAuth) или Eunomia добавьте соответствующие переменные окружения:

docker run -d \
  --name searxng-mcp \
  -p 8004:8004 \
  -e HOST=0.0.0.0 \
  -e PORT=8004 \
  -e TRANSPORT=http \
  -e AUTH_TYPE=oidc-proxy \
  -e OIDC_CONFIG_URL=https://provider.com/.well-known/openid-configuration \
  -e OIDC_CLIENT_ID=your-client-id \
  -e OIDC_CLIENT_SECRET=your-client-secret \
  -e OIDC_BASE_URL=https://your-server.com \
  -e ALLOWED_CLIENT_REDIRECT_URIS=http://localhost:*,https://*.example.com/* \
  -e EUNOMIA_TYPE=embedded \
  -e EUNOMIA_POLICY_FILE=/app/mcp_policies.json \
  -e SEARXNG_URL=https://searxng.example.com \
  -e SEARXNG_USERNAME=user \
  -e SEARXNG_PASSWORD=pass \
  -e USE_RANDOM_INSTANCE=false \
  knucklessg1/searxng-mcp:latest

Использование Docker Compose

Создайте файл docker-compose.yml:

services:
  searxng-mcp:
    image: knucklessg1/searxng-mcp:latest
    environment:
      - HOST=0.0.0.0
      - PORT=8004
      - TRANSPORT=http
      - AUTH_TYPE=none
      - EUNOMIA_TYPE=none
      - SEARXNG_URL=https://searxng.example.com
      - SEARXNG_USERNAME=user
      - SEARXNG_PASSWORD=pass
      - USE_RANDOM_INSTANCE=false
    ports:
      - 8004:8004

Для расширенных настроек с аутентификацией и Eunomia:

services:
  searxng-mcp:
    image: knucklessg1/searxng-mcp:latest
    environment:
      - HOST=0.0.0.0
      - PORT=8004
      - TRANSPORT=http
      - AUTH_TYPE=oidc-proxy
      - OIDC_CONFIG_URL=https://provider.com/.well-known/openid-configuration
      - OIDC_CLIENT_ID=your-client-id
      - OIDC_CLIENT_SECRET=your-client-secret
      - OIDC_BASE_URL=https://your-server.com
      - ALLOWED_CLIENT_REDIRECT_URIS=http://localhost:*,https://*.example.com/*
      - EUNOMIA_TYPE=embedded
      - EUNOMIA_POLICY_FILE=/app/mcp_policies.json
      - SEARXNG_URL=https://searxng.example.com
      - SEARXNG_USERNAME=user
      - SEARXNG_PASSWORD=pass
      - USE_RANDOM_INSTANCE=false
    ports:
      - 8004:8004
    volumes:
      - ./mcp_policies.json:/app/mcp_policies.json

Запустите службу:

docker-compose up -d

Настройка mcp.json для интеграции с ИИ

{
  "mcpServers": {
    "searxng": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "searxng-mcp",
        "searxng-mcp"
      ],
      "env": {
        "SEARXNG_URL": "https://searxng.example.com",
        "SEARXNG_USERNAME": "user",
        "SEARXNG_PASSWORD": "pass",
        "USE_RANDOM_INSTANCE": "false"
      },
      "timeout": 300000
    }
  }
}

Установка Python-пакета

python -m pip install searxng-mcp
uv pip install searxng-mcp

Владельцы репозитория

GitHub followers GitHub User's stars

Install Server
A
security – no known vulnerabilities
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Knuckles-Team/searxng-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server