Meilisearch
ทางการโต้ตอบและค้นหาด้วย Meilisearch (API ค้นหาแบบเต็มข้อความและเชิงความหมาย)
คุณทำอะไรได้บ้างด้วย Meilisearch MCP?
- สร้างและจัดการดัชนี — ขอสร้างดัชนีพร้อมคีย์หลักแบบกำหนดเองผ่าน
create-indexดูรายการที่มีอยู่ หรือลบดัชนีพร้อมเอกสารทั้งหมด - เพิ่มและดึงเอกสาร — ใช้
add-documentsเพื่อนำเข้าหรืออัปเดตเรกคอร์ดจำนวนมาก และget-documentsเพื่อดึงข้อมูลพร้อมการแบ่งหน้าจากดัชนีใดก็ได้ - เรียกใช้การค้นหาที่ยืดหยุ่น — ค้นหาข้ามดัชนีเดียวหรือหลายดัชนีพร้อมตัวกรอง การจัดเรียง และแฟกซ์โดยใช้เครื่องมือ
searchรวมถึงตัวเลือกเชิงความหมายและแบบไฮบริด - ปรับแต่งการตั้งค่าการค้นหา — ดูหรืออัปเดตกฎการจัดอันดับ การทำแฟกซ์ และแอตทริบิวต์ที่ค้นหาได้ของดัชนีผ่าน
get-settingsและupdate-settings - ติดตามงานและสถานะระบบ — ตรวจสอบความคืบหน้าการจัดทำดัชนีด้วย
get-tasksยกเลิกงานที่อยู่ในคิว หรือตรวจสอบสถานะอินสแตนซ์ผ่านhealth-checkและget-stats
เอกสาร
Meilisearch MCP Server
Meilisearch | Meilisearch Cloud | Documentation | Discord
⚡ เชื่อมต่อ LLM ใดๆ เข้ากับ Meilisearch และเสริมพลัง AI ของคุณด้วยความสามารถในการค้นหาที่รวดเร็วดั่งสายฟ้า! 🔍
🤔 สิ่งนี้คืออะไร?
Meilisearch MCP Server คือเซิร์ฟเวอร์ Model Context Protocol ที่ช่วยให้ไคลเอนต์ที่รองรับ MCP ใดๆ (รวมถึง Claude, เอเจนต์ OpenAI และ LLM อื่นๆ) สามารถโต้ตอบกับ Meilisearch ได้ เซิร์ฟเวอร์แบบ stdio นี้ช่วยให้ผู้ช่วย AI จัดการดัชนีการค้นหา ดำเนินการค้นหา และจัดการข้อมูลของคุณผ่านการสนทนาตามธรรมชาติ
ทำไมต้องใช้สิ่งนี้?
- 🤖 ความเข้ากันได้สากล - ทำงานกับไคลเอนต์ MCP ใดๆ ไม่ใช่แค่ Claude
- 🗣️ ควบคุมด้วยภาษาธรรมชาติ - จัดการ Meilisearch ผ่านการสนทนากับ LLM ใดๆ
- 🚀 ไม่ต้องเรียนรู้เพิ่มเติม - ไม่จำเป็นต้องเรียนรู้ API ของ Meilisearch
- 🔧 เข้าถึงฟีเจอร์ครบถ้วน - ความสามารถทั้งหมดของ Meilisearch อยู่แค่ปลายนิ้ว
- 🔄 การเชื่อมต่อแบบไดนามิก - สลับระหว่างอินสแตนซ์ Meilisearch ได้ทันที
- 📡 การขนส่งแบบ stdio - ปัจจุบันใช้ stdio; รองรับ Meilisearch MCP แบบเนทีฟเร็วๆ นี้!
✨ ฟีเจอร์หลัก
- 📊 การจัดการดัชนีและเอกสาร - สร้าง อัปเดต และจัดการดัชนีการค้นหา
- 🔍 การค้นหาอัจฉริยะ - ค้นหาข้ามดัชนีเดียวหรือหลายดัชนีพร้อมการกรองขั้นสูง
- ⚙️ การกำหนดค่าการตั้งค่า - ปรับแต่งความเกี่ยวข้องและประสิทธิภาพการค้นหา
- 📈 การติดตามงาน - ติดตามความคืบหน้าการจัดทำดัชนีและการดำเนินการของระบบ
- 🔐 การจัดการคีย์ API - ควบคุมการเข้าถึงอย่างปลอดภัย
- 🏥 การตรวจสอบสุขภาพ - จับตาดูอินสแตนซ์ Meilisearch ของคุณ
- 🧱 ผลลัพธ์เครื่องมือแบบมีโครงสร้าง - ทุกเครื่องมือที่ส่งคืนข้อมูลจะให้
structuredContentพร้อมกับข้อความ ตามข้อกำหนด MCP ล่าสุด - 🔀 สแตก MCP ที่ทันสมัย - สร้างบน MCP Python SDK v2 อย่างเป็นทางการ (spec 2026-07-28) รองรับไคลเอนต์ MCP รุ่นเก่า
- 🐍 การใช้งาน Python - มีเวอร์ชัน TypeScript ด้วย
🚀 เริ่มต้นอย่างรวดเร็ว
เริ่มต้นใช้งานได้ใน 3 ขั้นตอนเท่านั้น!
1️⃣ ติดตั้งแพ็คเกจ
# Using pip
pip install meilisearch-mcp
# Or using uvx (recommended)
uvx -n meilisearch-mcp
2️⃣ กำหนดค่า Claude Desktop
เพิ่มสิ่งนี้ลงใน claude_desktop_config.json ของคุณ:
{
"mcpServers": {
"meilisearch": {
"command": "uvx",
"args": ["-n", "meilisearch-mcp"]
}
}
}
3️⃣ เริ่ม Meilisearch
# Using Docker (recommended)
docker run -d -p 7700:7700 getmeili/meilisearch:v1.28
# Or using Homebrew
brew install meilisearch
meilisearch
แค่นั้นเอง! ตอนนี้คุณสามารถถามผู้ช่วย AI ของคุณให้ค้นหาและจัดการข้อมูล Meilisearch ของคุณได้แล้ว! 🎉
📚 ตัวอย่าง
💬 พูดคุยกับผู้ช่วย AI ของคุณอย่างเป็นธรรมชาติ:
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!
🔍 ตัวอย่างการค้นหาขั้นสูง:
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
🔧 การติดตั้ง
ข้อกำหนดเบื้องต้น
- Python ≥ 3.10
- อินสแตนซ์ Meilisearch ที่กำลังทำงาน
- ไคลเอนต์ที่รองรับ MCP (Claude Desktop, เอเจนต์ OpenAI ฯลฯ)
จาก PyPI
pip install meilisearch-mcp
จากซอร์ส (สำหรับการพัฒนา)
# 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
เหมาะสำหรับสภาพแวดล้อมแบบคอนเทนเนอร์ เช่น เวิร์กโฟลว์ n8n!
จาก Docker Hub
# 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
สร้างจากซอร์ส
# 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
สำหรับเวิร์กโฟลว์ n8n คุณสามารถใช้อิมเมจ Docker ได้โดยตรงในการตั้งค่าของคุณ:
meilisearch-mcp:
image: getmeili/meilisearch-mcp:latest
environment:
- MEILI_HTTP_ADDR=http://meilisearch:7700
- MEILI_MASTER_KEY=masterKey
🛠️ คุณสามารถทำอะไรได้บ้าง?
🔗 การจัดการการเชื่อมต่อ
- ดูการตั้งค่าการเชื่อมต่อปัจจุบัน
- สลับระหว่างอินสแตนซ์ Meilisearch แบบไดนามิก
- อัปเดตคีย์ API ได้ทันที
📁 การดำเนินการดัชนี
- สร้างดัชนีใหม่พร้อมคีย์หลักที่กำหนดเอง
- แสดงรายการดัชนีทั้งหมดพร้อมสถิติ
- ลบดัชนีและข้อมูลของดัชนี
- รับเมตริกโดยละเอียดของดัชนี
📄 การจัดการเอกสาร
- เพิ่มหรืออัปเดตเอกสาร
- ดึงเอกสารพร้อมการแบ่งหน้า
- นำเข้าข้อมูลเป็นชุด
🔍 ความสามารถในการค้นหา
- ค้นหาพร้อมตัวกรอง การเรียงลำดับ และแฟกซ์
- ค้นหาหลายดัชนี
- ค้นหาเชิงความหมายด้วยเวกเตอร์
- ค้นหาแบบไฮบริด (คีย์เวิร์ด + เชิงความหมาย)
⚙️ การตั้งค่าและการกำหนดค่า
- กำหนดค่ากฎการจัดอันดับ
- ตั้งค่าการทำแฟกซ์และการกรอง
- จัดการแอตทริบิวต์ที่ค้นหาได้
- ปรับแต่งความทนทานต่อการพิมพ์ผิด
🔐 ความปลอดภัย
- สร้างและจัดการคีย์ API
- ตั้งค่าการอนุญาตแบบละเอียด
- ติดตามการใช้งานคีย์
⚠️ หมายเหตุ: แม้ว่าคุณจะสามารถเพิ่มและอัปเดตโฮสต์และคีย์ API ได้โดยตรงในแชทเพื่อความสะดวก แต่วิธีนี้ได้รับการออกแบบมาสำหรับกรณีการใช้งานเพื่อการพัฒนาเป็นหลัก (เช่น การเชื่อมต่อกับหลายอินสแตนซ์ได้ทันที) วิธีนี้ไม่เป็นไปตามแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยของ MCP และไม่ควรใช้ในสภาพแวดล้อมการผลิตโดยไม่มีมาตรการป้องกันที่เหมาะสม
📊 การตรวจสอบและสุขภาพ
- การตรวจสอบสุขภาพ
- สถิติระบบ
- การติดตามงาน
- ข้อมูลเวอร์ชัน
🌍 ตัวแปรสภาพแวดล้อม
กำหนดค่าการเชื่อมต่อเริ่มต้น:
MEILI_HTTP_ADDR=http://localhost:7700 # Default Meilisearch URL
MEILI_MASTER_KEY=your_master_key # Optional: Default API key
💻 การพัฒนา
การตั้งค่าสภาพแวดล้อมการพัฒนา
-
เริ่ม Meilisearch:
docker run -d -p 7700:7700 getmeili/meilisearch:v1.28 -
ติดตั้ง dependencies สำหรับการพัฒนา:
uv pip install -r requirements-dev.txt -
รันการทดสอบ:
python -m pytest tests/ -v -
จัดรูปแบบโค้ด:
black src/ tests/
การทดสอบกับ MCP Inspector
npx @modelcontextprotocol/inspector python -m src.meilisearch_mcp
🤝 ชุมชนและการสนับสนุน
เรายินดีที่จะได้ยินจากคุณ! นี่คือวิธีขอความช่วยเหลือและเชื่อมต่อ:
- 💬 เข้าร่วม Discord ของเรา - พูดคุยกับชุมชน
- 🐛 รายงานปัญหา - พบข้อบกพร่อง? แจ้งให้เราทราบ!
- 💡 คำขอฟีเจอร์ - มีไอเดีย? เรากำลังรับฟัง!
- 📖 เอกสาร Meilisearch - เรียนรู้เพิ่มเติมเกี่ยวกับ Meilisearch
🤗 การมีส่วนร่วม
เรายินดีต้อนรับการมีส่วนร่วม! นี่คือวิธีเริ่มต้น:
- Fork repository
- สร้าง branch สำหรับฟีเจอร์ของคุณ (
git checkout -b feature/amazing-feature) - เขียนการทดสอบสำหรับการเปลี่ยนแปลงของคุณ
- ทำการเปลี่ยนแปลงและรันการทดสอบ
- จัดรูปแบบโค้ดของคุณด้วย
black - Commit การเปลี่ยนแปลงของคุณ (
git commit -m 'Add amazing feature') - Push ไปยัง branch ของคุณ (
git push origin feature/amazing-feature) - เปิด Pull Request
ดู แนวทางการมีส่วนร่วม ของเราเพื่อรายละเอียดเพิ่มเติม
📦 กระบวนการเผยแพร่
โปรเจกต์นี้ใช้การกำหนดเวอร์ชันและการเผยแพร่อัตโนมัติ เมื่อเวอร์ชันใน pyproject.toml เปลี่ยนแปลงบน branch main แพ็คเกจจะถูกเผยแพร่ไปยัง PyPI โดยอัตโนมัติ
ดูส่วน กระบวนการเผยแพร่ สำหรับคำแนะนำโดยละเอียด
📄 ลิขสิทธิ์
โปรเจกต์นี้อยู่ภายใต้สัญญาอนุญาต MIT License - ดูไฟล์ LICENSE สำหรับรายละเอียด
Meilisearch เป็นเครื่องมือค้นหาโอเพนซอร์สที่มอบประสบการณ์การค้นหาที่ยอดเยี่ยม
เรียนรู้เพิ่มเติมเกี่ยวกับ Meilisearch ได้ที่ meilisearch.com
📖 เอกสารฉบับเต็ม
เครื่องมือที่มีให้ใช้งาน
การจัดการการเชื่อมต่อ
get-connection-settings: ดู URL การเชื่อมต่อ Meilisearch ปัจจุบันและสถานะคีย์ APIupdate-connection-settings: อัปเดต URL และ/หรือคีย์ API เพื่อเชื่อมต่อกับอินสแตนซ์อื่น
การจัดการดัชนี
create-index: สร้างดัชนีใหม่พร้อมคีย์หลักที่ไม่บังคับlist-indexes: แสดงรายการดัชนีทั้งหมดที่มีdelete-index: ลบดัชนีที่มีอยู่และเอกสารทั้งหมดget-index-metrics: รับเมตริกโดยละเอียดสำหรับดัชนีเฉพาะ
การดำเนินการเอกสาร
get-documents: ดึงเอกสารจากดัชนีพร้อมการแบ่งหน้าadd-documents: เพิ่มหรืออัปเดตเอกสารในดัชนี
การค้นหา
search: ค้นหาที่ยืดหยุ่นข้ามดัชนีเดียวหรือหลายดัชนีพร้อมตัวเลือกการกรองและการเรียงลำดับ
การจัดการการตั้งค่า
get-settings: ดูการตั้งค่าปัจจุบันสำหรับดัชนีupdate-settings: อัปเดตการตั้งค่าดัชนี (การจัดอันดับ การทำแฟกซ์ ฯลฯ)
การจัดการคีย์ API
get-keys: แสดงรายการคีย์ API ทั้งหมดcreate-key: สร้างคีย์ API ใหม่พร้อมการอนุญาตเฉพาะdelete-key: ลบคีย์ API ที่มีอยู่
การจัดการงาน
get-task: รับข้อมูลเกี่ยวกับงานเฉพาะget-tasks: แสดงรายการงานพร้อมตัวกรองที่ไม่บังคับcancel-tasks: ยกเลิกงานที่รอดำเนินการหรืออยู่ในคิว
การตรวจสอบระบบ
health-check: การตรวจสอบสุขภาพพื้นฐานget-health-status: สถานะสุขภาพที่ครอบคลุมget-version: รับข้อมูลเวอร์ชัน Meilisearchget-stats: รับสถิติฐานข้อมูลget-system-info: รับข้อมูลระดับระบบ
การตั้งค่าการพัฒนา
ข้อกำหนดเบื้องต้น
-
เริ่มเซิร์ฟเวอร์ Meilisearch:
# 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 -
ติดตั้งเครื่องมือสำหรับการพัฒนา:
# 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
การรันการทดสอบ
โปรเจกต์นี้รวมการทดสอบการผสานรวมที่ครอบคลุมซึ่งตรวจสอบการทำงานของเครื่องมือ MCP:
# 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/
สำคัญ: การทดสอบต้องมีอินสแตนซ์ Meilisearch ที่ทำงานอยู่บน http://localhost:7700
คุณภาพโค้ด
# 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/
แนวทางการมีส่วนร่วม
- Fork และ clone repository
- ตั้งค่าสภาพแวดล้อมการพัฒนา ตามส่วนการตั้งค่าการพัฒนาด้านบน
- สร้าง branch สำหรับฟีเจอร์ จาก
main - เขียนการทดสอบก่อน หากเพิ่มฟังก์ชันใหม่ (การพัฒนาที่ขับเคลื่อนด้วยการทดสอบ)
- รันการทดสอบในเครื่อง เพื่อให้แน่ใจว่าการทดสอบทั้งหมดผ่านก่อนการ commit
- จัดรูปแบบโค้ด ด้วย Black และตรวจสอบคุณภาพโค้ด
- Commit การเปลี่ยนแปลง พร้อมข้อความ commit ที่สื่อความหมาย
- Push ไปยัง fork ของคุณ และสร้าง pull request
เวิร์กโฟลว์การพัฒนา
# 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
แนวทางการทดสอบ
- ฟีเจอร์ใหม่ทั้งหมดควรมีการทดสอบ
- การทดสอบควรผ่านก่อนส่ง PR
- ใช้ชื่อการทดสอบที่สื่อความหมายและ assertions ที่ชัดเจน
- ทดสอบทั้งกรณีสำเร็จและกรณีข้อผิดพลาด
- ตรวจสอบให้แน่ใจว่า Meilisearch กำลังทำงานก่อนรันการทดสอบ
กระบวนการเผยแพร่
โปรเจกต์นี้ใช้การกำหนดเวอร์ชันและการเผยแพร่อัตโนมัติไปยัง PyPI กระบวนการเผยแพร่ถูกออกแบบให้เรียบง่ายและเป็นอัตโนมัติ
การเผยแพร่ทำงานอย่างไร
-
การเผยแพร่อัตโนมัติ: เมื่อหมายเลขเวอร์ชันใน
pyproject.tomlเปลี่ยนแปลงบน branchmainGitHub Action จะ:- สร้างแพ็คเกจ Python
- เผยแพร่ไปยัง PyPI โดยใช้ trusted publishing
- สร้าง release ใหม่บน GitHub
-
การตรวจจับเวอร์ชัน: เวิร์กโฟลว์เปรียบเทียบเวอร์ชันปัจจุบันใน
pyproject.tomlกับ commit ก่อนหน้าเพื่อตรวจจับการเปลี่ยนแปลง -
การเผยแพร่ PyPI: ใช้การดำเนินการเผยแพร่อย่างเป็นทางการของ PyPA พร้อม trusted publishing (ไม่ต้องใช้คีย์ API ด้วยตนเอง)
การสร้าง Release ใหม่
ในการสร้าง release ใหม่ ให้ทำตามขั้นตอนเหล่านี้:
1. กำหนดหมายเลขเวอร์ชัน
ปฏิบัติตาม Semantic Versioning (MAJOR.MINOR.PATCH):
- PATCH (เช่น 0.4.0 → 0.4.1): การแก้ไขข้อบกพร่อง การอัปเดตเอกสาร การปรับปรุงเล็กน้อย
- MINOR (เช่น 0.4.0 → 0.5.0): ฟีเจอร์ใหม่ เครื่องมือ MCP ใหม่ การปรับปรุงที่สำคัญ
- MAJOR (เช่น 0.5.0 → 1.0.0): การเปลี่ยนแปลงที่ทำลายความเข้ากันได้ การเปลี่ยนแปลง API หลัก
2. อัปเดตเวอร์ชันและสร้าง PR
# 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. Merge ไปยัง Main
เมื่อ PR ได้รับการอนุมัติและ merge ไปยัง main GitHub Action จะดำเนินการโดยอัตโนมัติ:
- ตรวจจับการเปลี่ยนแปลงเวอร์ชัน
- สร้างแพ็คเกจ
- เผยแพร่ไปยัง PyPI ที่ https://pypi.org/p/meilisearch-mcp
- ทำให้เวอร์ชันใหม่พร้อมใช้งานผ่าน
pip install meilisearch-mcp
4. ตรวจสอบ Release
หลังจาก merge ให้ตรวจสอบ release:
# 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
ไฟล์เวิร์กโฟลว์การเผยแพร่
การเผยแพร่อัตโนมัติจัดการโดย .github/workflows/publish.yml ซึ่ง:
- ทำงานเมื่อมีการ push ไปยัง branch
main - ตรวจสอบว่าเวอร์ชัน
pyproject.tomlเปลี่ยนแปลงหรือไม่ - ใช้ Python 3.10 และเครื่องมือ build อย่างเป็นทางการ
- เผยแพร่โดยใช้ trusted publishing (ไม่ต้องใช้คีย์ API)
- ให้ผลลัพธ์โดยละเอียดสำหรับการดีบัก
การแก้ไขปัญหาการเผยแพร่
Release ไม่ถูกทริกเกอร์: ตรวจสอบว่าเวอร์ชันใน pyproject.toml มีการเปลี่ยนแปลงจริงระหว่างคอมมิต
Build ล้มเหลว: ตรวจสอบบันทึก GitHub Actions สำหรับข้อผิดพลาดในการสร้างแพ็กเกจ Python
การเผยแพร่ PyPI ล้มเหลว: ตรวจสอบชื่อแพ็กเกจและตรวจสอบว่าได้กำหนดค่า trusted publishing อย่างถูกต้อง
ความขัดแย้งของเวอร์ชัน: ตรวจสอบให้แน่ใจว่าหมายเลขเวอร์ชันใหม่ไม่เคยถูกใช้มาก่อนบน PyPI
เวอร์ชันสำหรับการพัฒนาเทียบกับเวอร์ชันสำหรับการผลิต
- การพัฒนา: ติดตั้งจากซอร์สโดยใช้
pip install -e . - การผลิต: ติดตั้งจาก PyPI โดยใช้
pip install meilisearch-mcp - เวอร์ชันเฉพาะ: ติดตั้งโดยใช้
pip install meilisearch-mcp==0.5.0