Meilisearch MCP Server
resmiMeilisearch ile etkileşim kurun ve sorgulama yapın (Tam metin ve anlamsal arama API'si)
Dokümantasyon
Meilisearch MCP Sunucusu
Meilisearch | Meilisearch Cloud | Dokümantasyon | Discord
⚡ Herhangi bir LLM'i Meilisearch'e bağlayın ve yapay zekanızı ışık hızında arama yetenekleriyle güçlendirin! 🔍
🤔 Bu nedir?
Meilisearch MCP Sunucusu, MCP uyumlu herhangi bir istemcinin (Claude, OpenAI ajanları ve diğer LLM'ler dahil) Meilisearch ile etkileşime girmesini sağlayan bir Model Bağlam Protokolü sunucusudur. Bu stdio tabanlı sunucu, yapay zeka asistanlarının doğal konuşma yoluyla arama dizinlerini yönetmesine, aramalar yapmasına ve verilerinizi işlemesine olanak tanır.
Neden kullanmalısınız?
- 🤖 Evrensel Uyumluluk - Yalnızca Claude değil, herhangi bir MCP istemcisiyle çalışır
- 🗣️ Doğal Dil Kontrolü - Herhangi bir LLM ile konuşarak Meilisearch'i yönetin
- 🚀 Sıfır Öğrenme Eğrisi - Meilisearch'ün API'sini öğrenmeye gerek yok
- 🔧 Tam Özellik Erişimi - Tüm Meilisearch yetenekleri parmaklarınızın ucunda
- 🔄 Dinamik Bağlantılar - Meilisearch örnekleri arasında anında geçiş yapın
- 📡 stdio Taşıma - Şu anda stdio kullanır; yakında yerel Meilisearch MCP desteği geliyor!
✨ Temel Özellikler
- 📊 Dizin & Belge Yönetimi - Arama dizinlerini oluşturun, güncelleyin ve yönetin
- 🔍 Akıllı Arama - Gelişmiş filtreleme ile tek veya birden çok dizinde arama yapın
- ⚙️ Ayarlar Yapılandırması - Arama alaka düzeyini ve performansını ince ayarlayın
- 📈 Görev İzleme - Dizinleme ilerlemesini ve sistem işlemlerini takip edin
- 🔐 API Anahtarı Yönetimi - Güvenli erişim kontrolü
- 🏥 Sağlık İzleme - Meilisearch örneğinizi gözlemleyin
- 🐍 Python Uygulaması - TypeScript sürümü de mevcut
🚀 Hızlı Başlangıç
Sadece 3 adımda çalışmaya başlayın!
1️⃣ Paketi yükleyin
# Using pip
pip install meilisearch-mcp
# Or using uvx (recommended)
uvx -n meilisearch-mcp
2️⃣ Claude Desktop'ı yapılandırın
Bunu claude_desktop_config.json dosyanıza ekleyin:
{
"mcpServers": {
"meilisearch": {
"command": "uvx",
"args": ["-n", "meilisearch-mcp"]
}
}
}
3️⃣ Meilisearch'i başlatın
# Using Docker (recommended)
docker run -d -p 7700:7700 getmeili/meilisearch:v1.28
# Or using Homebrew
brew install meilisearch
meilisearch
Hepsi bu kadar! Artık yapay zeka asistanınızdan Meilisearch verilerinizi aramasını ve yönetmesini isteyebilirsiniz! 🎉
📚 Örnekler
💬 Yapay zeka asistanınızla doğal bir şekilde konuşun:
You: "Create a new index called 'products' with 'id' as the primary key"
AI: I'll create that index for you... ✓ Index 'products' created successfully!
You: "Add some products to the index"
AI: I'll add those products... ✓ Added 5 documents to 'products' index
You: "Search for products under $50 with 'electronics' in the category"
AI: I'll search for those products... Found 12 matching products!
🔍 Gelişmiş Arama Örneği:
You: "Search across all my indices for 'machine learning' and sort by date"
AI: Searching across all indices... Found 47 results from 3 indices:
- 'blog_posts': 23 articles about ML
- 'documentation': 15 technical guides
- 'tutorials': 9 hands-on tutorials
🔧 Kurulum
Ön Koşullar
- Python ≥ 3.9
- Çalışan bir Meilisearch örneği
- MCP uyumlu istemci (Claude Desktop, OpenAI ajanları, vb.)
PyPI'den
pip install meilisearch-mcp
Kaynaktan (geliştirme için)
# Clone repository
git clone https://github.com/meilisearch/meilisearch-mcp.git
cd meilisearch-mcp
# Create virtual environment and install
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e .
Docker Kullanarak
n8n iş akışları gibi konteynerleştirilmiş ortamlar için mükemmel!
Docker Hub'dan
# Pull the latest image
docker pull getmeili/meilisearch-mcp:latest
# Or a specific version
docker pull getmeili/meilisearch-mcp:0.5.0
# Run the container
docker run -it \
-e MEILI_HTTP_ADDR=http://your-meilisearch:7700 \
-e MEILI_MASTER_KEY=your-master-key \
getmeili/meilisearch-mcp:latest
Kaynaktan Derleme
# Build your own image
docker build -t meilisearch-mcp .
docker run -it \
-e MEILI_HTTP_ADDR=http://your-meilisearch:7700 \
-e MEILI_MASTER_KEY=your-master-key \
meilisearch-mcp
n8n ile Entegrasyon
n8n iş akışları için Docker imajını doğrudan kurulumunuzda kullanabilirsiniz:
meilisearch-mcp:
image: getmeili/meilisearch-mcp:latest
environment:
- MEILI_HTTP_ADDR=http://meilisearch:7700
- MEILI_MASTER_KEY=masterKey
🛠️ Neler Yapabilirsiniz?
🔗 Bağlantı Yönetimi
- Mevcut bağlantı ayarlarını görüntüleyin
- Meilisearch örnekleri arasında dinamik olarak geçiş yapın
- API anahtarlarını anında güncelleyin
📁 Dizin İşlemleri
- Özel birincil anahtarlarla yeni dizinler oluşturun
- Tüm dizinleri istatistiklerle listeleyin
- Dizinleri ve verilerini silin
- Ayrıntılı dizin metriklerini alın
📄 Belge Yönetimi
- Belgeleri ekleyin veya güncelleyin
- Sayfalama ile belgeleri alın
- Toplu veri içe aktarımı
🔍 Arama Yetenekleri
- Filtreler, sıralama ve fasetlerle arama yapın
- Çoklu dizin araması
- Vektörlerle anlamsal arama
- Hibrit arama (anahtar kelime + anlamsal)
⚙️ Ayarlar & Yapılandırma
- Sıralama kurallarını yapılandırın
- Fasetleme ve filtrelemeyi ayarlayın
- Aranabilir öznitelikleri yönetin
- Yazım hatası toleransını özelleştirin
🔐 Güvenlik
- API anahtarları oluşturun ve yönetin
- Ayrıntılı izinler belirleyin
- Anahtar kullanımını izleyin
⚠️ Not: Kolaylık sağlamak için doğrudan sohbet içinde ana bilgisayarlar ve API anahtarları ekleyip güncelleyebilseniz de, bu yaklaşım öncelikle geliştirme kullanım durumları için tasarlanmıştır (anında birden çok örneğe bağlanmak gibi). En iyi MCP güvenlik uygulamalarını takip etmez ve uygun güvenlik önlemleri olmadan üretim ortamlarında kullanılmamalıdır.
📊 İzleme & Sağlık
- Sağlık kontrolleri
- Sistem istatistikleri
- Görev izleme
- Sürüm bilgisi
🌍 Ortam Değişkenleri
Varsayılan bağlantı ayarlarını yapılandırın:
MEILI_HTTP_ADDR=http://localhost:7700 # Default Meilisearch URL
MEILI_MASTER_KEY=your_master_key # Optional: Default API key
💻 Geliştirme
Geliştirme Ortamını Kurma
-
Meilisearch'i başlatın:
docker run -d -p 7700:7700 getmeili/meilisearch:v1.28 -
Geliştirme Bağımlılıklarını Yükleyin:
uv pip install -r requirements-dev.txt -
Testleri Çalıştırın:
python -m pytest tests/ -v -
Kodu Biçimlendirin:
black src/ tests/
MCP Inspector ile Test Etme
npx @modelcontextprotocol/inspector python -m src.meilisearch_mcp
🤝 Topluluk & Destek
Sizden haber almayı çok isteriz! İşte yardım almanın ve bağlanmanın yolları:
- 💬 Discord'umuza Katılın - Toplulukla sohbet edin
- 🐛 Sorun Bildirin - Bir hata mı buldunuz? Bize bildirin!
- 💡 Özellik İstekleri - Bir fikriniz mi var? Dinliyoruz!
- 📖 Meilisearch Dokümanları - Meilisearch hakkında daha fazla bilgi edinin
🤗 Katkıda Bulunma
Katkılarınızı bekliyoruz! İşte başlama adımları:
- Depoyu çatallayın (fork)
- Özellik dalınızı oluşturun (
git checkout -b feature/amazing-feature) - Değişiklikleriniz için testler yazın
- Değişikliklerinizi yapın ve testleri çalıştırın
- Kodunuzu
blackile biçimlendirin - Değişikliklerinizi işleyin (
git commit -m 'Add amazing feature') - Dalınıza gönderin (
git push origin feature/amazing-feature) - Bir Çekme İsteği (Pull Request) açın
Daha fazla ayrıntı için Katkıda Bulunma Yönergelerimize bakın.
📦 Sürüm Süreci
Bu proje otomatik sürüm oluşturma ve yayınlama kullanır. pyproject.toml içindeki sürüm main dalında değiştiğinde, paket otomatik olarak PyPI'ye yayınlanır.
Ayrıntılı talimatlar için Sürüm Süreci bölümüne bakın.
📄 Lisans
Bu proje MIT Lisansı altında lisanslanmıştır - ayrıntılar için LICENSE dosyasına bakın.
Meilisearch, keyifli bir arama deneyimi sunan açık kaynaklı bir arama motorudur.
Meilisearch hakkında daha fazla bilgiyi meilisearch.com adresinde bulabilirsiniz
📖 Tam Dokümantasyon
Mevcut Araçlar
Bağlantı Yönetimi
get-connection-settings: Mevcut Meilisearch bağlantı URL'sini ve API anahtarı durumunu görüntüleyinupdate-connection-settings: Farklı bir örneğe bağlanmak için URL ve/veya API anahtarını güncelleyin
Dizin Yönetimi
create-index: İsteğe bağlı birincil anahtarla yeni bir dizin oluşturunlist-indexes: Mevcut tüm dizinleri listeleyindelete-index: Mevcut bir dizini ve tüm belgelerini silinget-index-metrics: Belirli bir dizin için ayrıntılı metrikleri alın
Belge İşlemleri
get-documents: Sayfalama ile bir dizinden belgeleri alınadd-documents: Bir dizine belge ekleyin veya güncelleyin
Arama
search: Filtreleme ve sıralama seçenekleriyle tek veya birden çok dizinde esnek arama
Ayarlar Yönetimi
get-settings: Bir dizin için mevcut ayarları görüntüleyinupdate-settings: Dizin ayarlarını güncelleyin (sıralama, fasetleme, vb.)
API Anahtarı Yönetimi
get-keys: Tüm API anahtarlarını listeleyincreate-key: Belirli izinlerle yeni API anahtarı oluşturundelete-key: Mevcut bir API anahtarını silin
Görev Yönetimi
get-task: Belirli bir görev hakkında bilgi alınget-tasks: İsteğe bağlı filtrelerle görevleri listeleyincancel-tasks: Bekleyen veya sıraya alınmış görevleri iptal edindelete-tasks: Tamamlanmış görevleri silin
Sistem İzleme
health-check: Temel sağlık kontrolüget-health-status: Kapsamlı sağlık durumuget-version: Meilisearch sürüm bilgisini alınget-stats: Veritabanı istatistiklerini alınget-system-info: Sistem düzeyinde bilgi alın
Geliştirme Kurulumu
Ön Koşullar
-
Meilisearch sunucusunu başlatın:
# Using Docker (recommended for development) docker run -d -p 7700:7700 getmeili/meilisearch:v1.28 # Or using brew (macOS) brew install meilisearch meilisearch # Or download from https://github.com/meilisearch/meilisearch/releases -
Geliştirme araçlarını yükleyin:
# Install uv for Python package management pip install uv # Install Node.js for MCP Inspector testing # Visit https://nodejs.org/ or use your package manager
Testleri Çalıştırma
Bu proje, MCP aracı işlevselliğini doğrulayan kapsamlı entegrasyon testleri içerir:
# Run all tests
python -m pytest tests/ -v
# Run specific test file
python -m pytest tests/test_mcp_client.py -v
# Run tests with coverage report
python -m pytest --cov=src tests/
# Run tests in watch mode (requires pytest-watch)
pytest-watch tests/
Önemli: Testler, http://localhost:7700 üzerinde çalışan bir Meilisearch örneği gerektirir.
Kod Kalitesi
# Format code with Black
black src/ tests/
# Run type checking (if mypy is configured)
mypy src/
# Lint code (if flake8 is configured)
flake8 src/ tests/
Katkıda Bulunma Yönergeleri
- Depoyu çatallayın ve klonlayın
- Geliştirme ortamını kurun, yukarıdaki Geliştirme Kurulumu bölümünü takip ederek
- Bir özellik dalı oluşturun,
maindalından - Yeni işlevsellik ekliyorsanız önce testleri yazın (Test Odaklı Geliştirme)
- İşlemeden önce tüm testlerin geçtiğinden emin olmak için testleri yerel olarak çalıştırın
- Kodu Black ile biçimlendirin ve kod kalitesini sağlayın
- Değişiklikleri açıklayıcı işleme mesajlarıyla işleyin
- Çatalınıza gönderin ve bir çekme isteği oluşturun
Geliştirme İş Akışı
# Create feature branch
git checkout -b feature/your-feature-name
# Make your changes, write tests first
# Edit files...
# Run tests to ensure everything works
python -m pytest tests/ -v
# Format code
black src/ tests/
# Commit and push
git add .
git commit -m "Add feature description"
git push origin feature/your-feature-name
Test Yönergeleri
- Tüm yeni özellikler test içermelidir
- Testler, PR'lar gönderilmeden önce geçmelidir
- Açıklayıcı test adları ve net onaylamalar kullanın
- Hem başarı hem de hata durumlarını test edin
- Testleri çalıştırmadan önce Meilisearch'ün çalıştığından emin olun
Sürüm Süreci
Bu proje, PyPI'ye otomatik sürüm oluşturma ve yayınlama kullanır. Sürüm süreci basit ve otomatik olacak şekilde tasarlanmıştır.
Sürümler Nasıl Çalışır
-
Otomatik Yayınlama:
pyproject.tomliçindeki sürüm numarasımaindalında değiştiğinde, bir GitHub Eylemi otomatik olarak:- Python paketini oluşturur
- Güvenilir yayıncılık kullanarak PyPI'ye yayınlar
- GitHub'da yeni bir sürüm oluşturur
-
Sürüm Tespiti: İş akışı, değişiklikleri tespit etmek için
pyproject.tomliçindeki mevcut sürümü önceki işleme ile karşılaştırır -
PyPI Yayınlama: Güvenilir yayıncılık ile PyPA'nın resmi yayınlama eylemini kullanır (manuel API anahtarlarına gerek yoktur)
Yeni Bir Sürüm Oluşturma
Yeni bir sürüm oluşturmak için şu adımları izleyin:
1. Sürüm Numarasını Belirleyin
Anlamsal Sürümlemeyi (MAJOR.MINOR.PATCH) takip edin:
- PATCH (örn., 0.4.0 → 0.4.1): Hata düzeltmeleri, dokümantasyon güncellemeleri, küçük iyileştirmeler
- MINOR (örn., 0.4.0 → 0.5.0): Yeni özellikler, yeni MCP araçları, önemli geliştirmeler
- MAJOR (örn., 0.5.0 → 1.0.0): Kırıcı değişiklikler, büyük API değişiklikleri
2. Sürümü Güncelleyin ve PR Oluşturun
# 1. Create a branch from latest main
git checkout main
git pull origin main
git checkout -b release/v0.5.0
# 2. Update version in pyproject.toml
# Edit the version = "0.4.0" line to your new version
# 3. Commit and push
git add pyproject.toml
git commit -m "Bump version to 0.5.0"
git push origin release/v0.5.0
# 4. Create PR and get it reviewed/merged
gh pr create --title "Release v0.5.0" --body "Bump version for release"
3. Ana Dala Birleştirin
PR onaylanıp main dalına birleştirildiğinde, GitHub Eylemi otomatik olarak:
- Sürüm değişikliğini tespit eder
- Paketi oluşturur
- https://pypi.org/p/meilisearch-mcp adresinde PyPI'ye yayınlar
- Yeni sürümü
pip install meilisearch-mcparacılığıyla kullanılabilir hale getirir
4. Sürümü Doğrulayın
Birleştirdikten sonra sürümü doğrulayın:
# Check GitHub Action status
gh run list --workflow=publish.yml
# Verify on PyPI (may take a few minutes)
pip index versions meilisearch-mcp
# Test installation of new version
pip install --upgrade meilisearch-mcp
Sürüm İş Akışı Dosyası
Otomatik sürüm, .github/workflows/publish.yml tarafından yönetilir ve şunları yapar:
maindalına yapılan göndermelerde tetiklenirpyproject.tomlsürümünün değişip değişmediğini kontrol eder- Python 3.10 ve resmi derleme araçlarını kullanır
- Güvenilir yayıncılık kullanarak yayınlar (API anahtarı gerekmez)
- Hata ayıklama için ayrıntılı çıktı sağlar
Sürüm Sorunlarını Giderme
Sürüm tetiklenmedi: pyproject.toml içindeki sürümün işlemeler arasında gerçekten değiştiğini kontrol edin
Derleme başarısız oldu: Python paketi derleme hataları için GitHub Eylemleri günlüklerini kontrol edin
PyPI yayını başarısız oldu: Paket adını ve güvenilir yayıncılığın düzgün yapılandırıldığını doğrulayın Sürüm çakışmaları: Yeni sürüm numarasının PyPI'da daha önce kullanılmadığından emin olun
Geliştirme ve Üretim Sürümleri
- Geliştirme:
pip install -e .kullanarak kaynaktan yükleyin - Üretim:
pip install meilisearch-mcpkullanarak PyPI'dan yükleyin - Belirli sürüm:
pip install meilisearch-mcp==0.5.0kullanarak yükleyin