MCP Tools Reference: mapstools.googleapis.com

টুল: search_places

ব্যবহারকারী যদি কোনও জায়গা, ব্যবসা, ঠিকানা, লোকেশন, আগ্রহের জায়গা বা Google Maps সম্পর্কিত অন্য কোনও সার্চ করতে চান, তাহলে এই টুলটি কল করুন।

ইনপুট সংক্রান্ত প্রয়োজনীয়তা (গুরুতর):

  1. text_query (string - MANDATORY): প্রাথমিক সার্চ কোয়েরি। ব্যবহারকারী কী খুঁজছেন তা এতে স্পষ্টভাবে উল্লেখ করতে হবে।

    • উদাহরণ: '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'.
    • নির্দিষ্ট জায়গার বিবরণের জন্য: অনুরোধ করা অ্যাট্রিবিউট (যেমন, 'Google Store Mountain View opening hours', 'SF MoMa phone number', 'Shoreline Park Mountain View address') যোগ করুন।
  2. location_bias (অবজেক্ট - ঐচ্ছিক): নির্দিষ্ট ভৌগোলিক অঞ্চলের কাছাকাছি ফলাফলকে অগ্রাধিকার দিতে এটি ব্যবহার করুন।

    • ফর্ম্যাট: {"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
    • ব্যবহার:
      • ৫ কিমি ব্যাসার্ধের মধ্যে পক্ষপাতদুষ্ট হতে: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}}
      • কেন্দ্রীয় পয়েন্টের দিকে বেশি করে পক্ষপাতদুষ্ট হতে: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}} (radius_meters বাদ দিয়ে)।
  3. language_code (string - OPTIONAL): সার্চ ফলাফলের সারসংক্ষেপ দেখানোর ভাষা।

    • ফর্ম্যাট: দুই অক্ষরের ভাষা কোড (ISO 639-1), ঐচ্ছিকভাবে আন্ডারস্কোর ও দুই অক্ষরের দেশের কোড (ISO 3166-1 alpha-2) দিয়ে অনুসরণ করা হয়, যেমন, en, ja, en_US, zh_CN, es_MX. ভাষা কোড প্রদান করা না হলে, ফলাফল ইংরেজিতে দেখানো হবে।
  4. region_code (স্ট্রিং - ঐচ্ছিক): ব্যবহারকারীর ইউনিকোড CLDR অঞ্চলের কোড। এই প্যারামিটারটি জায়গার বিবরণ দেখাতে ব্যবহার করা হয়, যেমন, উপলভ্য থাকলে অঞ্চল-নির্দিষ্ট জায়গার নাম। প্রযোজ্য আইনের ভিত্তিতে প্যারামিটার ফলাফলকে প্রভাবিত করতে পারে।

    • ফর্ম্যাট: দুই অক্ষরের দেশের কোড (ISO 3166-1 alpha-2), যেমন, US, CA.

টুল কল করার জন্য নির্দেশাবলী:

  • লোকেশন সংক্রান্ত তথ্য (অত্যন্ত গুরুত্বপূর্ণ): সার্চে পর্যাপ্ত লোকেশন সংক্রান্ত তথ্য থাকতে হবে। লোকেশন অস্পষ্ট হলে (যেমন, শুধু "পিৎজা প্লেস"), আপনাকে অবশ্যই text_query-এ সেটি নির্দিষ্ট করতে হবে (যেমন, "নিউ ইয়র্কের পিৎজা প্লেস") অথবা location_bias প্যারামিটার ব্যবহার করতে হবে। দ্ব্যর্থতা নিরসনের জন্য প্রয়োজন হলে শহর, রাজ্য/প্রদেশ এবং অঞ্চল/দেশের নাম যোগ করুন।

  • সবসময় সবচেয়ে নির্দিষ্ট ও প্রাসঙ্গিক তথ্য text_query প্রদান করুন।

  • location_bias শুধুমাত্র তখনই ব্যবহার করুন যখন কোঅর্ডিনেট স্পষ্টভাবে প্রদান করা হয় অথবা ব্যবহারকারীর পরিচিত প্রসঙ্গ থেকে কোনও লোকেশন অনুমান করা উপযুক্ত এবং আরও ভালো ফলাফলের জন্য প্রয়োজনীয় হয়।

  • গ্রাউন্ডেড আউটপুটকে অবশ্যই সোর্সের সাথে অ্যাট্রিবিউট করতে হবে এবং এটি করার জন্য attribution ফিল্ড থেকে পাওয়া তথ্য ব্যবহার করতে হবে, যদি তা উপলভ্য থাকে।

search_places MCP টুল কল করার জন্য কীভাবে curl ব্যবহার করতে হয় তা নিম্নলিখিত কোড স্যাম্পেল থেকে জানতে পারবেন।

কার্ল করার অনুরোধ
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
}'

ইনপুট স্কিমা

SearchText-এর জন্য অনুরোধ মেসেজ।

SearchTextRequest

JSON উপস্থাপনা
{
  "textQuery": string,
  "languageCode": string,
  "regionCode": string,

  // 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.
}
ফিল্ড
textQuery

string

প্রয়োজনীয়। টেক্সট কোয়েরি।

languageCode

string

ঐচ্ছিক। সারসংক্ষেপটি যে ভাষায় ফেরত দিতে হবে। ভাষা কোড নির্দিষ্ট করা না থাকলে বা শনাক্ত করা না গেলে, ইংরেজিকে অগ্রাধিকার দিয়ে সারসংক্ষেপ রিটার্ন করা হবে।

যেমন, ইংরেজির জন্য "en"।

কাজ করে এমন ভাষার বর্তমান তালিকা: https://developers.google.com/maps/faq#languagesupport.

regionCode

string

ঐচ্ছিক। যে লোকেশন থেকে অনুরোধ করা হচ্ছে সেটির ইউনিকোড দেশ/অঞ্চল কোড (CLDR)। এই প্যারামিটারটি জায়গার বিবরণ দেখাতে ব্যবহার করা হয়, যেমন, উপলভ্য থাকলে অঞ্চল-নির্দিষ্ট জায়গার নাম। প্রযোজ্য আইনের ভিত্তিতে প্যারামিটার ফলাফলের উপর প্রভাব ফেলতে পারে।

যেমন, মার্কিন যুক্তরাষ্ট্রের জন্য "US"।

আরও তথ্যের জন্য, https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html দেখুন।

মনে রাখবেন, ৩-সংখ্যার অঞ্চলের কোড বর্তমানে কাজ করে না।

ইউনিয়ন ফিল্ড _location_bias।

_location_bias শুধুমাত্র নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:

locationBias

object (LocationBias)

সার্চ ফলাফলকে কোনও নির্দিষ্ট অঞ্চলের প্রতি পক্ষপাতদুষ্ট করার জন্য ঐচ্ছিক অঞ্চল। text_query-এ কোনও স্পষ্ট লোকেশন থাকলে, এই ফিল্ডের পরিবর্তে সার্চ ফলাফলকে পক্ষপাতদুষ্ট করার জন্য এটি ব্যবহার করা হবে।

LocationBias

JSON উপস্থাপনা
{
  "circle": {
    object (Circle)
  }
}
ফিল্ড
circle

object (Circle)

ঐচ্ছিক। কেন্দ্রবিন্দু ও ব্যাসার্ধ দ্বারা সংজ্ঞায়িত বৃত্ত। radius_meters ঐচ্ছিক। সেট করা না থাকলে, ফলাফল সেন্টার পয়েন্টের দিকে পক্ষপাতদুষ্ট হবে।

সার্কেল করুন

JSON উপস্থাপনা
{
  "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.
}
ফিল্ড
center

object (LatLng)

প্রয়োজনীয়। বৃত্তের কেন্দ্রবিন্দু।

ইউনিয়ন ফিল্ড _radius_meters।

_radius_meters শুধুমাত্র নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:

radiusMeters

number

মিটার এককে বৃত্তের ব্যাসার্ধ। ব্যাসার্ধ অবশ্যই ৫০,০০০ মিটারের মধ্যে হতে হবে।

LatLng

JSON উপস্থাপনা
{
  "latitude": number,
  "longitude": number
}
ফিল্ড
latitude

number

ডিগ্রিতে অক্ষাংশ। এটি অবশ্যই [-৯০.০, +৯০.০] রেঞ্জের মধ্যে থাকতে হবে।

longitude

number

ডিগ্রিতে দ্রাঘিমাংশ। এটি অবশ্যই [-১৮০.০, +১৮০.০] রেঞ্জের মধ্যে থাকতে হবে।

আউটপুট স্কিমা

SearchText-এর জন্য উত্তর মেসেজ।

SearchTextResponse

JSON উপস্থাপনা
{
  "places": [
    {
      object (PlaceView)
    }
  ],
  "summary": string
}
ফিল্ড
places[]

object (PlaceView)

শুধুমাত্র আউটপুট। সারসংক্ষেপে উল্লেখ করা জায়গার তালিকা।

summary

string

শুধুমাত্র আউটপুট। সার্চ ফলাফলের একটি ন্যাচারাল ল্যাঙ্গুয়েজ সারসংক্ষেপ। সারসংক্ষেপে "[0]", "[1]", "[2]" ইত্যাদির মতো জিরো-বেসড উদ্ধৃতি থাকতে পারে। এইসব উদ্ধৃতি places ফিল্ডের সংশ্লিষ্ট জায়গার সাথে ম্যাপ করে।

PlaceView

JSON উপস্থাপনা
{
  "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.
}
ফিল্ড
place

string

আসল জায়গার রিসোর্স নাম, "places/{id}" ফর্ম্যাটে।

id

string

আসল জায়গার প্লেস আইডি।

googleMapsLinks

object (GoogleMapsLinks)

বিভিন্ন Google Maps অ্যাকশন ট্রিগার করার লিঙ্ক।

attribution

object (Attribution)

জায়গার সাথে দেখানোর জন্য প্রয়োজনীয় অ্যাট্রিবিউশন।

ইউনিয়ন ফিল্ড _location।

_location শুধুমাত্র নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:

location

object (LatLng)

এই জায়গার অবস্থান।

LatLng

JSON উপস্থাপনা
{
  "latitude": number,
  "longitude": number
}
ফিল্ড
latitude

number

ডিগ্রিতে অক্ষাংশ। এটি অবশ্যই [-৯০.০, +৯০.০] রেঞ্জের মধ্যে থাকতে হবে।

longitude

number

ডিগ্রিতে দ্রাঘিমাংশ। এটি অবশ্যই [-১৮০.০, +১৮০.০] রেঞ্জের মধ্যে থাকতে হবে।

JSON উপস্থাপনা
{
  "directionsUrl": string,
  "placeUrl": string,
  "writeAReviewUrl": string,
  "reviewsUrl": string,
  "photosUrl": string
}
ফিল্ড
directionsUrl

string

জায়গাটির দিকনির্দেশ দেখানোর লিঙ্ক। লিঙ্কটি শুধুমাত্র গন্তব্যের লোকেশন অটো-ফিল করে এবং ডিফল্ট ট্রাভেল মোড DRIVE ব্যবহার করে।

placeUrl

string

এই জায়গাটি দেখানোর জন্য একটি লিঙ্ক।

writeAReviewUrl

string

Google Maps-এ এই জায়গার জন্য রিভিউ লেখার লিঙ্ক।

reviewsUrl

string

Google Maps-এ এই জায়গার রিভিউ দেখানোর লিঙ্ক।

photosUrl

string

Google Maps-এ এই জায়গার ফটো দেখানোর লিঙ্ক।

অ্যাট্রিবিউশন

JSON উপস্থাপনা
{
  "title": string,
  "url": string
}
ফিল্ড
title

string

অ্যাট্রিবিউশনের জন্য যে শীর্ষক দেখানো হবে।

url

string

অ্যাট্রিবিউশনের জন্য লিঙ্ক করার URL.

টুল অ্যানোটেশন

কোনও টুলের প্রাথমিক ঝুঁকি বর্ণনা করতে MCP ক্লায়েন্টদের কাছে টুল অ্যানোটেশন পাঠানো হয়। বেশিরভাগ ক্লায়েন্ট এই ধরনের ইঙ্গিতকে অবিশ্বস্ত হিসেবে বিবেচনা করে, তবে ব্যবহারকারীকে কখন কনফার্মেশন প্রম্পট পাঠানো হতে পারে তা নির্ধারণ করতে এগুলি ব্যবহার করা যেতে পারে।

টাইটেল স্ট্রিংয়ের সাথে, নিম্নলিখিত বুলিয়ান হিন্টকে এইভাবে সংজ্ঞায়িত করা হয়:

  • readOnlyHint: সত্য হলে, টুলটি তার এনভায়রনমেন্ট পরিবর্তন করে না। ডিফল্ট: false.
  • destructiveHint: মান 'সত্য' হলে, টুলটি ডেটা মুছে দেওয়ার মতো অ্যাকশন পারফর্ম করতে পারবে। এটি মিথ্যা হলে, টুলটি শুধুমাত্র যোগাত্মক অ্যাকশন পারফর্ম করতে পারবে। ডিফল্ট: true.
  • idempotentHint: true হলে, একই আর্গুমেন্ট সহ টুলটি বারবার কল করলে এর এনভায়রনমেন্টের উপর কোনও অতিরিক্ত প্রভাব পড়বে না। ডিফল্ট: false.
  • openWorldHint: এটি সত্য হলে, টুলটি এক্সটার্নাল এন্টিটির 'ওপেন ওয়ার্ল্ড' ইন্টার‍্যাক্ট করতে পারবে। ফলস হলে, টুলটি শুধুমাত্র ইন্টার্নাল এন্টিটির সাথে ইন্টার‍্যাক্ট করতে পারবে। যেমন, ওয়েব সার্চ টুল হল ওপেন ওয়ার্ল্ড, কিন্তু মেমরি টুল ওপেন ওয়ার্ল্ড নয়।

ধ্বংসাত্মক ইঙ্গিত: ❌ | আইডেম্পোটেন্ট ইঙ্গিত: ❌ | শুধুমাত্র-পঠন ইঙ্গিত: ✅ | ওপেন ওয়ার্ল্ড ইঙ্গিত: ❌