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 서버 + A2A 서버

Model Context Protocol (MCP) 서버와 즉시 사용 가능한 Agent2Agent (A2A) 에이전트가 포함되어 있습니다.

MCP 서버를 통해 SearXNG를 사용하여 개인정보를 보호하는 웹 검색을 수행하세요!

이 저장소는 활발히 유지 관리되고 있으며 - 기여를 환영합니다!

지원 기능:

  • 개인정보 보호 메타 검색

  • 사용자 지정 가능한 검색 매개변수 (언어, 시간 범위, 카테고리, 엔진)

  • 안전 검색 수준

  • 페이지네이션 제어

  • 기본 인증 지원

  • 무작위 인스턴스 선택

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 프롬프트:

Search for information about artificial intelligence

AI 응답:

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 에이전트

이 패키지에는 SearXNG MCP 서버와 상호 작용하는 데 사용할 수 있는 A2A 에이전트 서버도 포함되어 있습니다.

아키텍처:

---
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

JWT 검증을 위한 JWKS URI

--token-issuer

JWT 검증을 위한 발급자

--token-audience

JWT 검증을 위한 대상

--oauth-upstream-auth-endpoint

OAuth 프록시를 위한 업스트림 인증 엔드포인트

--oauth-upstream-token-endpoint

OAuth 프록시를 위한 업스트림 토큰 엔드포인트

--oauth-upstream-client-id

OAuth 프록시를 위한 업스트림 클라이언트 ID

--oauth-upstream-client-secret

OAuth 프록시를 위한 업스트림 클라이언트 시크릿

--oauth-base-url

OAuth 프록시를 위한 기본 URL

--oidc-config-url

OIDC 구성 URL

--oidc-client-id

OIDC 클라이언트 ID

--oidc-client-secret

OIDC 클라이언트 시크릿

--oidc-base-url

OIDC 프록시를 위한 기본 URL

--remote-auth-servers

원격 OAuth를 위한 인증 서버의 쉼표로 구분된 목록

--remote-base-url

원격 OAuth를 위한 기본 URL

--allowed-client-redirect-uris

허용된 클라이언트 리디렉션 URI의 쉼표로 구분된 목록

--eunomia-type

Eunomia 인증 유형: 'none', 'embedded', 'remote' (기본값: none)

--eunomia-policy-file

임베디드 Eunomia를 위한 정책 파일 (기본값: mcp_policies.json)

--eunomia-remote-url

원격 Eunomia 서버를 위한 URL

A2A CLI

엔드포인트

  • 웹 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

LLM 모델 ID (기본값: nvidia/nemotron-3-super)

--base-url

LLM 기본 URL (OpenAI 호환 제공자용)

--api-key

LLM API 키

--mcp-url

MCP 서버 URL (기본값: http://localhost:8000/mcp)

--web

Pydantic AI 웹 UI 활성화

False (환경 변수: 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 프롬프트:

Search for information about artificial intelligence

AI 응답:

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...

에이전트 AI

searxng-mcp는 에이전트 AI 시스템에서 사용하도록 설계되었습니다. 에이전트가 SearXNG를 사용하여 웹을 검색할 수 있도록 하는 도구 세트를 제공합니다.

에이전트 간 통신 (A2A)

이 패키지에는 SearXNG MCP 서버와 상호 작용하는 데 사용할 수 있는 A2A 에이전트 서버도 포함되어 있습니다.

CLI

인수

설명

기본값

--host

서버를 바인딩할 호스트

0.0.0.0

--port

서버를 바인딩할 포트

9000

--reload

자동 재시작 활성화

False

--provider

LLM 제공자 (openai, anthropic, google, huggingface)

openai

--model-id

LLM 모델 ID

nvidia/nemotron-3-super

--base-url

LLM 기본 URL (OpenAI 호환 제공자용)

http://ollama.arpa/v1

--api-key

LLM API 키

ollama

--mcp-url

MCP 서버 URL

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 서버는 구성 가능한 인증, 미들웨어 및 Eunomia 권한 부여를 사용하여 Docker로 배포할 수 있습니다.

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 프록시, OIDC 프록시, 원격 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

AI 통합을 위한 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