টুল: compute_routes
নির্দিষ্ট যাত্রা শুরুর স্থান ও গন্তব্যের মধ্যে ভ্রমণ রুট গণনা করে। কাজ করে এমন ভ্রমণ মোড: ড্রাইভ (ডিফল্ট), হাঁটা।
ইনপুট সংক্রান্ত প্রয়োজনীয়তা (গুরুত্বপূর্ণ): যাত্রা শুরুর জায়গা ও গন্তব্য, দুটিই প্রয়োজন। প্রতিটি তথ্যকে তার নিজ নিজ ফিল্ডের মধ্যে নেস্ট করে নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি ব্যবহার করে প্রদান করতে হবে:
ঠিকানা: (স্ট্রিং, যেমন, 'আইফেল টাওয়ার, প্যারিস')। মনে রাখবেন: ইনপুট করা ঠিকানা যত বেশি বিস্তারিত বা নির্দিষ্ট হবে, ফলাফল তত ভালো হবে।
lat_lng: (object, {"latitude": number, "longitude": number})
place_id: (স্ট্রিং, যেমন, 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') মনে রাখবেন: এই আইডি search_places টুল থেকে পাওয়া যেতে পারে। ইনপুট ধরনের যেকোনও কম্বিনেশন ব্যবহার করা যেতে পারে (যেমন, ঠিকানা অনুযায়ী অরিজিন, lat_lng অনুযায়ী গন্তব্য)। সোর্স বা ডেস্টিনেশনের তথ্য না থাকলে, টুলে কল করার চেষ্টা করার আগে আপনাকে অবশ্যই ব্যবহারকারীর কাছে স্পষ্টীকরণ চাইতে হবে।
টুল কলের উদাহরণ: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}
- গ্রাউন্ডেড আউটপুটকে অবশ্যই সোর্সের সাথে অ্যাট্রিবিউট করতে হবে এবং এটি করার জন্য
attributionফিল্ড থেকে পাওয়া তথ্য ব্যবহার করতে হবে, যদি তা উপলভ্য থাকে।
compute_routes 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": "compute_routes", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
ইনপুট স্কিমা
ComputeRoutesRequest.
ComputeRoutesRequest
| JSON উপস্থাপনা |
|---|
{ "origin": { object ( |
| ফিল্ড | |
|---|---|
origin |
প্রয়োজনীয়। প্রথম ওয়েপয়েন্ট। |
destination |
প্রয়োজনীয়। গন্তব্যের ওয়েপয়েন্ট। |
travelMode |
ঐচ্ছিক। পরিবহনের মোড নির্দিষ্ট করে। |
Waypoint
| JSON উপস্থাপনা |
|---|
{ // Union field |
| ফিল্ড | |
|---|---|
ইউনিয়ন ফিল্ড location_type। লোকেশন দেখানোর বিভিন্ন উপায়। location_type শুধুমাত্র নিম্নলিখিতগুলির মধ্যে একটি হতে পারে: |
|
latLng |
ভৌগোলিক কোঅর্ডিনেট ব্যবহার করে নির্দিষ্ট করা একটি পয়েন্ট। |
placeId |
ওয়েপয়েন্টের সাথে যুক্ত প্লেস আইডি। |
address |
মানুষের-পঠনযোগ্য ঠিকানা বা প্লাস কোড। বিবরণের জন্য https://plus.codes দেখুন। |
LatLng
| JSON উপস্থাপনা |
|---|
{ "latitude": number, "longitude": number } |
| ফিল্ড | |
|---|---|
latitude |
ডিগ্রিতে অক্ষাংশ। এটি অবশ্যই [-৯০.০, +৯০.০] রেঞ্জের মধ্যে থাকতে হবে। |
longitude |
ডিগ্রিতে দ্রাঘিমাংশ। এটি অবশ্যই [-১৮০.০, +১৮০.০] রেঞ্জের মধ্যে থাকতে হবে। |
RouteTravelMode
ভ্রমণের মোড নির্দিষ্ট করতে ব্যবহৃত ভ্যালুর সেট।
| Enums | |
|---|---|
ROUTE_TRAVEL_MODE_UNSPECIFIED |
ভ্রমণ মোড উল্লেখ করা নেই। ডিফল্ট হিসেবে DRIVE সেট করা থাকে। |
DRIVE |
যাত্রীবাহী গাড়িতে ভ্রমণ। |
WALK |
হেঁটে ভ্রমণ করা। মনে রাখবেন: WALK রুট বিটা ভার্সনে আছে এবং কখনও কখনও এতে স্পষ্ট ফুটপাথ বা পথচারীদের জন্য রাস্তা নাও থাকতে পারে। আপনার অ্যাপে দেখানো সব হাঁটার জন্য ব্যবহারকারীকে এই সতর্কতা দেখাতে হবে। |
আউটপুট স্কিমা
ComputeRoutesResponse.
ComputeRoutesResponse
| JSON উপস্থাপনা |
|---|
{
"routes": [
{
object ( |
| ফিল্ড | |
|---|---|
routes[] |
অনুরোধ করা যাত্রা শুরুর স্থান ও গন্তব্যের মধ্যে রুট থাকে। বর্তমানে শুধুমাত্র একটি রুট দেখানো হয়। |
রুট
| JSON উপস্থাপনা |
|---|
{
"distanceMeters": integer,
"duration": string,
"attribution": {
object ( |
| ফিল্ড | |
|---|---|
distanceMeters |
মিটার হিসেবে রুটের ভ্রমণের দূরত্ব। |
duration |
রুটে নেভিগেট করার জন্য প্রয়োজনীয় সময়। ' |
attribution |
রুট দেখানোর জন্য প্রয়োজনীয় অ্যাট্রিবিউশন। |
সময়সীমা
| JSON উপস্থাপনা |
|---|
{ "seconds": string, "nanos": integer } |
| ফিল্ড | |
|---|---|
seconds |
সময়ের স্প্যানের সাইন করা সেকেন্ড। -৩১৫,৫৭৬,০০০,০০০ থেকে +৩১৫,৫৭৬,০০০,০০০-এর মধ্যে হতে হবে, এর মধ্যে এই সংখ্যাগুলিও অন্তর্ভুক্ত। মনে রাখবেন: এই সীমাগুলি এগুলি থেকে গণনা করা হয়: ৬০ সেকেন্ড/মিনিট * ৬০ মিনিট/ঘণ্টা * ২৪ ঘণ্টা/দিন * ৩৬৫.২৫ দিন/বছর * ১০,০০০ বছর |
nanos |
সময়ের ব্যাপ্তির ন্যানোসেকেন্ড রেজোলিউশনে স্বাক্ষরিত ভগ্নাংশ। এক সেকেন্ডের কম সময়সীমা 0 |
অ্যাট্রিবিউশন
| JSON উপস্থাপনা |
|---|
{ "title": string, "url": string } |
| ফিল্ড | |
|---|---|
title |
অ্যাট্রিবিউশনের জন্য যে শীর্ষক দেখানো হবে। |
url |
অ্যাট্রিবিউশনের জন্য লিঙ্ক করার URL. |
টুল অ্যানোটেশন
কোনও টুলের প্রাথমিক ঝুঁকি বর্ণনা করতে MCP ক্লায়েন্টদের কাছে টুল অ্যানোটেশন পাঠানো হয়। বেশিরভাগ ক্লায়েন্ট এই ইঙ্গিতগুলিকে বিশ্বাসযোগ্য হিসেবে বিবেচনা করে না, তবে ব্যবহারকারীকে কখন কনফার্মেশন প্রম্পট পাঠানো হতে পারে তা নির্ধারণ করতে এগুলি ব্যবহার করা যেতে পারে।
টাইটেল স্ট্রিংয়ের সাথে, নিম্নলিখিত বুলিয়ান হিন্টকে এইভাবে সংজ্ঞায়িত করা হয়:
readOnlyHint: সত্য হলে, টুলটি তার এনভায়রনমেন্ট পরিবর্তন করে না। ডিফল্ট: false.destructiveHint: মান 'সত্য' হলে, টুলটি ডেটা মুছে দেওয়ার মতো অ্যাকশন পারফর্ম করতে পারবে। এটি মিথ্যা হলে, টুলটি শুধুমাত্র যোগাত্মক অ্যাকশন পারফর্ম করতে পারবে। ডিফল্ট: true.idempotentHint: true হলে, একই আর্গুমেন্ট সহ টুলটি বারবার কল করলে এর এনভায়রনমেন্টের উপর কোনও অতিরিক্ত প্রভাব পড়বে না। ডিফল্ট: false.openWorldHint: এটি সত্য হলে, টুলটি এক্সটার্নাল এন্টিটির 'ওপেন ওয়ার্ল্ড' ইন্টার্যাক্ট করতে পারবে। ফলস হলে, টুলটি শুধুমাত্র ইন্টার্নাল এন্টিটির সাথে ইন্টার্যাক্ট করতে পারবে। যেমন, ওয়েব সার্চ টুল হল ওপেন ওয়ার্ল্ড, কিন্তু মেমরি টুল ওপেন ওয়ার্ল্ড নয়।
ধ্বংসাত্মক ইঙ্গিত: ❌ | আইডেমপোটেন্ট ইঙ্গিত: ❌ | শুধুমাত্র-পঠনযোগ্য ইঙ্গিত: ✅ | ওপেন ওয়ার্ল্ড ইঙ্গিত: ❌