MCP Server for SearxNG
Project description
SearxNG MCP Server
A Model Context Protocol (MCP) server that provides search capabilities through SearxNG, the privacy-respecting metasearch engine.
PyPi: https://pypi.org/project/searxng-mcp-server/#description
Usage
Using uvx
You can also just pip install this but we recommend using uv.
# With command line argument (stdio transport)
uvx searxng-mcp-server --searxng-url https://searx.be
# With environment variable (stdio transport)
SEARXNG_URL=https://searx.be uvx searxng-mcp-server
# With HTTP transport on port 8080
uvx searxng-mcp-server --searxng-url https://searx.be --port 8080
# With HTTP transport using environment variable
SEARXNG_URL=https://searx.be MCP_PORT=8080 uvx searxng-mcp-server
Package link: https://pypi.org/project/searxng-mcp-server/
Using Docker/Podman
# With command line argument (stdio transport)
podman run --rm -i docker.io/icewreck/searxng-mcp-server:latest --searxng-url https://searx.be
# With environment variable (stdio transport)
podman run --rm -i -e SEARXNG_URL=https://searx.be docker.io/icewreck/searxng-mcp-server:latest
# With HTTP transport on port 8080
podman run --rm -i -e SEARXNG_URL=https://searx.be -p 8080:8080 docker.io/icewreck/searxng-mcp-server:latest --port 8080
Usage as Library
You can also use the SearxNG client directly in your Python projects. The client is fully async and requires async/await syntax.
For detailed examples, see the examples/client_example.py file in the repository.
The SearxNGClient can be easily integrated into custom AI agents as a search tool. All search methods are async and return structured response objects.
Available Tools
search_web: General web search with language and time filteringsearch_images: Image search across multiple search enginessearch_videos: Video search from various platformssearch_news: News search with time range filteringfetch_url: Fetch content from a URL and convert it to markdown
Configuration
The server requires a SearxNG instance URL. You can provide it via:
- Environment Variable:
SEARXNG_URL=https://your-searxng-instance.com - Command Line Argument:
--searxng-url https://your-searxng-instance.com
By default, the server uses stdio transport. To enable HTTP transport, set a port:
- Environment Variable:
MCP_PORT=8080 - Command Line Argument:
--port 8080
When a port is provided, the server listens on http://0.0.0.0:<port> using the streamable-http transport.
Optional: SEARXNG_TIMEOUT (default: 30), SEARXNG_USER_AGENT, LOG_LEVEL
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file searxng_mcp_server-0.1.7.tar.gz.
File metadata
- Download URL: searxng_mcp_server-0.1.7.tar.gz
- Upload date:
- Size: 90.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b0a5f9c94a60f7101b5bcb38915753196f7a7690817e32331a0dfadc6746947f
|
|
| MD5 |
31cb0633d7502eb9d297e3655dcfda60
|
|
| BLAKE2b-256 |
fd5e470e6b0c7ee69f7fc98a2cb77547cc42103e67824e2c6f0a823e97be0be3
|
File details
Details for the file searxng_mcp_server-0.1.7-py3-none-any.whl.
File metadata
- Download URL: searxng_mcp_server-0.1.7-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
03b544e339ad76f4ea85a884dd5a7f56c3673d5c0c50ae2ff9fac6fcaa6bcecd
|
|
| MD5 |
c36f0e3a6b2fa9482057bdc9cd1c072d
|
|
| BLAKE2b-256 |
e8d9d237971f8ddfe3afa567293ef6a45b2386f57c7b933ec361dba3f7d5edae
|