टूल: 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 में, खोजी गई जगहों को सूची के तौर पर सेव करना हो, शेयर करना हो या खोलना हो, तो उसे यह लिंक दिखाएं. जैसे, किसी बातचीत में शेयर की गई जगहों को इकट्ठा करना. इस लिंक को खुद न बनाएं.
गड़बड़ी ठीक करना (ज़रूरी):
- यह एक बैच प्रोसेसिंग टूल है. किसी अनुरोध के "मिले-जुले नतीजे" मिल सकते हैं. उदाहरण के लिए, कुछ यूआरएल को सही तरीके से रिज़ॉल्व किया जा सकता है, जबकि कुछ को नहीं.
entitiesकी आउटपुट सूची, इनपुटurlsइंडेक्स के साथ 1:1 मैप करने की गारंटी देती है. यूआरएल रिज़ॉल्यूशन पूरा न होने पर,entitiesसूची में मौजूद इंडेक्स पर,Entityमैसेज खाली रहेगा. इसका मतलब है कि कोई भी फ़ील्ड सेट नहीं किया गया है.- आपको रिस्पॉन्स में
failed_requestsमैप फ़ील्ड की जांच ज़रूर करनी चाहिए, ताकि यह पता चल सके कि किस यूआरएल को इंडेक्स नहीं किया जा सका.failed_requestsकी कुंजी, अनुरोध में मौजूद उस यूआरएल के 0-आधारित इंडेक्स को दिखाती है जिसे प्रोसेस नहीं किया जा सका. यह न मानें कि कुछ गड़बड़ियों की वजह से पूरा बैच कॉल फ़ेल हो गया है.
यहां दिए गए कोड सैंपल में, curl का इस्तेमाल करके resolve_maps_urls एमसीपी टूल को कॉल करने का तरीका बताया गया है.
| 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": "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: अगर इसकी वैल्यू true है, तो टूल अपने एनवायरमेंट में बदलाव नहीं करता. डिफ़ॉल्ट: false.destructiveHint: अगर इसकी वैल्यू true है, तो टूल नुकसान पहुंचाने वाली कार्रवाइयां कर सकता है. अगर यह वैल्यू false पर सेट है, तो टूल सिर्फ़ जोड़ने वाली कार्रवाइयां कर सकता है. डिफ़ॉल्ट: true.idempotentHint: अगर इसकी वैल्यू true है, तो टूल को एक ही आर्ग्युमेंट के साथ बार-बार कॉल करने पर, उसके एनवायरमेंट पर कोई और असर नहीं पड़ेगा. डिफ़ॉल्ट: false.openWorldHint: सही होने पर, टूल बाहरी इकाइयों की 'विशाल दुनिया' के साथ इंटरैक्ट कर सकता है. अगर यह वैल्यू false है, तो टूल सिर्फ़ इंटरनल इकाइयों के साथ इंटरैक्ट कर सकता है. उदाहरण के लिए, वेब सर्च टूल ओपन वर्ल्ड होगा, जबकि मेमोरी टूल ओपन वर्ल्ड नहीं होगा.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌