MCP Reference: mapstools.googleapis.com

একটি মডেল কনটেক্সট প্রোটোকল (MCP) সার্ভার, লার্জ ল্যাঙ্গুয়েজ মডেল (LLM) বা এআই অ্যাপ্লিকেশনকে কনটেক্সট, ডেটা বা সক্ষমতা প্রদানকারী কোনো বাহ্যিক পরিষেবার সাথে প্রক্সি হিসেবে কাজ করে। MCP সার্ভারগুলো এআই অ্যাপ্লিকেশনগুলোকে ডেটাবেস এবং ওয়েব সার্ভিসের মতো বাহ্যিক সিস্টেমের সাথে সংযুক্ত করে এবং তাদের প্রতিক্রিয়াগুলোকে এমন একটি ফরম্যাটে অনুবাদ করে যা এআই অ্যাপ্লিকেশনটি বুঝতে পারে।

সার্ভার সেটআপ

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

এটি ম্যাপস গ্রাউন্ডিং লাইট এপিআই দ্বারা প্রদত্ত একটি এমসিপি সার্ভার। এই সার্ভারটি ডেভেলপারদের গুগল ম্যাপস প্ল্যাটফর্মের উপর ভিত্তি করে এলএলএম অ্যাপ্লিকেশন তৈরি করার জন্য বিভিন্ন টুল সরবরাহ করে।

সার্ভার এন্ডপয়েন্ট

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

mapstools.googleapis.com MCP সার্ভারটির নিম্নলিখিত MCP এন্ডপয়েন্ট রয়েছে:

  • https://mapstools.googleapis.com/mcp

এমসিপি টুলস

এমসিপি টুল হলো এমন একটি ফাংশন বা নির্বাহযোগ্য সক্ষমতা যা একটি এমসিপি সার্ভার বাস্তব জগতে কোনো কাজ সম্পাদন করার জন্য এলএলএম বা এআই অ্যাপ্লিকেশনের কাছে উন্মুক্ত করে।

mapstools.googleapis.com MCP সার্ভারটিতে নিম্নলিখিত টুলগুলো রয়েছে:

এমসিপি টুলস
অনুসন্ধান_স্থান

ব্যবহারকারীর অনুরোধ যখন কোনো স্থান, ব্যবসা প্রতিষ্ঠান, ঠিকানা, অবস্থান, দর্শনীয় স্থান বা গুগল ম্যাপস-সম্পর্কিত অন্য কোনো কিছু খোঁজার জন্য হয়, তখন এই টুলটি চালু করুন।

ইনপুট প্রয়োজনীয়তা (অত্যাবশ্যক):

  1. text_query (স্ট্রিং - আবশ্যিক): মূল অনুসন্ধান কোয়েরি। ব্যবহারকারী কী খুঁজছেন, তা এতে স্পষ্টভাবে উল্লেখ থাকতে হবে।

    • উদাহরণ: '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 (স্ট্রিং - ঐচ্ছিক): অনুসন্ধানের ফলাফলের সারাংশ যে ভাষায় দেখানো হবে।

    • ফর্ম্যাট: একটি দুই-অক্ষরের ভাষা কোড (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 ব্যবহার করুন, যখন স্থানাঙ্ক স্পষ্টভাবে প্রদান করা হয় অথবা আরও ভালো ফলাফলের জন্য ব্যবহারকারীর পরিচিত প্রেক্ষাপট থেকে অবস্থান অনুমান করা উপযুক্ত প্রয়োজনীয় হয়।

আবহাওয়া_দেখুন

বর্তমান পরিস্থিতি, ঘণ্টাভিত্তিক ও দৈনিক পূর্বাভাসসহ আবহাওয়ার বিস্তারিত তথ্য সংগ্রহ করে।

উপলব্ধ নির্দিষ্ট তথ্য: তাপমাত্রা (বর্তমান, অনুভূত, সর্বোচ্চ/সর্বনিম্ন, তাপ সূচক), বায়ুপ্রবাহ (গতি, দমকা হাওয়া, দিক), মহাজাগতিক ঘটনা (সূর্যোদয়/সূর্যাস্ত, চাঁদের দশা), বৃষ্টিপাত (ধরন, সম্ভাবনা, পরিমাণ/QPF), বায়ুমণ্ডলীয় অবস্থা (ইউভি সূচক, আর্দ্রতা, মেঘের আচ্ছাদন, বজ্রঝড়ের সম্ভাবনা), এবং ভূ-কোডযুক্ত অবস্থানের ঠিকানা।

অবস্থান ও অবস্থানের নিয়মাবলী (অত্যন্ত গুরুত্বপূর্ণ):

যে স্থানের আবহাওয়ার তথ্য চাওয়া হচ্ছে, তা 'location' ফিল্ড ব্যবহার করে নির্দিষ্ট করা হয়। এই ফিল্ডটি একটি 'oneof' কাঠামো, যার অর্থ হলো, আবহাওয়ার তথ্যের সঠিক অনুসন্ধান নিশ্চিত করার জন্য আপনাকে অবশ্যই নিচের তিনটি 'location' সাব-ফিল্ডের মধ্যে শুধুমাত্র একটিতে মান প্রদান করতে হবে।

  1. ভৌগোলিক স্থানাঙ্ক (lat_lng)

    • যখন আপনাকে সঠিক অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্ক দেওয়া হয়, তখন এটি ব্যবহার করুন।
    • উদাহরণ: "lat_lng": { "latitude": 34.0522, "longitude": -118.2437 } // Los Angeles
  2. স্থানের আইডি (place_id)

    • একটি দ্ব্যর্থহীন স্ট্রিং শনাক্তকারী (গুগল ম্যাপস প্লেস আইডি)।
    • `place_id` `search_places` টুল থেকে পাওয়া যাবে।
    • উদাহরণ: "place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0" // Eiffel Tower
  3. ঠিকানা স্ট্রিং (ঠিকানা)

    • একটি মুক্ত-ফর্মের স্ট্রিং, যা জিওকোডিংয়ের জন্য সুনির্দিষ্টতা দাবি করে।
    • শহর ও অঞ্চল: সর্বদা অঞ্চল/দেশ উল্লেখ করুন (যেমন, "লন্ডন, ইউকে", শুধু "লন্ডন" নয়)।
    • রাস্তার ঠিকানা: সম্পূর্ণ ঠিকানা দিন (যেমন, "1600 Pennsylvania Ave NW, Washington, DC")।
    • পোস্টাল/জিপ কোড: এর সাথে অবশ্যই দেশের নাম উল্লেখ করতে হবে (যেমন, "90210, USA", "90210" নয়)।

ব্যবহারের ধরণ:

  1. বর্তমান আবহাওয়া: শুধু location উল্লেখ করুন। datehour উল্লেখ করবেন না।

  2. ঘণ্টাভিত্তিক পূর্বাভাস: location , date এবং hour (০-২৩) উল্লেখ করুন। নির্দিষ্ট সময়ের (যেমন, "বিকেল ৫টায়") জন্য অথবা "আগামী কয়েক ঘণ্টা" বা "আজ পরে"-র মতো সময়কালের জন্য এটি ব্যবহার করুন। ব্যবহারকারী মিনিট উল্লেখ করলে, নিকটতম ঘণ্টায় সংখ্যাটি কমিয়ে আনা হবে। এখন থেকে ১২০ ঘণ্টার বেশি সময়ের ঘণ্টাভিত্তিক পূর্বাভাস সমর্থিত নয়। বিগত ২৪ ঘণ্টা পর্যন্ত ঐতিহাসিক ঘণ্টাভিত্তিক আবহাওয়ার তথ্য সমর্থিত।

  3. দৈনিক পূর্বাভাস: location এবং date উল্লেখ করুন। hour উল্লেখ করবেন না। সাধারণ দিনের অনুরোধের জন্য এটি ব্যবহার করুন (যেমন, "আগামীকালের আবহাওয়া", "শুক্রবার আবহাওয়া", "২৫/১২ তারিখের আবহাওয়া")। যদি আজকের তারিখ উল্লেখ না থাকে, তবে ব্যবহারকারীর কাছ থেকে বিষয়টি স্পষ্ট করে নিন। আজকের তারিখসহ ১০ দিনের বেশি দিনের দৈনিক পূর্বাভাস দেওয়া সম্ভব নয়। ঐতিহাসিক আবহাওয়া তথ্য সমর্থিত নয়।

প্যারামিটার সীমাবদ্ধতা:

  • সময় অঞ্চল: সমস্ত date এবং hour ইনপুট অবশ্যই অবস্থানের স্থানীয় সময় অঞ্চল অনুযায়ী হতে হবে, ব্যবহারকারীর সময় অঞ্চল অনুযায়ী নয়।
  • তারিখের ফরম্যাট: ইনপুট অবশ্যই {year, month, day} পূর্ণসংখ্যায় বিভক্ত হতে হবে।
  • একক: ডিফল্ট হিসেবে METRIC ব্যবহৃত হয়। যদি ব্যবহারকারী মার্কিন মান ব্যবহার করতে চান বা স্পষ্টভাবে অনুরোধ করেন, তবে ফারেনহাইট/মাইলের জন্য units_system কে IMPERIAL এ সেট করুন।
compute_routes

নির্দিষ্ট উৎস এবং গন্তব্যের মধ্যে একটি ভ্রমণ পথ গণনা করে। সমর্থিত ভ্রমণ মোড: ড্রাইভ (ডিফল্ট), ওয়াক।

প্রয়োজনীয় তথ্য (অত্যাবশ্যক): উৎস এবং গন্তব্য উভয়ই আবশ্যক। প্রত্যেকটি অবশ্যই নিম্নলিখিত পদ্ধতিগুলোর যেকোনো একটি ব্যবহার করে, নিজ নিজ ফিল্ডের মধ্যে অন্তর্ভুক্ত করে প্রদান করতে হবে:

  • ঠিকানা: (স্ট্রিং, যেমন, 'আইফেল টাওয়ার, প্যারিস')। দ্রষ্টব্য: ইনপুট ঠিকানা যত বেশি সুনির্দিষ্ট বা বিস্তারিত হবে, ফলাফল তত ভালো হবে।

  • lat_lng: (object, {"latitude": number, "longitude": number})

  • place_id: (স্ট্রিং, যেমন, 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') দ্রষ্টব্য: এই আইডিটি search_places টুল থেকে পাওয়া যাবে। যেকোনো ধরনের ইনপুটের সংমিশ্রণ অনুমোদিত (যেমন, ঠিকানা দিয়ে উৎস, অক্ষাংশ ও দ্রাঘিমাংশ দিয়ে গন্তব্য)। যদি উৎস বা গন্তব্য কোনো একটি অনুপস্থিত থাকে, তাহলে টুলটি চালু করার চেষ্টা করার আগে আপনাকে অবশ্যই ব্যবহারকারীর কাছে বিষয়টি স্পষ্ট করে নিতে হবে

টুল কলের উদাহরণ: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

এমসিপি টুলের স্পেসিফিকেশন জানুন

একটি MCP সার্ভারের সমস্ত টুলের স্পেসিফিকেশন পেতে, tools/list মেথডটি ব্যবহার করুন। নিম্নলিখিত উদাহরণটি দেখায় কিভাবে curl ব্যবহার করে MCP সার্ভারের মধ্যে বর্তমানে উপলব্ধ সমস্ত টুল এবং তাদের স্পেসিফিকেশন তালিকাভুক্ত করা যায়।

কার্ল অনুরোধ
                      curl --location 'https://mapstools.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'