Kagi Search

resmi

Cari web menggunakan API pencarian Kagi

Apa yang bisa Anda lakukan dengan Kagi Search MCP?

  • Cari web dengan Kagi — minta hasil web, berita, video, podcast, atau gambar dengan ekstrak halaman dan filter opsional melalui kagi_search_fetch.
  • Ekstrak konten halaman sebagai markdown — dapatkan konten bersih lengkap dari URL apa pun menggunakan kagi_extract.
  • Terapkan lensa Kagi pada pencarian — persempit hasil berdasarkan domain, jenis file, atau rentang waktu menggunakan parameter lensa dan filter pada kagi_search_fetch.

Dokumentasi

Server MCP Kagi

Sebuah server MCP yang didukung oleh API Kagi. Server ini menyediakan alat pencarian dan ekstraksi untuk klien yang kompatibel dengan MCP.

Alat

  • kagi_search_fetch - pencarian web, berita, video, podcast, dan gambar dengan ekstrak halaman opsional, filter, dan lensa Kagi.
  • kagi_extract - mengambil konten lengkap halaman sebagai markdown.

Catatan: Alat kagi_fastgpt dan kagi_summarizer sebelumnya telah dihapus. Keduanya direncanakan akan kembali di rilis mendatang.

Server Hosted

Kami menjalankan server MCP hosted di https://mcp.kagi.com/mcp — tidak perlu instalasi. Arahkan klien MCP berkemampuan HTTP ke sana dan autentikasi dengan kunci API Kagi Anda.

OAuth2 belum didukung (ada di peta jalan kami), jadi untuk saat ini ambil kunci API dari dasbor dan berikan melalui autentikasi HTTP Bearer.

Contoh dengan Claude Code:

claude mcp add kagi https://mcp.kagi.com/mcp --transport http --header "Authorization: Bearer $(read -sp 'API key: ' k; echo $k)" --scope user

Lebih suka menjalankannya sendiri? Lihat Pengaturan Klien untuk instalasi uvx lokal, atau Self-Hosting untuk menghosting server HTTP di infrastruktur Anda sendiri.

Persyaratan

  • Kunci API Kagi di KAGI_API_KEY.
  • uv untuk jalur instalasi uvx yang direkomendasikan.

Instal uv:

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Pengaturan Klien

Codex CLI

codex mcp add kagi --env KAGI_API_KEY=<YOUR_API_KEY_HERE> -- uvx kagimcp

Codex menulis konfigurasi MCP ke ~/.codex/config.toml.

Claude Desktop

Instal uv terlebih dahulu.

MacOS/Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Kemudian di konfigurasi Claude Desktop Anda (ditemukan melalui Pengaturan -> Pengembang -> Edit Konfigurasi):

{
  "mcpServers": {
    "kagi": {
      "command": "uvx",
      "args": ["kagimcp"],
      "env": {
        "KAGI_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Claude Code

claude mcp add kagi -e KAGI_API_KEY="YOUR_API_KEY_HERE" -- uvx kagimcp

Smithery

npx -y @smithery/cli install kagimcp --client claude

Kiro

Tambahkan ke file konfigurasi MCP Kiro Anda (~/.kiro/settings/mcp.json untuk global, atau .kiro/settings/mcp.json untuk lingkup proyek) menggunakan JSON mcpServers yang sama seperti Claude Desktop. Lihat dokumentasi MCP Kiro untuk detail lebih lanjut.

OpenCode

Edit file konfigurasi OpenCode di ~/.config/opencode/opencode.json dan tambahkan yang berikut:

{
  "mcp": {
    "kagi": {
      "type": "local",
      "command": ["uvx", "kagimcp"],
      "enabled": true,
      "environment": {
        "KAGI_API_KEY": "<YOUR_API_KEY_HERE>"
      }
    }
  }
}

Contoh Penggunaan

  • Pencarian: Who was Time's 2024 person of the year?
  • Ekstrak: extract the full content of https://en.wikipedia.org/wiki/Model_Context_Protocol

Konfigurasi

Variabel lingkunganDeskripsi
KAGI_API_KEYKunci API Kagi yang diperlukan.
FASTMCP_LOG_LEVELTingkat pencatatan, misalnya ERROR.
KAGI_SEARCH_TIMEOUTWaktu tunggu pencarian dalam detik. Default ke 10.
KAGI_EXTRACT_TIMEOUTWaktu tunggu ekstrak dalam detik. Default ke 30.
KAGI_MAX_RETRIESPercobaan ulang maksimum setelah permintaan pertama. Default ke 2; atur 0 untuk menonaktifkan percobaan ulang.
KAGI_HIDDEN_PARAMSParameter pencarian yang dipisahkan koma untuk disembunyikan dari skema yang menghadap LLM.

Parameter pencarian yang dapat disembunyikan:

workflow, extract_count, limit, include_domains, exclude_domains, time_relative, after, before, file_type, lens_id

Contoh:

KAGI_HIDDEN_PARAMS="extract_count,after,before,time_relative,include_domains,exclude_domains"

Pengembangan Lokal

git clone https://github.com/kagisearch/kagimcp.git
cd kagimcp
uv sync

Jalankan secara lokal melalui stdio:

KAGI_API_KEY=<YOUR_API_KEY_HERE> uv run kagimcp

Jalankan dengan transport HTTP streamable:

KAGI_API_KEY=<YOUR_API_KEY_HERE> uv run kagimcp --http --host 0.0.0.0 --port 8000

Self-Hosting

Mode HTTP bersifat multi-tenant: setiap permintaan menyediakan kunci API-nya melalui header Authorization: Bearer <key> alih-alih variabel lingkungan server-wide, sehingga satu instance dapat melayani banyak pengguna. Repo ini menyertakan Dockerfile yang menginstal kagimcp yang disematkan dari PyPI dan menjalankannya dalam mode HTTP. Kontainer menghormati $PORT sehingga berfungsi di platform apa pun yang menyuntikkannya (Railway, Render, Cloud Run, Fly.io, dll.).

Bangun dan jalankan secara lokal:

docker build -t kagimcp-hosted .
docker run --rm -p 8000:8000 kagimcp-hosted

Uji asap:

curl -sL http://127.0.0.1:8000/mcp -X POST \
  -H "authorization: Bearer $KAGI_API_KEY" \
  -H "content-type: application/json" \
  -H "accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Untuk meningkatkan versi di produksi, edit pin di Dockerfile dan deploy ulang.

Debugging

Periksa paket yang diterbitkan:

npx @modelcontextprotocol/inspector uvx kagimcp

Periksa checkout lokal:

npx @modelcontextprotocol/inspector uv --directory /ABSOLUTE/PATH/TO/kagimcp run kagimcp

Inspektur biasanya tersedia di http://localhost:5173.

Instruksi Pra-rilis

Jika menggunakan build pra-rilis, instruksi instalasi yang sama berlaku, tetapi gunakan uvx --prerelease allow --from kagimcp==1.0.0rc2 kagimcp alih-alih uvx kagimcp (ganti 1.0.0rc2 dengan versi apa pun yang ingin Anda instal).