टूल: resolve_maps_urls
यह फ़ंक्शन, Google Maps के यूआरएल की सूची को Google Maps के कैननिकल प्लेस आईडी में बदलता है.
इस टूल को कब कॉल करना चाहिए (ज़रूरी):
- इस टूल का इस्तेमाल तब करें, जब उपयोगकर्ता Google Maps पर शेयर किए गए एक या एक से ज़्यादा लिंक या यूआरएल देता है. जैसे, 'https://maps.app.goo.gl/...', 'https://www.google.com/maps/place/...' या 'https://maps.google.com/...') से शुरू होता है. ऐसे में, आपको कैननिकल प्लेस आईडी निकालने होंगे.
- एक बैच अनुरोध में, ज़्यादा से ज़्यादा 20 यूआरएल की समस्याओं को ठीक करने के लिए कहा जा सकता है.
इनपुट से जुड़ी ज़रूरी शर्तें (अहम):
urls(स्ट्रिंग का ऐरे - ज़रूरी है): हल करने के लिए Google Maps के यूआरएल की सूची. हर यूआरएल, Google Maps का मान्य और एक जगह का यूआरएल होना चाहिए.
Google Maps में सेव करें:
- जवाब में
save_to_maps_urlफ़ील्ड शामिल होता है: यह एक Google Maps लिंक होता है, जिसमें सभी जगहों की जानकारी होती है. - जब उपयोगकर्ता को Google Maps में, हल की गई जगहों को सूची के तौर पर सेव करना, शेयर करना या खोलना हो (जैसे, बातचीत में शेयर की गई जगहों को इकट्ठा करना), तो उसे यह लिंक दिखाएं. इस लिंक को खुद न बनाएं.
गड़बड़ी ठीक करना (CRITICAL):
- यह एक बैच प्रोसेसिंग टूल है. ऐसा हो सकता है कि किसी अनुरोध के लिए "मिले-जुले नतीजे" मिलें. उदाहरण के लिए, कुछ यूआरएल ठीक से काम करें, जबकि कुछ न करें.
entitiesकी आउटपुट सूची,urlsके इंडेक्स के साथ 1:1 मैप होती है. यूआरएल को हल न कर पाने की वजह से,entitiesसूची में मौजूद उससे जुड़े इंडेक्स मेंEntityमैसेज (कोई फ़ील्ड सेट नहीं है) दिखेगा.- आपको रिस्पॉन्स में मौजूद
failed_requestsमैप फ़ील्ड की जांच ज़रूर करनी चाहिए, ताकि यह पता लगाया जा सके कि कौनसे यूआरएल का इंडेक्स नहीं बन पाया.failed_requestsकी वैल्यू, अनुरोध में शामिल उस यूआरएल का इंडेक्स दिखाती है जिसे प्रोसेस नहीं किया जा सका. यह इंडेक्स, 0 से शुरू होता है. कुछ कॉल में गड़बड़ी होने की वजह से, यह न मान लें कि बैच में मौजूद सभी कॉल में गड़बड़ी हुई है.
यहां दिए गए कोड सैंपल में, curl का इस्तेमाल करके resolve_maps_urls एमसीपी टूल को कॉल करने का तरीका बताया गया है.
| कर्ल अनुरोध |
|---|
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": "resolve_maps_urls", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
इनपुट स्कीमा
ResolveMapsUrls के लिए अनुरोध मैसेज.
ResolveMapsUrlsRequest
| JSON के काेड में दिखाना |
|---|
{ "urls": [ string ] } |
| फ़ील्ड | |
|---|---|
urls[] |
ज़रूरी है. वे Google Maps यूआरएल जिन्हें रिज़ॉल्व करना है. हर यूआरएल, Google Maps का मान्य यूआरएल होना चाहिए. उदाहरण के लिए, https://maps.app.goo.gl/..., https://www.google.com/maps/place/... या https://maps.google.com/.... फ़िलहाल, सिर्फ़ एक जगह पर ले जाने वाले यूआरएल इस्तेमाल किए जा सकते हैं. ज़्यादा से ज़्यादा 20 यूआरएल दिए जा सकते हैं. |
आउटपुट स्कीमा
ResolveMapsUrls के लिए जवाब का मैसेज.
ResolveMapsUrlsResponse
| JSON के काेड में दिखाना |
|---|
{ "entities": [ { object ( |
| फ़ील्ड | |
|---|---|
entities[] |
सिर्फ़ आउटपुट के लिए. Google Maps के यूआरएल से हल की गई इकाइयों की सूची. यह गारंटी है कि यह सूची, अनुरोध |
failedRequests |
सिर्फ़ आउटपुट के लिए. यह मैप, Google Maps के यूआरएल के लिए कुछ अनुरोध पूरे न होने की जानकारी देता है. इसकी कुंजी, एक ऑब्जेक्ट, जिसमें |
saveToMapsUrl |
सिर्फ़ आउटपुट के लिए. Google Maps में, ठीक की गई सभी इकाइयों को सेव करने का लिंक. |
इकाई
| JSON के काेड में दिखाना |
|---|
{ // Union field |
| फ़ील्ड | |
|---|---|
यूनियन फ़ील्ड entity. हल की गई इकाई का टाइप. entity इनमें से सिर्फ़ एक हो सकता है: |
|
place |
हल की गई जगह का संसाधन नाम. |
FailedRequestsEntry
| JSON के काेड में दिखाना |
|---|
{
"key": integer,
"value": {
object ( |
| फ़ील्ड | |
|---|---|
key |
|
value |
|
स्थिति
| JSON के काेड में दिखाना |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| फ़ील्ड | |
|---|---|
code |
स्टेटस कोड, जो |
message |
डेवलपर को दिखने वाला गड़बड़ी का मैसेज, जो अंग्रेज़ी में होना चाहिए. उपयोगकर्ता को दिखने वाली गड़बड़ी के किसी भी मैसेज को स्थानीय भाषा में होना चाहिए. साथ ही, उसे |
details[] |
मैसेज की सूची, जिसमें गड़बड़ी की जानकारी होती है. एपीआई के इस्तेमाल के लिए, मैसेज टाइप का एक सामान्य सेट होता है. एक ऑब्जेक्ट, जिसमें आर्बिट्ररी टाइप के अलग-अलग फ़ील्ड शामिल हों. एक ऐसा अतिरिक्त फ़ील्ड |
कोई भी
| JSON के काेड में दिखाना |
|---|
{ "typeUrl": string, "value": string } |
| फ़ील्ड | |
|---|---|
typeUrl |
यह फ़ील्ड, क्रम से लगाए गए Protobuf मैसेज के टाइप की पहचान करता है. इसमें यूआरआई रेफ़रंस होता है. इसमें स्लैश पर खत्म होने वाला प्रीफ़िक्स और पूरी तरह से क्वालिफ़ाइड टाइप का नाम होता है. उदाहरण: type.googleapis.com/google.protobuf.StringValue इस स्ट्रिंग में कम से कम एक प्रीफ़िक्स कोई भी हो सकता है. Protobuf लागू करने वाले लोगों से उम्मीद की जाती है कि वे टाइप की पहचान करने के लिए, आखिरी सभी टाइप यूआरएल स्ट्रिंग, मान्य यूआरआई रेफ़रंस होने चाहिए. साथ ही, टेक्स्ट फ़ॉर्मैट के लिए यह ज़रूरी है कि रेफ़रंस के कॉन्टेंट में सिर्फ़ अक्षर, अंक, प्रतिशत के तौर पर कोड किए गए एस्केप, और यहां दिए गए सेट के वर्ण शामिल हों (बाहरी बैकटिक शामिल नहीं हैं):
|
value |
इसमें type_url में बताए गए टाइप का Protobuf सीरियलाइज़ेशन होता है. base64 कोड में बदली गई स्ट्रिंग. |
टूल एनोटेशन
टूल के एनोटेशन, एमसीपी क्लाइंट को भेजे जाते हैं. इनसे किसी टूल से जुड़े बुनियादी जोखिम के बारे में जानकारी मिलती है. ज़्यादातर क्लाइंट, इन संकेतों को भरोसेमंद नहीं मानते. हालांकि, इनका इस्तेमाल यह तय करने के लिए किया जा सकता है कि उपयोगकर्ता को पुष्टि करने का प्रॉम्प्ट कब भेजा जाए.
टाइटल स्ट्रिंग के साथ-साथ, यहां दिए गए बूलियन हिंट भी तय किए गए हैं:
readOnlyHint: अगर यह सही है, तो टूल अपने एनवायरमेंट में बदलाव नहीं करता है. डिफ़ॉल्ट: गलत.destructiveHint: अगर यह वैल्यू 'सही है' पर सेट है, तो टूल, डेटा को मिटाने जैसी कार्रवाइयां कर सकता है. अगर यह वैल्यू 'गलत है' पर सेट है, तो टूल सिर्फ़ जोड़ने वाली कार्रवाइयां कर सकता है. डिफ़ॉल्ट: सही.idempotentHint: अगर यह वैल्यू सही है, तो एक ही आर्ग्युमेंट के साथ टूल को बार-बार कॉल करने से, इसके एनवायरमेंट पर कोई अतिरिक्त असर नहीं पड़ेगा. डिफ़ॉल्ट: गलत.openWorldHint: अगर यह वैल्यू सही है, तो टूल बाहरी इकाइयों के 'ओपन वर्ल्ड' के साथ इंटरैक्ट कर सकता है. अगर यह वैल्यू 'गलत है' पर सेट है, तो टूल सिर्फ़ इंटरनल इकाइयों के साथ इंटरैक्ट कर सकता है. उदाहरण के लिए, वेब पर खोज करने वाला टूल ओपन वर्ल्ड होगा, जबकि मेमोरी टूल ओपन वर्ल्ड नहीं होगा.
बदलाव करने वाला सुराग: ❌ | एक ही बार इस्तेमाल किया जा सकने वाला सुराग: ❌ | सिर्फ़ पढ़ने वाला सुराग: ✅ | ओपन वर्ल्ड सुराग: ❌