SearXNG için bir Model Context Protocol Server
Claude Desktop config.json'a ekle
{
"mcpServers": {
"ihor-sokoliuk-mcp-searxng": {
"command": "node",
"args": [
"~/.mcp/mcp-searxng/index.js"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/ihor-sokoliuk/mcp-searxng.git ~/.mcp/mcp-searxng
cd ~/.mcp/mcp-searxng Bir MCP server, SearXNG API'sini entegre eder ve yapay zeka asistanlarına web arama yetenekleri sağlar.
MCP client yapılandırmanıza ekleyin (örneğin claude_desktop_config.json):
{
"mcpServers": {
"searxng": {
"command": "npx",
"args": ["-y", "mcp-searxng"],
"env": {
"SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL"
}
}
}
}
YOUR_SEARXNG_INSTANCE_URL yerine SearXNG örneğinizin URL'sini yazın (örneğin https://search.example.com).
mcp-searxng bağımsız bir MCP server'ıdır — yapay zeka asistanının web arama için bağlandığı ayrı bir Node.js işlemidir. Herhangi bir SearXNG örneğini HTTP JSON API'si aracılığıyla sorgular.
SearXNG plugin'i değildir: Bu proje, yerel SearXNG plugin'i olarak yüklenemez.
SEARXNG_URLayarlayarak mevcut herhangi bir SearXNG örneğine işaret edin.
Yapay Zeka Asistanı (örneğin Claude)
│ MCP protokolü
▼
mcp-searxng (bu proje — Node.js işlemi)
│ HTTP JSON API (SEARXNG_URL)
▼
SearXNG örneği
searxng_web_search
query (string): Arama sorgusu. Bu dize harici arama hizmetlerine iletilir.pageno (number, isteğe bağlı): Arama sayfası numarası, 1'den başlar (varsayılan 1)time_range (string, isteğe bağlı): Sonuçları zaman aralığına göre filtreleyin - biri: "day", "month", "year" (varsayılan: hiçbiri)language (string, isteğe bağlı): Sonuçlar için dil kodu (örneğin, "en", "fr", "de") veya "all" (varsayılan: "all")safesearch (number, isteğe bağlı): Güvenli arama filtresi seviyesi (0: Hiçbiri, 1: Orta, 2: Sıkı) (varsayılan: örnek ayarı)web_url_read
url (string): Getirip işlenecek URLstartChar (number, isteğe bağlı): İçerik çıkarma için başlangıç karakter konumu (varsayılan: 0)maxLength (number, isteğe bağlı): Döndürülecek maksimum karakter sayısısection (string, isteğe bağlı): Belirli bir başlık altında içerik çıkarın (başlık metnini arar)paragraphRange (string, isteğe bağlı): Belirli paragraf aralıklarını döndürün (örneğin, '1-5', '3', '10-')readHeadings (boolean, isteğe bağlı): Tam içerik yerine yalnızca başlıkların listesini döndürünnpm install -g mcp-searxng
{
"mcpServers": {
"searxng": {
"command": "mcp-searxng",
"env": {
"SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL"
}
}
}
}
Önceden oluşturulmuş görüntü:
docker pull isokoliuk/mcp-searxng:latest
{
"mcpServers": {
"searxng": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "SEARXNG_URL",
"isokoliuk/mcp-searxng:latest"
],
"env": {
"SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL"
}
}
}
}
Ek ortam değişkenleri iletmek için args'a -e VAR_NAME ekleyin ve değişkeni env'a ekleyin.
Yerel olarak derleyin:
docker build -t mcp-searxng:latest -f Dockerfile .
Yukarıdaki aynı yapılandırmayı kullanın, isokoliuk/mcp-searxng:latest yerine mcp-searxng:latest yazın.
docker-compose.yml:
services:
mcp-searxng:
image: isokoliuk/mcp-searxng:latest
stdin_open: true
environment:
- SEARXNG_URL=YOUR_SEARXNG_INSTANCE_URL
# Gerektiğinde isteğe bağlı değişkenler ekleyin — bkz. CONFIGURATION.md
MCP client yapılandırması:
{
"mcpServers": {
"searxng": {
"command": "docker-compose",
"args": ["run", "--rm", "mcp-searxng"]
}
}
}
Varsayılan olarak server STDIO kullanır. HTTP modunu etkinleştirmek için MCP_HTTP_PORT ayarlayın:
{
"mcpServers": {
"searxng-http": {
"command": "mcp-searxng",
"env": {
"SEARXNG_URL": "YOUR_SEARXNG_INSTANCE_URL",
"MCP_HTTP_PORT": "3000"
}
}
}
}
Uç noktalar: POST/GET/DELETE /mcp (MCP protokolü), GET /health (sağlık kontrolü)
Bunu deneyin:
MCP_HTTP_PORT=3000 SEARXNG_URL=http://localhost:8080 mcp-searxng
curl http://localhost:3000/health
SEARXNG_URL ortam değişkenini SearXNG örneğiniz URL'sine ayarlayın. Diğer tüm değişkenler isteğe bağlıdır.
Tam ortam değişkeni referansı: CONFIGURATION.md
SearXNG örneğinizin muhtemelen JSON format devre dışıdır. settings.yml dosyasını düzenleyin (genellikle /etc/searxng/settings.yml):
search:
formats:
- html
- json
SearXNG'yi yeniden başlatın (docker restart searxng) ardından doğrulayın:
curl 'http://localhost:8080/search?q=test&format=json'
Bir JSON yanıtı almalısınız. Değilse, dosyanın doğru şekilde monte edildiğini ve YAML girintisinin geçerli olduğunu onaylayın.
Ayrıca bkz: SearXNG settings docs · tartışma
Bkz. CONTRIBUTING.md
MIT — ayrıntılar için LICENSE dosyasını inceleyin.
Exa AI Search API'sini kullanan bir Model Context Protocol (MCP) sunucusu, Claude gibi AI asistanlarının web aramaları gerçekleştirmesini sağlar. Bu kurulum, AI modellerinin gerçek zamanlı web bilgilerine güvenli ve kontrollü bir şekilde erişmesini mümkün kılar.
ArXiv araştırma makalelerinde arama yapın
Web'i keşfedin, veri çıkarın ve etkileşim kurun - tek bir arayüz ile herkese açık internet üzerinde otomatik erişimi güçlendirin.
Ücretsiz çoklu arama motoru kullanarak web araması yapın (API ANAHTARI GEREKMEZ) — Bing, Baidu, DuckDuckGo, Brave, Exa ve CSDN'yi destekler.
DuckDuckGo kullanarak web araması yapın
Brave Search API kullanarak web arama yetenekleri