MCP Tools Reference: mapstools.googleapis.com

टूल: compute_routes

यह फ़ंक्शन, यात्रा शुरू करने की जगह और मंज़िल के बीच का रास्ता दिखाता है. यात्रा के लिए इस्तेमाल किए जा सकने वाले मोड: DRIVE (डिफ़ॉल्ट), WALK.

इनपुट की ज़रूरी शर्तें (अहम जानकारी): इसके लिए, मूल जगह और डेस्टिनेशन, दोनों की जानकारी देना ज़रूरी है. इनमें से हर एक को, यहां दिए गए किसी एक तरीके का इस्तेमाल करके उपलब्ध कराया जाना चाहिए. साथ ही, इन्हें इनके संबंधित फ़ील्ड में नेस्ट किया जाना चाहिए:

  • address: (स्ट्रिंग, जैसे कि 'एफ़िल टावर, पेरिस'). ध्यान दें: इनपुट पता जितना ज़्यादा विस्तृत या सटीक होगा, नतीजे उतने ही बेहतर होंगे.

  • 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"}

  • जवाब में दी गई जानकारी का स्रोत बताना ज़रूरी है. इसके लिए, attribution फ़ील्ड में मौजूद जानकारी का इस्तेमाल करें.

यहां दिए गए कोड सैंपल में, curl का इस्तेमाल करके compute_routes एमसीपी टूल को कॉल करने का तरीका बताया गया है.

कर्ल अनुरोध
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 (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode)
}
फ़ील्ड
origin

object (Waypoint)

ज़रूरी है. यात्रा शुरू होने की जगह का वेपॉइंट.

destination

object (Waypoint)

ज़रूरी है. डेस्टिनेशन वेपॉइंट.

travelMode

enum (RouteTravelMode)

ज़रूरी नहीं. इससे यात्रा के साधन के बारे में पता चलता है.

वेपॉइंट

JSON के काेड में दिखाना
{

  // Union field location_type can be only one of the following:
  "latLng": {
    object (LatLng)
  },
  "placeId": string,
  "address": string
  // End of list of possible types for union field location_type.
}
फ़ील्ड
यूनियन फ़ील्ड location_type. किसी जगह की जानकारी दिखाने के अलग-अलग तरीके. location_type इनमें से सिर्फ़ एक हो सकता है:
latLng

object (LatLng)

भौगोलिक निर्देशांकों का इस्तेमाल करके तय किया गया पॉइंट.

placeId

string

वेपॉइंट से जुड़ा जगह का आईडी.

address

string

ऐसा पता जिसे कोई भी व्यक्ति आसानी से पढ़ सके या प्लस कोड. ज़्यादा जानकारी के लिए, https://plus.codes पर जाएं.

LatLng

JSON के काेड में दिखाना
{
  "latitude": number,
  "longitude": number
}
फ़ील्ड
latitude

number

डिग्री में अक्षांश. यह [-90.0, +90.0] की रेंज में होना चाहिए.

longitude

number

डिग्री में देशांतर. यह [-180.0, +180.0] की रेंज में होना चाहिए.

RouteTravelMode

यात्रा के तरीके के बारे में बताने के लिए इस्तेमाल की जाने वाली वैल्यू का सेट.

Enums
ROUTE_TRAVEL_MODE_UNSPECIFIED यात्रा का कोई तरीका नहीं बताया गया है. डिफ़ॉल्ट रूप से, इसकी वैल्यू DRIVE होती है.
DRIVE कार से यात्रा करना.
WALK पैदल यात्रा करना. ध्यान दें: WALK रास्ते बीटा वर्शन में हैं. इसलिए, हो सकता है कि कभी-कभी इनमें पैदल चलने के लिए साफ़ रास्ते या फ़ुटपाथ न हों. आपको अपने ऐप्लिकेशन में दिखाई जाने वाली सभी पैदल चलने की गतिविधियों के लिए, उपयोगकर्ता को यह चेतावनी दिखानी होगी.

आउटपुट स्कीमा

ComputeRoutesResponse.

ComputeRoutesResponse

JSON के काेड में दिखाना
{
  "routes": [
    {
      object (Route)
    }
  ]
}
फ़ील्ड
routes[]

object (Route)

इसमें अनुरोध की गई जगह से मंज़िल तक के रास्ते शामिल होते हैं. फ़िलहाल, सिर्फ़ एक रास्ता दिखाया जाता है.

रास्ता

JSON के काेड में दिखाना
{
  "distanceMeters": integer,
  "duration": string,
  "attribution": {
    object (Attribution)
  }
}
फ़ील्ड
distanceMeters

integer

रास्ते की दूरी, मीटर में.

duration

string (Duration format)

रास्ते पर चलने में लगने वाला समय.

यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंक हो सकते हैं. यह 's' पर खत्म होती है. उदाहरण: "3.5s".

attribution

object (Attribution)

रास्ते के साथ दिखाने के लिए एट्रिब्यूशन ज़रूरी है.

कुल समय

JSON के काेड में दिखाना
{
  "seconds": string,
  "nanos": integer
}
फ़ील्ड
seconds

string (int64 format)

समय की अवधि के लिए, सेकंड की जानकारी. यह वैल्यू -315,576,000,000 से +315,576,000,000 के बीच होनी चाहिए. ध्यान दें: इन सीमाओं का हिसाब इस तरह लगाया जाता है: 60 सेकंड/मिनट * 60 मिनट/घंटा * 24 घंटे/दिन * 365.25 दिन/साल * 10,000 साल

nanos

integer

समय की अवधि के नैनोसेकंड रिज़ॉल्यूशन पर, सेकंड के साइंड फ़्रैक्शन. एक सेकंड से कम अवधि को 0 seconds फ़ील्ड और पॉज़िटिव या नेगेटिव nanos फ़ील्ड से दिखाया जाता है. एक सेकंड या उससे ज़्यादा अवधि के लिए, nanos फ़ील्ड की शून्य से अलग वैल्यू का साइन, seconds फ़ील्ड के साइन के जैसा होना चाहिए. यह -99,99,99,999 से लेकर +99,99,99,999 के बीच होना चाहिए.

एट्रिब्यूशन

JSON के काेड में दिखाना
{
  "title": string,
  "url": string
}
फ़ील्ड
title

string

एट्रिब्यूशन के लिए दिखाने जाने वाला टाइटल.

url

string

एट्रिब्यूशन के लिए लिंक करने का यूआरएल.

टूल एनोटेशन

टूल के एनोटेशन, एमसीपी क्लाइंट को भेजे जाते हैं. इनसे किसी टूल से जुड़े बुनियादी जोखिम के बारे में जानकारी मिलती है. ज़्यादातर क्लाइंट, इन संकेतों को भरोसेमंद नहीं मानते. हालांकि, इनका इस्तेमाल यह तय करने के लिए किया जा सकता है कि उपयोगकर्ता को पुष्टि करने का प्रॉम्प्ट कब भेजा जाए.

टाइटल स्ट्रिंग के साथ-साथ, यहां दिए गए बूलियन हिंट भी तय किए गए हैं:

  • readOnlyHint: अगर यह सही है, तो टूल अपने एनवायरमेंट में बदलाव नहीं करता है. डिफ़ॉल्ट: गलत.
  • destructiveHint: अगर यह वैल्यू 'सही है' पर सेट है, तो टूल, डेटा को मिटाने जैसी कार्रवाइयां कर सकता है. अगर यह वैल्यू 'गलत है' पर सेट है, तो टूल सिर्फ़ जोड़ने वाली कार्रवाइयां कर सकता है. डिफ़ॉल्ट: सही.
  • idempotentHint: अगर यह वैल्यू सही है, तो एक ही आर्ग्युमेंट के साथ टूल को बार-बार कॉल करने से, इसके एनवायरमेंट पर कोई अतिरिक्त असर नहीं पड़ेगा. डिफ़ॉल्ट: गलत.
  • openWorldHint: अगर यह वैल्यू सही है, तो टूल बाहरी इकाइयों के 'ओपन वर्ल्ड' के साथ इंटरैक्ट कर सकता है. अगर यह वैल्यू 'गलत है' पर सेट है, तो टूल सिर्फ़ इंटरनल इकाइयों के साथ इंटरैक्ट कर सकता है. उदाहरण के लिए, वेब पर खोज करने वाला टूल ओपन वर्ल्ड होगा, जबकि मेमोरी टूल ओपन वर्ल्ड नहीं होगा.

बदलाव करने वाला सुराग: ❌ | एक ही बार इस्तेमाल किया जा सकने वाला सुराग: ❌ | सिर्फ़ पढ़ने वाला सुराग: ✅ | ओपन वर्ल्ड सुराग: ❌