כלי: resolve_maps_urls
הפונקציה הזו מחזירה רשימה של מזהים ייחודיים של מקומות במפות Google מתוך רשימה של כתובות URL קנוניות במפות Google.
מתי כדאי להפעיל את הכלי הזה (קריטי):
- השתמש בכלי הזה כשהמשתמש מספק קישורי שיתוף או כתובות URL של Google Maps (לדוגמה, 'https://maps.app.goo.gl/...', 'https://www.google.com/maps/place/...' או 'https://maps.google.com/...') ואתה צריך לחלץ את מזהי המקום הקנוניים הבסיסיים.
- אפשר לציין עד 20 כתובות URL לפתרון בבקשת Batch אחת.
דרישות קלט (קריטיות):
-
urls(מערך של מחרוזות – חובה): רשימת כתובות ה-URL של מפות Google שצריך לפתור. כל כתובת URL צריכה להיות כתובת URL תקינה של מקום יחיד במפות Google.
Error Handling (CRITICAL):
- זהו כלי לעיבוד ברצף (batch processing). יכול להיות שבקשה תחזיר 'תוצאות מעורבות' (למשל, חלק מכתובות ה-URL נפתחות בהצלחה וחלק לא).
- מובטח שרשימת הפלט של
entitiesתמופה ביחס של 1:1 עם האינדקסים של הקלטurls. אם לא ניתן לפתור כתובת URL, תוצג הודעה ריקהEntity(ללא הגדרת שדות) באינדקס המתאים ברשימהentities. - חובה לבדוק את שדה המפה
failed_requestsבתגובה כדי לזהות את כתובת ה-URL הספציפית שהוספתה לאינדקס נכשלה. המפתח שלfailed_requestsמייצג את האינדקס מבוסס-0 של כתובת ה-URL שנכשלה בבקשה. אל תניחו שכל השיחות באותו אצווה נכשלו בגלל כשל חלקי.
בדוגמה הבאה אפשר לראות איך משתמשים ב-curl כדי להפעיל את כלי ה-MCP 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 tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
סכימת הקלט
הודעת בקשה ל-ResolveMapsUrls.
ResolveMapsUrlsRequest
| ייצוג ב-JSON |
|---|
{ "urls": [ string ] } |
| שדות | |
|---|---|
urls[] |
חובה. כתובות ה-URL של מפות Google שצריך לפתור. כל כתובת URL צריכה להיות כתובת URL תקינה ב-Google Maps, למשל https://maps.app.goo.gl/..., https://www.google.com/maps/place/... או https://maps.google.com/.... בשלב הזה, יש תמיכה רק בכתובות URL שמפנות למקום אחד. אפשר לציין עד 20 כתובות URL. |
סכימת הפלט
הודעת התגובה ל-ResolveMapsUrls.
ResolveMapsUrlsResponse
| ייצוג ב-JSON |
|---|
{ "entities": [ { object ( |
| שדות | |
|---|---|
entities[] |
פלט בלבד. רשימת הישויות שנפתרו מכתובות ה-URL של מפות Google. מובטח מיפוי של 1:1 עם האינדקסים של הבקשה |
failedRequests |
פלט בלבד. מפה שבה מוצגים כשלים חלקיים בכתובות ה-URL של מפות Google. המפתח הוא האינדקס של הבקשה שנכשלה בשדה אובייקט שמכיל רשימה של |
ישות
| ייצוג ב-JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה איחוד entity. סוג הישות שזוהה. הערך entity יכול להיות רק אחד מהבאים: |
|
place |
שם המשאב של המקום שנמצא. |
FailedRequestsEntry
| ייצוג ב-JSON |
|---|
{
"key": integer,
"value": {
object ( |
| שדות | |
|---|---|
key |
|
value |
|
סטטוס
| ייצוג ב-JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| שדות | |
|---|---|
code |
קוד הסטטוס, שצריך להיות ערך enum של |
message |
הודעת שגיאה שמוצגת למפתח, שצריכה להיות באנגלית. כל הודעת שגיאה שמוצגת למשתמש צריכה להיות מותאמת לשפה המקומית ולהישלח בשדה |
details[] |
רשימה של הודעות שכוללות את פרטי השגיאה. יש קבוצה משותפת של סוגי הודעות לשימוש בממשקי API. אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף |
הכול
| ייצוג ב-JSON |
|---|
{ "typeUrl": string, "value": string } |
| שדות | |
|---|---|
typeUrl |
מזהה את הסוג של הודעת Protobuf שעברה סריאליזציה באמצעות הפניה ל-URI שכוללת קידומת שמסתיימת בקו נטוי ואת שם הסוג שמוגדר במלואו. דוגמה: type.googleapis.com/google.protobuf.StringValue המחרוזת הזו צריכה להכיל לפחות תו אחד של התחילית היא שרירותית, ומצפים מהטמעות של Protobuf פשוט להסיר את כל מה שעד לתווים כל המחרוזות של כתובות ה-URL של הסוג חייבות להיות הפניות חוקיות ל-URI, עם הגבלה נוספת (בפורמט הטקסט) שלפיה התוכן של ההפניה חייב לכלול רק תווים אלפאנומריים, תווים מוברחים עם קידוד אחוזים ותווים בערכה הבאה (לא כולל הגרשיים ההפוכים החיצוניים): בתכנון המקורי של |
value |
מכיל סריאליזציה של Protobuf של הסוג שמתואר על ידי type_url. מחרוזת בקידוד Base64. |
הערות על כלים
רמז הרסני: ❌ | רמז אידמפוטנטי: ❌ | רמז לקריאה בלבד: ✅ | רמז לעולם פתוח: ❌