Seringkali, tidak. Untuk folder berisi kontrak, laporan, atau email, agen AI dengan alat pencarian teks penuh menemukan file yang tepat, membaca hanya bagian yang cocok dan mengutipnya, dan indeks berjalan secara lokal tanpa model embedding dan tanpa penyimpanan vektor. GroupDocs.Search.Mcp memberikan Claude Desktop, Claude Code, Cursor, atau Copilot alat itu dalam satu perintah Docker:
Indeks folder kontrak, lalu beri tahu saya kontrak mana yang menyebutkan penalti terminasi dan kutip klausulnya.
Versi langkah demi langkah dengan konfigurasi dan pemecahan masalah ada di dokumentasi: Cara mencari dokumen dengan agen AI menggunakan MCP.
Mengapa semua orang beralih ke embedding terlebih dahulu?
Karena “retrieval-augmented generation” muncul sebagai resep: memecah dokumen menjadi potongan, meng‑embed setiap potongan, menyimpan vektor‑vektornya, meng‑embed pertanyaan, mengambil potongan terdekat, dan menempelkannya ke dalam prompt. Itu berhasil, dan untuk pertanyaan yang tidak berbahasa seperti dokumen, itu adalah alat yang tepat. Namun itu adalah alur kerja dengan model embedding yang harus dipanggil, penyimpanan yang harus dijalankan, pemecahan yang harus disetel, dan pekerjaan re‑embedding setiap kali dokumen berubah. Untuk “kontrak mana dari 300 kontrak saya yang menyebutkan penalti terminasi”, mesin itu menjawab pertanyaan yang dapat dijawab langsung oleh indeks pencarian.
Bukti kini menyusul intuisi. Sebuah studi yang dipublikasikan di arXiv pada akhir 2025 (Keyword search is all you need) memberi agen hanya pencarian kata kunci dan regex pada sebuah folder dan mengukurnya melawan pipeline RAG standar: lebih dari 90 % skor RAG, tanpa basis data vektor, dan lebih cocok untuk koleksi yang sering berubah. Agen‑agen pemrograman sudah menunjukkan pola ini dalam praktik: mereka mencari dengan grep, menyempurnakan, dan mencari lagi.
Apa yang dilakukan agen sebagai gantinya?
Tiga panggilan. GroupDocs.Search.Mcp mengekspos delapan alat; loop membutuhkan tiga di antaranya:
user agent Search MCP server
| "Which contracts mention a termination penalty?" |
|---------------->| |
| |-- add_to_index ------------------------->| reads the
| | {"documentsPath":"contracts", | files once,
| | "indexName":"contracts"} | stores text
| |<- "5 document(s) added, 5 in the index" --|
| |-- search ------------------------------->|
| | {"query":"termination AND penalty"} |
| |<- {"documentsFound":3, "documents":[ ... | which files
| |-- get_text_fragments ------------------->|
| | {"query":"\"termination penalty\""} |
| |<- === contracts/acme-...-agreement.pdf ===| the passages
|<- "Two contracts carry one: Acme (3 monthly fees, 12.3), |
| Globex (50% of the remaining fees). Initech excludes it."|
add_to_index membaca file sekali dan menyimpan teks dalam indeks bernama di disk. search mengembalikan file yang cocok sebagai JSON dengan hitungan kemunculan. get_text_fragments mengembalikan setiap kecocokan dengan beberapa kata konteks, sehingga agen mengutip klausul alih‑alih memuat seluruh kontrak.
Berikut apa yang sebenarnya dikembalikan server dalam pengujian kami, terhadap lima kontrak sintetis:
-> search {"query":"termination AND penalty","indexName":"contracts"}
<- documentsFound 3: acme-master-services-agreement.pdf,
globex-consulting-agreement.docx, initech-nda.docx
-> get_text_fragments {"query":"\"termination penalty\"",...}
<- === contracts/acme-master-services-agreement.pdf (1 occurrence(s)) ===
…a termination penalty of three monthly fees applies, payable
within 30…
=== contracts/globex-consulting-agreement.docx (1 occurrence(s)) ===
…Early termination penalty: the Client pays 50 percent of the fees…
Perhatikan kontrak ketiga. NDA Initech cocok dengan termination AND penalty karena menyatakan “there is no fee and no penalty associated with termination”. Bagian tersebut yang membedakan kecocokan dari sekadar penyebutan, dan agen yang membaca bagian‑bagian itu menyatakannya. Itulah grounding: setiap klaim dalam jawaban menunjuk pada file dan kalimat yang dapat Anda buka.
Di mana masing‑masing pendekatan menang?
Pipeline embedding Pencarian teks penuh berbasis agen
------------------------------------- -------------------------------------
memecah, meng-embed, menyimpan dalam penyimpanan vektor add_to_index: indeks teks penuh lokal
meng-embed pertanyaan, mengambil k potongan teratas agen mencari, menyempurnakan, mencari lagi
menempelkan potongan ke dalam prompt get_text_fragments: kutipan bagian
meng-embed ulang saat dokumen berubah update_index membaca ulang apa yang berubah
memerlukan model embedding dan penyimpanan tidak ada panggilan model, tidak ada jaringan saat runtime
menyamakan makna; peringkat tidak transparan menyamakan kata; setiap hasil dapat dijelaskan
Pencarian teks penuh kalah ketika pertanyaan dan dokumen tidak berbagi kata: “kontrak mana yang berisiko bagi kami?” tidak memiliki kata kunci. Ia menang ketika kosakata berbagi, yang menggambarkan kebanyakan pertanyaan orang tentang dokumen mereka sendiri: nama klausul, produk, pelanggan, nomor faktur, rentang tanggal. Ketika kueri tidak menemukan apa‑apa, agen mencoba renewal OR renews, atau pencocokan fuzzy, seperti yang dilakukan orang. Server membantu: kueri dua kata tanpa kutipan tidak cocok apa‑apa di GroupDocs.Search, dan hasil kosong membawa hint yang memberi tahu agen untuk mengutip frasa tersebut.
Alat mana untuk pertanyaan mana?
| Pengguna menanyakan | Agen memanggil |
|---|---|
| “Indeks folder ini” | add_to_index |
| “File mana yang menyebut X?” | search |
| “Apa yang dikatakan tentang X?” | get_text_fragments |
| “File berubah, segarkan” | update_index |
| “Lupakan folder draft” | remove_from_index |
| “Apa yang ada di indeks?” | get_index_info |
| “Mulai indeks terpisah” | create_index |
| “Mengapa hanya 10 hasil?” | get_license_status |
Indeks memahami 82 format, termasuk PDF, Office, OpenDocument, HTML, dan arsip email (PST, OST, MSG, EML) beserta lampirannya.
Bagaimana cara menjalankannya?
claude mcp add groupdocs-search -- docker run --rm -i \
-v /path/to/documents:/data ghcr.io/groupdocs-search/search-net-mcp:latest
Cursor, Claude Desktop, VS Code dengan GitHub Copilot, dan klien lain menggunakan kontainer yang sama dalam file konfigurasi mereka masing‑masing: Daftar di klien AI. Pada Linux tambahkan --user "$(id -u):$(id -g)" agar kontainer dapat menulis indeks ke folder Anda. Server menjalankan mesin GroupDocs.Search 26.10, yang format indeks barunya membuat indeks lebih kecil dan mengurangi penggunaan memori sekitar setengahnya (catatan rilis).
Batasan jujur
- Dalam mode evaluasi sebuah indeks menampung maksimal 100 dokumen dan pencarian mengembalikan maksimal 10; setiap respons menyebutkan hal itu. Panggil
get_license_statusterlebih dahulu. - Ini adalah pencarian teks penuh, bukan pencarian semantik: ia mencocokkan kata, bukan makna.
- Tanpa OCR: PDF yang dipindai tanpa lapisan teks hanya diindeks berdasarkan properti filenya.
- Hanya tersedia sebagai gambar Docker (alat terpaket melebihi batas ukuran NuGet).
FAQ
Apakah Claude dapat mencari dokumen lokal saya tanpa mengunggahnya?
Ya. Server berjalan dalam kontainer di mesin Anda dan membaca folder yang Anda mount; hanya bagian yang dikutip agen yang sampai ke model.
Apakah ini RAG?
Ini bersifat retrieval‑augmented, tetapi berbasis agen: model memutuskan apa yang harus dicari dan kapan sudah cukup, menggunakan indeks teks penuh alih‑alih embedding.
Apa yang terjadi ketika dokumen saya berubah?
Minta agen untuk menyegarkan. update_index membaca ulang hanya file yang berubah, ditambahkan, atau dihapus.
Selami lebih dalam
- Dokumentasi, panduan kanonik: Cara mencari dokumen dengan agen AI menggunakan MCP
- Pusat dokumentasi: GroupDocs.Search MCP Server
- Untuk agen pemrograman: grep can’t read PDF: give your coding agent a document index
- Terkait: Why an AI agent should not read 300 contracts to answer one question
- Terkait: Grounded answers from your files: quote the passage, not the model’s memory
- Terkait: Search your email archive with an AI agent: PST, MSG, EML and the attachments inside
- Terkait: Project memory for AI agents: one index per project, kept current
- Model on‑premise dan keamanan: 3 architectures for AI document processing, and the one that keeps files inside your network
- Rilis mesin: GroupDocs.Search for .NET 26.10 – October 2026 Release Highlights
- Pertanyaan: Forum GroupDocs Search
- Sumber: GroupDocs.Search.Mcp di GitHub