İçeriğe geç
Kaynak kütüphanesi
GOCUX / Makalelercli

Bir arama MCP sunucusunu ajanınıza bağlamadan önce neye bakmalı

Web arama MCP sunucusu seçerken kontrol edilecekler: araç şeması, sonuç biçimi, kimlik doğrulama, veri işleme, yerel ya da uzak çalışma ve istemci izinleri.

Bir web arama MCP sunucusu küçük bir yazılımdır ama ajanınızın neye inandığı üzerinde büyük söz sahibidir. Bir arama altyapısını sarar, onu bir ya da birkaç araç olarak sunar ve her çağrıdan sonra modele hangi metnin ulaşacağına karar verir. Bu yüzden seçim aslında iki ayrı karardır. Birincisi arama altyapısıdır; onu web arama API'si seçme rehberi ele alıyor. İkincisi sunucunun kendisidir: tanımladığı araçlar, sonuçların biçimi, kimlik doğrulama yöntemi, sorgularınıza ne olduğu, nerede çalıştığı ve istemcinizin ona neye izin verdiği. Bu yazı ikinci kararla ilgili.

Sunucu, arama API'sinin üstüne ne ekler

Model Context Protocol, bir istemcinin sunucudaki araçları keşfetmesini ve onları model adına çağırmasını sağlar. Kavramlar size yeniyse MCP nedir yazısıyla başlayın. Bir arama sunucusu genellikle üç iş yapar: araç çağrısını bir arama sağlayıcısına ya da kendi barındırdığınız bir motora giden isteğe çevirir, dönen sonucu kırpıp biçimlendirir ve hataları bildirir.

Bu işlerin her biri, aynı altyapıyı kullanan iki sunucunun çok farklı davranabileceği bir noktadır. Biri tarih filtrenizi olduğu gibi iletir, diğeri sessizce yok sayar. Biri tarihli, temiz alıntılar döndürür; diğeri bağlam dolana kadar ham sayfa metni basar. O yüzden yalnızca arkadaki sağlayıcıyı değil, sunucuyu da test edin. Sunucuyu kimin sürdürdüğünü de öğrenin: arama sağlayıcısının kendisi mi, bir çatı projesi mi, yoksa tek bir geliştirici mi? Bu, alttaki API değiştiğinde sunucunun ne kadar çabuk uyum sağlayacağını ve bir şey bozulduğunda kime başvuracağınızı gösterir.

Önce araç şemasını okuyun

Bir modeli yaklaştırmadan önce sunucuyu bir istemciye ya da bir denetleyiciye bağlayın ve araçlarını listeleyin. Model araçları adlarına ve açıklamalarına bakarak seçer, argümanları da girdi şemasına göre doldurur; yani asıl sözleşme budur. Makul bir arama aracı aşağı yukarı şöyle görünür:

{
  "name": "web_search",
  "description": "Search the public web. Returns up to max_results items, each with url, title, published date and an excerpt.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "query": { "type": "string", "maxLength": 400 },
      "max_results": { "type": "integer", "minimum": 1, "maximum": 10 },
      "include_domains": { "type": "array", "items": { "type": "string" } },
      "recency_days": { "type": "integer", "minimum": 1 }
    },
    "required": ["query"]
  }
}

Bakmanız gerekenler:

  • Tipli ve sınırlı parametreler. Alt ve üst sınırı olan tamsayılar, bölge ya da dil için sabit seçenek listeleri, alan adı filtreleri için diziler. Serbest metin parametreleri modeli doğaçlamaya davet eder.
  • Gerçekten ihtiyaç duyduğunuz filtreler. Tarih ya da güncellik, alan adı dâhil etme ve hariç tutma, dil. Altyapı bir filtreyi destekliyor ama şema onu sunmuyorsa ajan o filtreyi kullanamaz.
  • Az sayıda araç. Arama, sayfa çekme, tarama ve ekran görüntüsü araçlarını birlikte getiren bir sunucu ajana daha geniş bir erişim verir ve araç tanımlarına daha fazla bağlam harcar. Görevin gerektirdiğini açın.
  • Sade açıklamalar. Modele bu aracı diğer hepsine tercih etmesini ya da her adımda çağırmasını söyleyen bir açıklama, üst veriye gizlenmiş bir talimattır. Bunu bir uyarı işareti sayın.

Sonuç biçimi: modelin bağlamına ne giriyor

Sunucunun döndürdüğü her şey modelin girdisi olur; bu yüzden sonuç biçimi hem yanıt kalitesini hem de maliyeti belirler. Aracı kendi gerçek sorgularınızdan birkaçıyla çağırın ve ham çıktıyı okuyun.

KontrolNeden önemli
Her öğede URL ve başlıkBunlar olmadan ajan kaynak gösteremez, siz de doğrulayamazsınız
Yayın tarihi ve alınma tarihiAjan güncelliği tahmin etmek yerine değerlendirebilir
Özet, pasaj ya da tam metinKısa özetler bir yanıtı dayandırmaya çoğu zaman yetmez; tam sayfalar bağlamı doldurur
Boyut sınırı ya da kırpma kuralıTek bir uzun sayfa diğer bütün sonuçları dışarıda bırakmamalı
Yalnızca düz metin değil, yapılandırılmış çıktıKodunuz sonuçları düzyazı ayrıştırmadan kaydedebilir, süzebilir ve saklayabilir
Boş sonuçtan ayrı bir hata yanıtı“Hiçbir şey bulunamadı” ile “altyapı zaman aşımına uğradı” farklı tepkiler gerektirir

Arama sonuçlarının yabancıların yazdığı, güvenilmeyen metinler olduğunu unutmayın. Bir sayfa, ajanı yönlendirmek için özenle yazılmış cümleler içerebilir. Sunucu bunu tamamen engelleyemez; ama sonuçlar alınmış içerik olarak açıkça işaretlendiğinde ve sayfa çekme aracı aramadan ayrı tutulduğunda, birini diğerini vermeden açabilirsiniz.

Kimlik doğrulama, gizli anahtarlar ve sorgularınız

Yerel sunucuların çoğu, altyapının API anahtarını istemcinin yapılandırma dosyasında tanımlanan bir ortam değişkeninden okur. Bu dosya kazara bir depoya ya da paylaşılan bir ayar klasörüne kolayca kopyalanır; anahtarları sürüm kontrolündeki hiçbir dosyada tutmayın, istemciniz destekliyorsa bir gizli anahtar deposu kullanın. Ajana sağlayıcı tarafında kendi harcama sınırı olan ayrı bir anahtar verin; böylece kontrolden çıkan bir döngü sürpriz bir fatura yerine sınırlanmış bir tutar olarak görünür.

Uzak sunucular istemciyi genellikle OAuth ya da işletmecinin verdiği bir jetonla doğrular. Bu jetonun arama dışında neye izin verdiğini, nasıl iptal edildiğini ve bir kişiye mi ait olduğunu yoksa ekipçe mi paylaşıldığını kontrol edin.

Sonra sorguların izini sürün. Bir ajanın sorguları anonim anahtar kelimeler değildir: müşteri adları, şirket içi proje adları, hata mesajları ve bazen kod parçaları taşır. İstemciyle arama dizini arasındaki her durak bunları kaydedebilir. Sunucu işletmecisine ve altyapı sağlayıcısına neyi, ne kadar süre sakladıklarını ve başka bir amaçla kullanıp kullanmadıklarını sorun. Topluluk tarafından yazılmış bir sunucuda kodu telemetri açısından okuyun. Kendi barındırdığınız bir altyapı bu listeden bir tarafı eksiltir.

Yerel mi, uzak mı

Yerel sunucu, istemcinin başlattığı ve standart girdi ve çıktı üzerinden konuşan, makinenizde çalışan bir süreçtir. Uzak sunucuya HTTP üzerinden erişilir ve onu başka biri ya da kendi ekibiniz işletir.

  • Yerel sunucuda sorgularınızın sunucu tarafındaki işlenişi makinenizde kalır; ama birinin kodunu kendi kullanıcı yetkilerinizle çalıştırıyorsunuz demektir. Her açılışta en son sürümü çekmek yerine bir sürüme sabitleyin ve kurduğunuz şeyi inceleyin.
  • Uzak sunucuda kurulacak bir şey yoktur ve barındırılan istemcilerden de çalışır; ama işletmeci her sorguyu ve sonucu görür, siz de onun erişilebilirliğine ve politikalarına bağımlı olursunuz.

Bu ödünleşimler aramanın ötesine geçer; uzak ve yerel MCP sunucuları karşılaştırması bunları ayrıntılı ele alıyor.

İstemcideki izinler

Sunucu araçları tanımlar; modelin onlarla ne yapabileceğine istemci karar verir. Arama yazmadığı, yalnızca okuduğu için zararsız görünür; yine de sorguları dışarı gönderir ve içeri güvenilmeyen metin taşır. Her URL'yi kabul eden bir sayfa çekme aracı, sunucu iç ağınızda çalışıyorsa oradaki adreslere de ulaşabilir.

Dar başlayın. Yalnızca arama aracını açın ve onu açtığınız her çalışma alanına değil, ihtiyaç duyan projeye bağlayın. Ajanın bu araçları nasıl kullandığını görene kadar sayfa çekme ve tarama araçları için onay istemlerini açık tutun. İlk birkaç oturumdan sonra istemcinin araç çağrısı kaydını okuyun. Ajanlara salt okuma ile başlamak ve yetkiyi genişletmeden araç bağlamak notları bu alışkanlığı açıyor.

GoCux nerede durur

GoCux bir arama MCP sunucusu değildir ve barındırılan bir MCP uç noktası sunmaz. Açık webi de okumaz. MCP konusundaki yaklaşımı bu yazıdakiyle örtüşür: araçlar sizin uyumlu istemcinizin içinde çalışır, salt okuma erişimiyle başlarsınız ve bir sunucunun yapılandırılmış olması her görevin onu kullanabileceği anlamına gelmez. Kurulumu MCP hızlı başlangıç sayfası gösteriyor.

Bir iş için web içeriği gerektiğinde GoCux onu açıkça yetki verilmiş bir tarama ya da dışa aktarma adımıyla içeri alır; sayfanın özgün referansını ve alındığı tarihi birlikte saklar. Bir araştırma planı kaynaklarını, plan çalışmadan önce onaylanan bir kaynak izin listesinde belirtir; ayrıntılar kaynak politikası sayfasında. İstemcinizdeki arama aracı adayları bulabilir; hangi kaynakların yanıt vermesine izin verildiğinin kaydı ise incelenebilir kalır.

Arama sunucusunu açmadan önce kontrol listesi

  • Sunucuyu kimin sürdürdüğünü ve hangi altyapıyı çağırdığını biliyorsunuz.
  • Araçlarını listelediniz; her adı, açıklamayı ve parametreyi okudunuz.
  • İhtiyaç duyduğunuz filtreler şemada var ve gerçekten altyapıya ulaşıyor.
  • Sonuçlar URL, başlık ve tarih taşıyor; boyut sınırı işinize uygun.
  • Hatalar ve boş sonuçlar farklı biçimde dönüyor.
  • API anahtarı bu işe özel, harcama sınırı konmuş ve sürüm kontrolünün dışında.
  • Sorgularınızı kimin, ne kadar süreyle kaydettiğini biliyorsunuz.
  • Yerel sunucu incelenmiş bir sürüme sabitlenmiş; uzak sunucunun jetonu kapsamlı ve iptal edilebilir.
  • Başlangıçta yalnızca arama aracı açık; sayfa çekme çağrıları çalışmadan önce onay istiyor.

Bu iş akışını çalışma alanınıza taşıyın.

Kapsamı belirleyin. Kanıtları inceleyin. Gereken adımları onaylayın.

Çalışma alanını aç

Sıradaki adım