• Tentang Milvus
  • Memulai
  • Konsep
  • Panduan Pengguna
  • Impor Data
  • Alat AI
  • Panduan Administrasi
  • Peralatan
  • Integrasi
  • Tutorial
  • Pertanyaan Umum
  • API Reference

MCP + Milvus: Menghubungkan AI dengan Basis Data Vektor

Pendahuluan

Model Context Protocol (MCP) adalah protokol terbuka yang memungkinkan aplikasi AI, seperti Claude dan Cursor, untuk berinteraksi dengan sumber data eksternal dan alat bantu dengan lancar. Baik Anda membangun aplikasi AI khusus, mengintegrasikan alur kerja AI, atau meningkatkan antarmuka obrolan, MCP menyediakan cara terstandardisasi untuk menghubungkan model bahasa besar (LLM) dengan data kontekstual yang relevan.

Tutorial ini memandu Anda dalam menyiapkan server MCP untuk Milvus, yang memungkinkan aplikasi AI melakukan pencarian vektor, mengelola koleksi, dan mengambil data menggunakan perintah bahasa alami-tanpamenulis kueri basis data khusus.

Prasyarat

Sebelum menyiapkan server MCP, pastikan Anda memiliki:

  • Python 3.10 atau lebih tinggi
  • Instance Milvus yang sedang berjalan
  • uv (disarankan untuk menjalankan server)

Memulai

Cara yang disarankan untuk menggunakan server MCP ini adalah menjalankannya secara langsung dengan uv tanpa instalasi. Ini adalah bagaimana Claude Desktop dan Cursor dikonfigurasikan untuk menggunakannya dalam contoh di bawah ini.

Jika Anda ingin mengkloning repositori:

git clone https://github.com/zilliztech/mcp-server-milvus.git
cd mcp-server-milvus

Maka Anda dapat menjalankan server secara langsung:

uv run src/mcp_server_milvus/server.py --milvus-uri http://localhost:19530

Aplikasi yang Didukung

Server MCP ini dapat digunakan dengan berbagai aplikasi AI yang mendukung Protokol Konteks Model, seperti:

  • Claude Desktop: Aplikasi desktop Anthropic untuk Claude
  • Kursor: Editor kode bertenaga AI dengan dukungan MCP dalam fitur Composer-nya
  • Klien MCP khusus lainnya Aplikasi apa pun yang mengimplementasikan spesifikasi klien MCP

Menggunakan MCP dengan Claude Desktop

  1. Instal Claude Desktop.
  2. Buka file konfigurasi Claude:
    • Pada macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  3. Tambahkan konfigurasi berikut:
{
  "mcpServers": {
    "milvus": {
      "command": "/PATH/TO/uv",
      "args": [
        "--directory",
        "/path/to/mcp-server-milvus/src/mcp_server_milvus",
        "run",
        "server.py",
        "--milvus-uri",
        "http://localhost:19530"
      ]
    }
  }
}
  1. Mulai ulang Claude Desktop untuk menerapkan perubahan.

Menggunakan MCP dengan Cursor

Cursor juga mendukung alat MCP melalui fitur Agen di Composer. Anda dapat menambahkan server MCP Milvus ke Cursor dengan dua cara:

Opsi 1: Menggunakan UI Pengaturan Kursor

  1. Buka Cursor SettingsFeaturesMCP.
  2. Klik + Add New MCP Server.
  3. Isi:
    • Ketik: stdio
    • Nama: milvus
    • Perintah:
      /PATH/TO/uv --directory /path/to/mcp-server-milvus/src/mcp_server_milvus run server.py --milvus-uri http://127.0.0.1:19530
      
    • ⚠️ Tip: Gunakan 127.0.0.1 dan bukan localhost untuk menghindari potensi masalah resolusi DNS.
  1. Buat berkas .cursor/mcp.json di direktori root proyek Anda:
{
  "mcpServers": {
    "milvus": {
      "command": "/PATH/TO/uv",
      "args": [
        "--directory",
        "/path/to/mcp-server-milvus/src/mcp_server_milvus",
        "run",
        "server.py",
        "--milvus-uri",
        "http://127.0.0.1:19530"
      ]
    }
  }
}
  1. Mulai ulang kursor untuk menerapkan konfigurasi.

Setelah menambahkan server, Anda mungkin perlu menekan tombol refresh pada pengaturan MCP untuk mengisi daftar alat. Composer Agent akan secara otomatis menggunakan alat Milvus jika relevan dengan pertanyaan Anda.

Memverifikasi Integrasi

Untuk memastikan server MCP telah diatur dengan benar:

Untuk Kursor

  1. Buka Cursor SettingsFeaturesMCP.
  2. Konfirmasikan bahwa "Milvus" muncul dalam daftar server MCP.
  3. Periksa apakah alat Milvus (misalnya, milvus_list_collections, milvus_vector_search) terdaftar.
  4. Jika muncul kesalahan, lihat bagian Pemecahan Masalah di bawah ini.

Alat Server MCP untuk Milvus

Server MCP ini menyediakan beberapa alat untuk mencari, menanyakan, dan mengelola data vektor di Milvus. Untuk lebih jelasnya, silakan lihat dokumentasi mcp-server-milvus.

🔍 Alat Pencarian dan Kueri

  • milvus-text-search → Mencari dokumen dengan menggunakan pencarian teks lengkap.
  • milvus-vector-search → Melakukan pencarian kemiripan vektor pada sebuah koleksi.
  • milvus-hybrid-search → Melakukan pencarian hibrida yang menggabungkan kemiripan vektor dan penyaringan atribut.
  • milvus-multi-vector-search → Melakukan pencarian kemiripan vektor dengan beberapa vektor kueri.
  • milvus-query → Kueri koleksi menggunakan ekspresi filter.
  • milvus-count → Menghitung entitas dalam koleksi.

📁 Manajemen Koleksi

  • milvus-list-collections → Membuat daftar semua koleksi dalam database.
  • milvus-collection-info → Mendapatkan informasi rinci tentang koleksi.
  • milvus-get-collection-stats → Mendapatkan statistik tentang koleksi.
  • milvus-create-collection → Membuat koleksi baru dengan skema tertentu.
  • milvus-load-collection → Memuat koleksi ke dalam memori untuk pencarian dan kueri.
  • milvus-release-collection → Melepaskan koleksi dari memori.
  • milvus-get-query-segment-info → Mendapatkan informasi tentang segmen kueri.
  • milvus-get-collection-loading-progress → Mendapatkan kemajuan pemuatan koleksi.

📊 Operasi Data

  • milvus-insert-data → Menyisipkan data ke dalam koleksi.
  • milvus-bulk-insert → Menyisipkan data dalam kelompok untuk kinerja yang lebih baik.
  • milvus-upsert-data → Meng-upsert data ke dalam koleksi (menyisipkan atau memperbarui jika ada).
  • milvus-delete-entities → Menghapus entitas dari koleksi berdasarkan ekspresi filter.
  • milvus-create-dynamic-field → Menambahkan bidang dinamis ke koleksi yang sudah ada.

⚙️ Manajemen Indeks

  • milvus-create-index → Membuat indeks pada bidang vektor.
  • milvus-get-index-info → Mendapatkan informasi tentang indeks dalam koleksi.

Variabel Lingkungan

  • MILVUS_URI → URI server Milvus (dapat ditetapkan sebagai pengganti --milvus-uri).
  • MILVUS_TOKEN → Token otentikasi opsional.
  • MILVUS_DB → Nama basis data (standarnya adalah "default").

Pengembangan

Untuk menjalankan server secara langsung:

uv run server.py --milvus-uri http://localhost:19530

Contoh

Menggunakan Claude Desktop

Contoh 1: Mendaftar Koleksi

What are the collections I have in my Milvus DB?

Claude kemudian akan menggunakan MCP untuk memeriksa informasi ini di Milvus DB.

I'll check what collections are available in your Milvus database.

> View result from milvus-list-collections from milvus (local)

Here are the collections in your Milvus database:

1. rag_demo
2. test
3. chat_messages
4. text_collection
5. image_collection
6. customized_setup
7. streaming_rag_demo

Contoh 2: Mencari Dokumen

Find documents in my text_collection that mention "machine learning"

Claude akan menggunakan kemampuan pencarian teks lengkap dari Milvus untuk menemukan dokumen yang relevan:

I'll search for documents about machine learning in your text_collection.

> View result from milvus-text-search from milvus (local)

Here are the documents I found that mention machine learning:
[Results will appear here based on your actual data]

Menggunakan Kursor

Contoh: Membuat Koleksi

Di dalam Cursor's Composer, Anda dapat bertanya:

Create a new collection called 'articles' in Milvus with fields for title (string), content (string), and a vector field (128 dimensions)

Cursor akan menggunakan server MCP untuk menjalankan operasi ini:

I'll create a new collection called 'articles' with the specified fields.

> View result from milvus-create-collection from milvus (local)

Collection 'articles' has been created successfully with the following schema:
- title: string
- content: string
- vector: float vector[128]

Pemecahan masalah

Masalah Umum

Kesalahan Koneksi

Jika Anda melihat kesalahan seperti "Gagal menyambung ke server Milvus":

  1. Pastikan instans Milvus Anda berjalan: docker ps (jika menggunakan Docker)
  2. Periksa URI yang benar dalam konfigurasi Anda
  3. Pastikan tidak ada aturan firewall yang memblokir koneksi
  4. Coba gunakan 127.0.0.1 alih-alih localhost pada URI

Masalah Autentikasi

Jika Anda melihat kesalahan autentikasi:

  1. Verifikasi MILVUS_TOKEN Anda sudah benar
  2. Periksa apakah instans Milvus Anda memerlukan autentikasi
  3. Pastikan Anda memiliki izin yang benar untuk operasi yang ingin Anda lakukan

Alat Tidak Ditemukan

Jika alat MCP tidak muncul di Claude Desktop atau Kursor:

  1. Mulai ulang aplikasi
  2. Periksa log server untuk mengetahui adanya kesalahan
  3. Pastikan server MCP berjalan dengan benar
  4. Tekan tombol refresh pada pengaturan MCP (untuk Kursor)

Mendapatkan Bantuan

Jika Anda terus mengalami masalah:

  1. Periksa Masalah GitHub untuk masalah serupa
  2. Bergabunglah dengan Komunitas Zilliz Discord untuk mendapatkan dukungan
  3. Ajukan masalah baru dengan informasi rinci tentang masalah Anda

Kesimpulan

Dengan mengikuti tutorial ini, Anda sekarang memiliki server MCP yang berjalan, memungkinkan pencarian vektor bertenaga AI di Milvus. Baik Anda menggunakan Claude Desktop atau Cursor, Anda sekarang dapat melakukan kueri, mengelola, dan mencari database Milvus Anda menggunakan perintah bahasa alami - tanpamenulis kode database!