Kagi Search MCP Server

आधिकारिक

वेब पर Kagi के सर्च API का उपयोग करके खोजें।

दस्तावेज़

Kagi MCP सर्वर

Kagi API द्वारा समर्थित एक MCP सर्वर। यह MCP-संगत क्लाइंट्स को खोज और निष्कर्षण उपकरण प्रदान करता है।

उपकरण

  • kagi_search_fetch - वैकल्पिक पृष्ठ अर्क, फ़िल्टर और Kagi लेंस के साथ वेब, समाचार, वीडियो, पॉडकास्ट और छवि खोज।
  • kagi_extract - किसी पृष्ठ की संपूर्ण सामग्री को मार्कडाउन के रूप में प्राप्त करें।

नोट: पिछले kagi_fastgpt और kagi_summarizer उपकरण हटा दिए गए हैं। दोनों को भविष्य के रिलीज़ में वापस लाने की योजना है।

होस्टेड सर्वर

हम https://mcp.kagi.com/mcp पर एक होस्टेड MCP सर्वर चलाते हैं — किसी इंस्टॉलेशन की आवश्यकता नहीं है। किसी भी HTTP-सक्षम MCP क्लाइंट को इससे जोड़ें और अपनी Kagi API कुंजी से प्रमाणित करें।

OAuth2 अभी समर्थित नहीं है (यह हमारे रोडमैप पर है), इसलिए अभी के लिए डैशबोर्ड से अपनी API कुंजी प्राप्त करें और इसे Bearer HTTP प्रमाणीकरण के माध्यम से पास करें।

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

इसे स्वयं चलाना पसंद करते हैं? स्थानीय uvx इंस्टॉल के लिए क्लाइंट सेटअप देखें, या अपने बुनियादी ढांचे पर HTTP सर्वर होस्ट करने के लिए सेल्फ-होस्टिंग देखें।

आवश्यकताएँ

  • KAGI_API_KEY में एक Kagi API कुंजी।
  • अनुशंसित uvx इंस्टॉल पथ के लिए uv

uv इंस्टॉल करें:

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

Windows:

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

क्लाइंट सेटअप

Codex CLI

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

Codex MCP कॉन्फ़िगरेशन को ~/.codex/config.toml में लिखता है।

Claude Desktop

पहले uv इंस्टॉल करें।

MacOS/Linux:

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

Windows:

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

फिर अपने Claude Desktop कॉन्फ़िग में (Settings -> Developer -> Edit Config के माध्यम से पाया जाता है):

{
  "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

Claude Desktop के समान mcpServers JSON का उपयोग करके अपनी Kiro MCP कॉन्फ़िग फ़ाइल (वैश्विक के लिए ~/.kiro/settings/mcp.json, या प्रोजेक्ट-स्कोप्ड के लिए .kiro/settings/mcp.json) में जोड़ें। अधिक विवरण के लिए Kiro MCP दस्तावेज़ीकरण देखें।

OpenCode

~/.config/opencode/opencode.json में OpenCode कॉन्फ़िगरेशन फ़ाइल संपादित करें और निम्नलिखित जोड़ें:

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

उपयोग के उदाहरण

  • खोजें: Who was Time's 2024 person of the year?
  • निकालें: extract the full content of https://en.wikipedia.org/wiki/Model_Context_Protocol

कॉन्फ़िगरेशन

पर्यावरण चरविवरण
KAGI_API_KEYआवश्यक Kagi API कुंजी।
FASTMCP_LOG_LEVELलॉगिंग स्तर, उदाहरण के लिए ERROR
KAGI_SEARCH_TIMEOUTसेकंड में खोज टाइमआउट। डिफ़ॉल्ट 10 है।
KAGI_EXTRACT_TIMEOUTसेकंड में निष्कर्षण टाइमआउट। डिफ़ॉल्ट 30 है।
KAGI_MAX_RETRIESपहले अनुरोध के बाद अधिकतम पुनर्प्रयास प्रयास। डिफ़ॉल्ट 2 है; पुनर्प्रयास अक्षम करने के लिए 0 सेट करें।
KAGI_HIDDEN_PARAMSLLM-फेसिंग स्कीमा से छिपाने के लिए अल्पविराम-पृथक खोज पैरामीटर।

छिपाने योग्य खोज पैरामीटर:

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

उदाहरण:

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

स्थानीय विकास

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

stdio पर स्थानीय रूप से चलाएँ:

KAGI_API_KEY=<YOUR_API_KEY_HERE> uv run kagimcp

स्ट्रीमेबल HTTP ट्रांसपोर्ट के साथ चलाएँ:

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

सेल्फ-होस्टिंग

HTTP मोड बहु-किरायेदार है: प्रत्येक अनुरोध सर्वर-वाइड env var के बजाय Authorization: Bearer <key> हेडर के माध्यम से अपनी API कुंजी प्रदान करता है, इसलिए एक इंस्टेंस कई उपयोगकर्ताओं की सेवा कर सकता है। रेपो एक Dockerfile शिप करता है जो PyPI से एक पिन किया हुआ kagimcp इंस्टॉल करता है और इसे HTTP मोड में चलाता है। कंटेनर $PORT का सम्मान करता है इसलिए यह किसी भी प्लेटफ़ॉर्म पर काम करता है जो एक इंजेक्ट करता है (Railway, Render, Cloud Run, Fly.io, आदि)।

स्थानीय रूप से बनाएँ और चलाएँ:

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

स्मोक टेस्ट:

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"}'

उत्पादन में संस्करण बढ़ाने के लिए, Dockerfile में पिन संपादित करें और पुनः तैनात करें।

डिबगिंग

प्रकाशित पैकेज का निरीक्षण करें:

npx @modelcontextprotocol/inspector uvx kagimcp

स्थानीय चेकआउट का निरीक्षण करें:

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

इंस्पेक्टर आमतौर पर http://localhost:5173 पर उपलब्ध होता है।

प्री-रिलीज़ निर्देश

यदि प्री-रिलीज़ बिल्ड का उपयोग कर रहे हैं, तो वही इंस्टॉलेशन निर्देश लागू होते हैं, लेकिन uvx kagimcp के बजाय uvx --prerelease allow --from kagimcp==1.0.0rc2 kagimcp का उपयोग करें (1.0.0rc2 को उस संस्करण से बदलें जिसे आप इंस्टॉल करना चाहते हैं)।