MCP Tools Reference: mapstools.googleapis.com

Araç: search_places

Kullanıcı yer, işletme, adres, konum, önemli yer veya Google Haritalar ile ilgili başka bir arama yapmak istediğinde bu aracı çağırın.

Giriş Şartları (KRİTİK):

  1. text_query (dize - ZORUNLU): Birincil arama sorgusu. Bu, kullanıcının ne aradığını net bir şekilde tanımlamalıdır.

    • Örnekler: 'restaurants in New York', 'coffee shops near Golden Gate Park', 'SF MoMA', '1600 Amphitheatre Pkwy, Mountain View, CA, USA', 'pets friendly parks in Manhattan, New York', 'date night restaurants in Chicago', 'accessible public libraries in Los Angeles'.
    • Belirli yer ayrıntıları için: İstenen özelliği (ör. 'Google Store Mountain View opening hours', 'SF MoMa phone number', 'Shoreline Park Mountain View address') ekleyin.
  2. location_bias (nesne - İSTEĞE BAĞLI): Belirli bir coğrafi bölgenin yakınındaki sonuçlara öncelik vermek için bunu kullanın.

    • Biçim: {"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
    • Kullanım:
      • 5 km'lik bir yarıçapa yönlendirmek için: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}}
      • Merkez noktaya güçlü bir şekilde yönlendirmek için: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}} (radius_meters hariç).
  3. language_code (dize - İSTEĞE BAĞLI): Arama sonuçları özetinin gösterileceği dil.

    • Biçim: İki harfli bir dil kodu (ISO 639-1) ve isteğe bağlı olarak ardından bir alt çizgi ve iki harfli bir ülke kodu (ISO 3166-1 alfa-2) gelir (ör. en, ja, en_US, zh_CN, es_MX). Dil kodu sağlanmazsa sonuçlar İngilizce olur.
  4. region_code (dize - İSTEĞE BAĞLI): Kullanıcının Unicode CLDR bölge kodu. Bu parametre, varsa bölgeye özgü yer adı gibi yer ayrıntılarını görüntülemek için kullanılır. Parametre, geçerli yasaya göre sonuçları etkileyebilir.

    • Biçim: İki harfli ülke kodu (ISO 3166-1 alfa-2), ör. US, CA.
  5. page_size (tam sayı - İSTEĞE BAĞLI): Döndürülecek maksimum yer sayısı (1 ile 10 arasında). Varsayılan değer 5'dir. Yalnızca kullanıcı 5'ten fazla yeri karşılaştırmak istediğinde 5 değerinin üzerine ayarlayın. 6 ile 10 arasındaki değerler daha yüksek maliyet ve daha yüksek gecikmeye neden olur.

  6. include_extended_details (Boole - İSTEĞE BAĞLI): Kullanıcı isteği zengin niteliksel analizler, gerçek zamanlı dinamikler veya özel varlık özellikleri gerektirdiğinde bu alanı true olarak ayarlayın. Varsayılan değer false'dir. Bu ayarın true olarak belirlenmesi daha yüksek maliyet ve gecikmeye neden olur.

Araç Çağrısı Talimatları:

  • Konum Bilgisi (KRİTİK): Aramada yeterli konum bilgisi bulunmalıdır. Konum belirsizse (ör. yalnızca "pizzacılar") text_query parametresinde konumu belirtmeniz (ör. "New York'taki pizzacılar") veya location_bias parametresini kullanmanız gerekir. Anlam belirsizliğini gidermek için gerekirse şehir, eyalet/il ve bölge/ülke adını ekleyin.

  • Her zaman mümkün olan en spesifik ve bağlam açısından en zengin text_query sağlayın.

  • location_bias aracını yalnızca koordinatlar açıkça belirtilmişse veya kullanıcının bilinen bağlamından konum çıkarımı yapmak uygunsa ve daha iyi sonuçlar için gerekliyse kullanın.

  • Temellendirilmiş çıkış, mümkün olduğunda attribution alanındaki bilgiler kullanılarak kaynağa atfedilmelidir.

Aşağıdaki kod örneğinde, search_places MCP aracını çağırmak için curl öğesinin nasıl kullanılacağı gösterilmektedir.

Curl İsteği
curl --location 'https://mapstools.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "search_places",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Giriş şeması

SearchText için istek mesajı.

SearchTextRequest

JSON gösterimi
{
  "textQuery": string,
  "languageCode": string,
  "regionCode": string,
  "pageSize": integer,
  "includeExtendedDetails": boolean,

  // Union field _location_bias can be only one of the following:
  "locationBias": {
    object (LocationBias)
  }
  // End of list of possible types for union field _location_bias.
}
Alanlar
textQuery

string

Zorunlu. Metin sorgusu.

languageCode

string

İsteğe bağlı. Özetin döndürülmesini istediğiniz dil. Dil kodu belirtilmemişse veya tanınmıyorsa İngilizce tercih edilen özet döndürülür.

Örneğin, İngilizce için "en".

Desteklenen dillerin güncel listesi: https://developers.google.com/maps/faq#languagesupport.

regionCode

string

İsteğe bağlı. İsteğin geldiği konumun Unicode ülke/bölge kodu (CLDR). Bu parametre, varsa bölgeye özgü yer adı gibi yer ayrıntılarını görüntülemek için kullanılır. Parametre, geçerli yasaya göre sonuçları etkileyebilir.

Örneğin, ABD için "US".

Daha fazla bilgi için https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html adresini ziyaret edin.

3 haneli bölge kodlarının şu anda desteklenmediğini unutmayın.

pageSize

integer

İsteğe bağlı. Döndürülecek maksimum yer sayısı (en fazla 10). Hizmet, bu değerden daha az sonuç döndürebilir. Varsayılan değer 5'tir.

5'ten fazla yer isteğinde bulunmak Pro katmanını tetikler ve daha yüksek faturalandırma maliyeti ile gecikmeye neden olur.

includeExtendedDetails

boolean

İsteğe bağlı. Yanıta genişletilmiş yer ayrıntılarını ekler.

Kullanıcı isteği; niteliksel analizler, gerçek zamanlı dinamikler veya özel varlık özellikleri gerektirdiğinde bu alanı true olarak ayarlayın: - Niteliksel incelemeler, müşteri yaklaşımı ve geri bildirimler. - Menü öğeleri, yemekler, özel yemekler, içecekler veya işletmeyle ilgili öne çıkanlar gibi belirli teklifler. - Nitelikli atmosfer, iç mekan dekoru, estetik, ambiyans veya ruh hali. - Gerçek zamanlı veriler ve özel tesis özellikleri, ziyaretçi politikaları/ipuçları, bekleme süreleri.

Standart keşif aramaları (ör. mutfaklar, mağaza türleri), konum/adres aramaları, iletişim bilgileri, çalışma saatleri ve standart meta veriler/olanaklar için false (varsayılan) değerini bırakın.

Bu alanın etkinleştirilmesi, Pro katmanını tetikler ve daha yüksek faturalandırma maliyeti ile daha yüksek gecikmeye neden olur.

_location_bias birleşik alanı.

_location_bias aşağıdakilerden yalnızca biri olabilir:

locationBias

object (LocationBias)

Arama sonuçlarını yönlendirmek için isteğe bağlı bir bölge. text_query içinde açık bir konum varsa arama sonuçlarını etkilemek için bu alan yerine o konum kullanılır.

LocationBias

JSON gösterimi
{
  "circle": {
    object (Circle)
  }
}
Alanlar
circle

object (Circle)

İsteğe bağlı. Merkez noktası ve yarıçapla tanımlanan bir daire. radius_meters isteğe bağlıdır. Ayarlanmazsa sonuçlar merkez noktasına doğru eğilimli olur.

Daire

JSON gösterimi
{
  "center": {
    object (LatLng)
  },

  // Union field _radius_meters can be only one of the following:
  "radiusMeters": number
  // End of list of possible types for union field _radius_meters.
}
Alanlar
center

object (LatLng)

Zorunlu. Dairenin merkez noktası.

_radius_meters birleşik alanı.

_radius_meters aşağıdakilerden yalnızca biri olabilir:

radiusMeters

number

Dairenin metre cinsinden yarıçapı. Yarıçap 50.000 metre içinde olmalıdır.

LatLng

JSON gösterimi
{
  "latitude": number,
  "longitude": number
}
Alanlar
latitude

number

Derece cinsinden enlem. [-90,0, +90,0] aralığında olmalıdır.

longitude

number

Derece cinsinden boylam. [-180,0, +180,0] aralığında olmalıdır.

Çıkış şeması

SearchText için yanıt mesajı.

SearchTextResponse

JSON gösterimi
{
  "places": [
    {
      object (PlaceView)
    }
  ],
  "summary": string,
  "contentToken": string
}
Alanlar
places[]

object (PlaceView)

Yalnızca çıkış. Özette bahsedilen yerlerin listesi.

summary

string

Yalnızca çıkış. Arama sonuçlarının doğal dildeki özeti. Özet, "[0]", "[1]", "[2]" gibi sıfır tabanlı alıntılar içerebilir. Bu alıntılar, places alanındaki ilgili yerlerle eşleşir.

contentToken

string

Yalnızca çıkış. Arama bağlamını kapsayan ve döndürülen arama sonuçları için etkileşimli kullanıcı arayüzü bileşenlerini görüntülemek üzere Google Haritalar görsel oluşturma hizmetlerine, SDK'larına veya Haritalar ajan tabanlı kullanıcı arayüzü araç setine (A2UI) iletilebilen şifrelenmiş bir jeton.

PlaceView

JSON gösterimi
{
  "place": string,
  "id": string,
  "googleMapsLinks": {
    object (GoogleMapsLinks)
  },
  "attribution": {
    object (Attribution)
  },

  // Union field _location can be only one of the following:
  "location": {
    object (LatLng)
  }
  // End of list of possible types for union field _location.
}
Alanlar
place

string

Temel yerin "places/{id}" biçimindeki kaynak adı.

id

string

Temel yerin yer kimliği.

googleMapsLinks

object (GoogleMapsLinks)

Farklı Google Haritalar işlemlerini tetikleyen bağlantılar.

attribution

object (Attribution)

Yerle birlikte gösterilmesi gereken atıf.

_location birleşik alanı.

_location aşağıdakilerden yalnızca biri olabilir:

location

object (LatLng)

Bu yerin konumu.

LatLng

JSON gösterimi
{
  "latitude": number,
  "longitude": number
}
Alanlar
latitude

number

Derece cinsinden enlem. [-90,0, +90,0] aralığında olmalıdır.

longitude

number

Derece cinsinden boylam. [-180,0, +180,0] aralığında olmalıdır.

JSON gösterimi
{
  "directionsUrl": string,
  "placeUrl": string,
  "writeAReviewUrl": string,
  "reviewsUrl": string,
  "photosUrl": string
}
Alanlar
directionsUrl

string

Yere giden yol tarifini gösteren bir bağlantı. Bağlantı yalnızca hedef konumu doldurur ve varsayılan seyahat modunu DRIVE kullanır.

placeUrl

string

Bu yeri gösteren bir bağlantı.

writeAReviewUrl

string

Google Haritalar'da bu yerle ilgili yorum yazma bağlantısı.

reviewsUrl

string

Bu yerle ilgili yorumları Google Haritalar'da gösteren bir bağlantı.

photosUrl

string

Bu yerin fotoğraflarını Google Haritalar'da gösteren bir bağlantı.

İlişkilendirme

JSON gösterimi
{
  "title": string,
  "url": string
}
Alanlar
title

string

İlişkilendirme için gösterilecek başlık.

url

string

İlişkilendirme için bağlantı verilecek URL.

Araç Notları

Araç ek açıklamaları, belirli bir aracın temel riskini açıklamak için MCP istemcilerine gönderilir. Çoğu istemci bu ipuçlarını güvenilir olarak değerlendirmez ancak kullanıcıya ne zaman onay istemi gönderileceğine karar vermek için kullanılabilir.

Başlık dizesiyle birlikte aşağıdaki boole ipuçları şu şekilde tanımlanır:

  • readOnlyHint: Doğru ise araç, ortamını değiştirmez. Varsayılan: false.
  • destructiveHint: Doğru ise araç, yıkıcı işlemler gerçekleştirebilir. Yanlış ise araç yalnızca ekleme işlemleri gerçekleştirebilir. Varsayılan: true.
  • idempotentHint: Doğru ise aracın aynı bağımsız değişkenlerle tekrar tekrar çağrılması, ortamı üzerinde ek bir etki yaratmaz. Varsayılan: false.
  • openWorldHint: Doğru ise araç, harici varlıkların "açık dünyası" ile etkileşim kurabilir. Yanlış ise araç yalnızca dahili varlıklarla etkileşim kurabilir. Örneğin, web arama aracı açık dünya olurken bellek aracı açık dünya olmaz.

Yıkıcı İpucu: ❌ | Aynı Sonucu Veren İpucu: ❌ | Salt Okunur İpucu: ✅ | Açık Dünya İpucu: ❌