# Server MCP pencarian Google untuk Claude Desktop, Cursor, dan klien MCP lain

> Tambahkan pencarian Google ke Claude Desktop, Claude Code, Cursor, dan klien MCP lain: server MCP Python 40 baris di atas SerpCrypto SERP API.

- URL: https://serpcrypto.com/id/docs/mcp/
- Terakhir diperbarui: 2026-10-22
- Penerbit: SerpCrypto (https://serpcrypto.com)

Beri klien MCP mana pun sebuah tool `google_search` yang mengembalikan hasil Google secara langsung. Server ini adalah satu file Python yang Anda jalankan sendiri; server memanggil API SerpCrypto dan mengembalikan teks ringkas yang bisa dibaca model.

**Jawaban singkat — Bagaimana cara menambahkan pencarian Google ke Claude Desktop atau Cursor dengan server MCP?**

Simpan server Python 40 baris di bawah, pasang `mcp[cli]` dan `httpx`, lalu daftarkan di pengaturan MCP klien Anda dengan **API key SerpCrypto** di `env`. Klien kemudian mendapat tool `google_search` yang mengembalikan hasil Google secara langsung. Setiap pemanggilan tool adalah satu pencarian dengan biaya 1 kredit, mulai dari US$0,30/1K pencarian; kredit dibayar dengan kripto tanpa KYC.

## Sekilas tentang server MCP

| Atribut | Nilai |
| --- | --- |
| Bahasa | Python 3.10+ dengan SDK resmi `mcp` (FastMCP) dan `httpx` |
| Transport | stdio: klien menjalankan skrip dan berkomunikasi dengannya |
| Tool | `google_search(query, gl, hl, num_results)` |
| Output | Teks AI Overview jika ditampilkan, lalu judul, tautan, dan snippet per hasil |
| API key | Environment variable `SERPCRYPTO_API_KEY`, diatur di konfigurasi klien |
| Biaya | 1 kredit per pemanggilan tool yang berhasil; error gratis |

## Apa yang dilakukan server ini?

Server ini mengekspos satu tool, `google_search`, melalui Model Context Protocol. Saat model memanggilnya, server mengirim satu permintaan ke `https://serpcrypto.com/api/v1/search`, lalu mengubah JSON menjadi teks singkat: AI Overview jika Google menampilkannya, dan hasil teratas dengan judul, tautan, dan snippet.

Teks singkat itu penting. Halaman hasil lengkap dalam JSON itu panjang, dan setiap karakter yang dikirim kembali ke model memakai context. Server menyimpan hingga sepuluh hasil dan memotong overview pada 800 karakter; ubah batas tersebut di kode jika klien Anda punya ruang lebih.

Ini kode yang bisa di-copy-paste, bukan paket yang dipublikasikan: tidak ada paket MCP SerpCrypto resmi untuk dipasang. File ini milik Anda dan Anda bisa menambahkan tool, misalnya untuk `engine=google_news`.

*serpcrypto_mcp.py*

```python
"""serpcrypto_mcp.py: an MCP server that gives AI clients a Google search tool.

Install once:  pip install "mcp[cli]" httpx
Run by your MCP client over stdio; the API key comes from the environment.
"""
import os

import httpx
from mcp.server.fastmcp import FastMCP

API_URL = "https://serpcrypto.com/api/v1/search"
mcp = FastMCP("serpcrypto-search")


@mcp.tool()
async def google_search(query: str, gl: str = "us", hl: str = "en", num_results: int = 5) -> str:
    """Search Google and return the top results (title, link, snippet) and the AI Overview text if any.

    gl is a two-letter country code (us, gb, de...), hl a language code (en, de, pt-BR...).
    Each call uses one SerpCrypto search credit.
    """
    headers = {"Authorization": "Bearer " + os.environ["SERPCRYPTO_API_KEY"]}
    params = {"q": query, "gl": gl, "hl": hl}
    async with httpx.AsyncClient(timeout=90) as client:
        r = await client.get(API_URL, params=params, headers=headers)
    if r.status_code != 200:
        return f"Search failed with HTTP {r.status_code}: {r.text[:300]}"
    data = r.json()
    lines = []
    overview = data.get("ai_overview") or {}
    if overview.get("text"):
        lines.append("AI Overview: " + overview["text"][:800])
    for item in data.get("organic_results", [])[: max(1, min(num_results, 10))]:
        lines.append(f"{item['position']}. {item['title']}\n{item['link']}\n{item.get('snippet', '')}")
    return "\n\n".join(lines) or "No results."


if __name__ == "__main__":
    mcp.run()  # stdio transport
```

## Mengapa tool ini bernama google_search dan bukan web_search?

Beberapa klien sudah menyertakan tool bernama `web_search` yang memakai provider mereka sendiri. Nama yang berbeda menghindari konflik dan memberi tahu model apa yang didapat: hasil Google untuk negara dan bahasa yang dipilihnya. Docstring adalah deskripsi yang dibaca model, jadi docstring itu menyebutkan parameter dan biaya satu pemanggilan.

## Bagaimana cara menambahkannya ke Claude Desktop?

Buka file konfigurasi, `claude_desktop_config.json`: di macOS letaknya di `~/Library/Application Support/Claude/`, di Windows di `%APPDATA%\Claude\`. Tambahkan server di bawah `mcpServers`, dengan path absolut ke skrip dan API key Anda di `env`, lalu mulai ulang Claude Desktop.

Jika `python` tidak ada di path yang dilihat Claude Desktop, gunakan path lengkap ke interpreter, misalnya yang ada di dalam virtual environment Anda.

*claude_desktop_config.json*

```json
{
  "mcpServers": {
    "serpcrypto-search": {
      "command": "python",
      "args": ["/absolute/path/to/serpcrypto_mcp.py"],
      "env": {
        "SERPCRYPTO_API_KEY": "paste-your-key-here"
      }
    }
  }
}
```

## Bagaimana cara menambahkannya ke Claude Code dan Cursor?

Di Claude Code, daftarkan dari terminal dengan `claude mcp add`; `-e` menyetel environment variable dan semua yang setelah `--` adalah perintah yang dijalankan. Di Cursor, letakkan blok `mcpServers` yang sama seperti di atas di `~/.cursor/mcp.json` untuk setiap proyek, atau di `.cursor/mcp.json` dalam satu proyek.

Klien MCP lain yang menjalankan server stdio memakai tiga hal yang sama: perintah, argumennya, dan environment variable. [Halaman OpenClaw](https://serpcrypto.com/id/docs/openclaw/) menampilkan perintah untuk OpenClaw.

*Claude Code*

```bash
claude mcp add serpcrypto-search \
  -e SERPCRYPTO_API_KEY=paste-your-key-here \
  -- python /absolute/path/to/serpcrypto_mcp.py
```

## Bagaimana cara menjaga API key tetap aman?

Simpan di blok `env` pada konfigurasi klien atau di profil shell Anda, jangan pernah di dalam `serpcrypto_mcp.py`. Dengan begitu, skrip bisa dibagikan atau di-commit tanpa key. Jika key bocor, cabut di dashboard dan buat yang baru: API key yang dapat Anda buat dan cabut kapan saja dari dashboard Anda.

Beri server MCP key tersendiri. Pemakaian per key kemudian menunjukkan berapa banyak pencarian yang dilakukan asisten, terpisah dari skrip Anda.

## Berapa kredit yang akan dipakai asisten?

Satu per tool call yang berhasil. Obrolan di mana model mencari tiga kali memakai tiga kredit. Pada paket 25.000 pencarian seharga US$18,75, itu berarti ribuan pertanyaan berbantuan, dan Kredit pencarian prabayar tidak pernah kedaluwarsa: pencarian yang belum terpakai tetap ada di akun Anda sampai Anda menggunakannya.

Untuk membatasi pemakaian, turunkan `num_results` (tidak mengubah harga, tetapi mempersingkat jawaban) dan beri tahu model dalam instruksi Anda agar mencari hanya saat butuh fakta terbaru.

## Pertanyaan tentang MCP

### Apakah server ini berfungsi dengan klien MCP remote?

Versi ini memakai stdio, jadi klien harus menjalankannya di mesin yang sama. FastMCP juga bisa melayani lewat HTTP; jika Anda mengeksposnya di jaringan, pasang autentikasi di depannya, karena siapa pun yang bisa menjangkaunya akan memakai kredit Anda.

### Bisakah tool ini mencari di Bing atau Google News?

Bisa. Tambahkan argumen `engine` atau tool kedua yang mengirim `engine=bing` atau `engine=google_news` di `params`. Setiap mesin berbiaya sama, 1 kredit per pencarian.

### Mengapa klien menyatakan tool gagal?

Jalankan skrip secara manual dengan Python yang sama untuk melihat error. Penyebab umumnya adalah paket `mcp` atau `httpx` yang tidak ada, path yang salah di config, atau `SERPCRYPTO_API_KEY` yang kosong, yang membuat API menjawab `401`.

### Apakah saya perlu kartu kredit atau KYC untuk API key?

Tidak. SerpCrypto menjual kredit prabayar yang dibayar dengan BTC, USDT, USDC, ETH, SOL, LTC, tanpa ID, tanpa selfie, dan tanpa dokumen. Login dengan nomor akun; email bersifat opsional.

---

SerpCrypto: SerpCrypto adalah SERP API untuk developer dan AI agent yang mengembalikan hasil pencarian Google dan Bing dalam format JSON, dibayar dengan kripto tanpa unggah identitas. Kredit pencarian prabayar mulai dari US$0,30/1K pencarian tidak pernah kedaluwarsa. Tanpa KYC — tanpa ID, tanpa selfie, tanpa dokumen. Bayar dengan kripto.
