כלי: resolve_names
השירות פותר רשימה של שאילתות מיקום ספציפיות (שמות של ציוני דרך או כתובות מדויקות) וממיר אותן למזהי מקומות קנוניים במפות Google.
דרישות קלט (קריטי):
queries(מערך של אובייקטים – חובה): רשימה של שאילתות מיקום שצריך לפתור. אפשר לציין עד 20 שאילתות.- כל אובייקט שאילתה חייב לכלול:
text(מחרוזת – חובה): שאילתת הטקסט שמייצגת שם או כתובת של מקום ספציפי שרוצים לפתור.- דוגמאות:
'Googleplex, Mountain View, CA','1600 Amphitheatre Pkwy, Mountain View, CA','Eiffel Tower, Paris'.
- דוגמאות:
- כל אובייקט שאילתה חייב לכלול:
location_bias(אובייקט – אופציונלי): משתמשים בפרמטר הזה כדי לתת עדיפות לתוצאות באזור גיאוגרפי ספציפי.- פורמט:
{"viewport": {"low": {"latitude": [value], "longitude": [value]}, "high": {"latitude": [value], "longitude": [value]}}}
- פורמט:
region_code(מחרוזת – אופציונלי): קוד האזור של המשתמש במאגר Unicode CLDR (קוד מדינה בן שתי אותיות, למשלUS,CA) כדי להטות את התוצאות.
הוראות לקריאה לפונקציה:
- ספציפיות (קריטי): השאילתות חייבות לייצג שם או כתובת של מקום ספציפי. אין תמיכה בחיפושים כלליים כמו
'restaurants'או בשמות של רשתות כמו'Starbucks'. - אל תפעילו את הכלי הזה אם הכלים הבאים שאתם מתכננים להפעיל כבר מקבלים ישירות מחרוזות של כתובות או שמות מקומות גולמיים.
שמירה במפות Google:
- התשובה כוללת את השדה
save_to_maps_url: קישור אחד למפות Google שמכיל את כל המקומות שנמצאו. - כשהמשתמש רוצה לשמור, לשתף או לפתוח את המקומות שנמצאו כרשימה במפות Google, צריך להציג לו את הקישור הזה. אל תיצרו את הקישור הזה בעצמכם.
טיפול בשגיאות (קריטי):
- זהו כלי לעיבוד ברצף (batch processing). יכול להיות שבקשה תחזיר "תוצאות מעורבות" (למשל, חלק מהשאילתות יטופלו בהצלחה ואחרות ייכשלו).
- רשימת הפלט של
resultsממופה בהכרח ביחס של 1:1 עם האינדקסים של הקלטqueries. שאילתה שנכשלה תגרום להודעתResultריקה (לא מוגדרentity) באינדקס התואם שלה ברשימהresults. - חובה לבדוק את השדה
failed_requestsבתגובה כדי לזהות את אינדקס השאילתה הספציפי שנכשל. המפתח שלfailed_requestsמייצג את האינדקס מבוסס-האפס של השאילתה שנכשלה בבקשה. אל תניחו שכל הקריאה באצווה נכשלה בגלל כישלון חלקי.
בדוגמת הקוד הבאה מוסבר איך להשתמש ב-curl כדי להפעיל את כלי ה-MCP resolve_names.
| בקשת 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_names", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
סכימת הקלט
הודעת בקשה ל-ResolveNames.
ResolveNamesRequest
| ייצוג ב-JSON |
|---|
{ "queries": [ { object ( |
| שדות | |
|---|---|
queries[] |
חובה. רשימה של שאילתות מיקום שצריך לפתור. אפשר לציין עד 20 שאילתות. |
locationBias |
אופציונלי. אזור אופציונלי להטיית תוצאות הרזולוציה. אם מציינים אזור, תוצאות הרזולוציה יוטו לכיוון הישויות שקרובות יותר לאזור הזה. הוספת אם מציינים גם את |
regionCode |
אופציונלי. קוד אזור אופציונלי להטיית תוצאות הרזולוציה. אם מציינים אזור, תוצאות החיפוש יתמקדו בישויות שנמצאות באזור שצוין או בקרבתו. הערך צריך להיות קוד אזור ממאגר CLDR. לדוגמה, "US" או "CA". הוספת אם מציינים גם את |
LocationQuery
| ייצוג ב-JSON |
|---|
{ "text": string } |
| שדות | |
|---|---|
text |
חובה. שאילתת הטקסט שצריך לפתור לישות גיאוגרפית ספציפית במפות Google, כמו מקום או כתובת. ככל שהשאילתה תהיה ספציפית יותר, כך הפתרון יהיה מדויק יותר. לדוגמה, "תל אביב", "Googleplex, Mountain View, CA", "1600 Amphitheatre Parkway, Mountain View, CA" או "מגדל אייפל, פריז". השאילתות חייבות להיות כתובת או שם מקום ספציפיים. אין תמיכה במיקומים כלליים כמו שם של רשת (למשל, "ארומה") או שאילתת חיפוש כמו "מסעדות". |
LocationBias
| ייצוג ב-JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה של איחוד type. סוג ההעדפה למיקום. הערך type יכול להיות רק אחד מהבאים: |
|
viewport |
אזור תצוגה שמוגדר על ידי תיבה תוחמת. |
אזור התצוגה
| ייצוג ב-JSON |
|---|
{ "low": { object ( |
| שדות | |
|---|---|
low |
חובה. הנקודה הנמוכה ביותר באזור התצוגה. |
high |
חובה. הנקודה הגבוהה ביותר של אזור התצוגה. |
LatLng
| ייצוג ב-JSON |
|---|
{ "latitude": number, "longitude": number } |
| שדות | |
|---|---|
latitude |
קו הרוחב במעלות. הוא חייב להיות בטווח [-90.0, +90.0]. |
longitude |
קו האורך במעלות. הוא חייב להיות בטווח [-180.0, +180.0]. |
סכימת הפלט
הודעת תגובה ל-ResolveNames.
ResolveNamesResponse
| ייצוג ב-JSON |
|---|
{ "results": [ { object ( |
| שדות | |
|---|---|
results[] |
פלט בלבד. רשימת הישויות שנפתרו משאילתות המיקום. מובטח מיפוי של 1:1 עם האינדקסים של הבקשה |
failedRequests |
פלט בלבד. מפה שמתקשרת כשלים חלקיים. המפתח הוא האינדקס של הבקשה שנכשלה בשדה אובייקט שמכיל רשימה של זוגות |
saveToMapsUrl |
פלט בלבד. קישור לשמירת כל הישויות שנפתרו בהצלחה במפות Google. |
תוצאה
| ייצוג ב-JSON |
|---|
{ "entity": { object ( |
| שדות | |
|---|---|
entity |
פלט בלבד. הישות שפוענחה משאילתת המיקום. |
confidence |
פלט בלבד. רמת הסמך של הרזולוציה. |
ישות
| ייצוג ב-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, עם הגבלה נוספת (לפורמט הטקסט) שלפיה התוכן של ההפניה חייב לכלול רק תווים אלפאנומריים, תווי בריחה (escape) בקידוד אחוזים ותווים בקבוצה הבאה (לא כולל הגרשים ההפוכים החיצוניים): בעיצוב המקורי של |
value |
מכיל סריאליזציה של Protobuf מהסוג שמתואר על ידי type_url. מחרוזת בקידוד Base64. |
רמת מהימנות
רמת הסמך של הפתרון.
| טיפוסים בני מנייה (enum) | |
|---|---|
CONFIDENCE_UNSPECIFIED |
ערך ברירת המחדל. הערך הזה לא בשימוש. |
MEDIUM |
רמת סמך בינונית מציינת שהרזולוציה כנראה נכונה, אבל יכול להיות שיש מועמדים אחרים. |
HIGH |
רמת סמך גבוהה מציינת שהרזולוציה נכונה ומייצגת ישות גיאוגרפית ספציפית (למשל, מקום ספציפי). |
הערות לגבי הכלים
הערות הכלים נשלחות ללקוחות MCP כדי לתאר את הסיכון הבסיסי של כלי מסוים. רוב הלקוחות מתייחסים לרמזים האלה כלא מהימנים, אבל אפשר להשתמש בהם כדי להחליט מתי לשלוח למשתמש בקשה לאישור.
בנוסף למחרוזת הכותרת, הרמזים הבוליאניים הבאים מוגדרים כך:
-
readOnlyHint: אם הערך הוא True, הכלי לא משנה את הסביבה שלו. ברירת המחדל: false. -
destructiveHint: אם הערך הוא True, הכלי יכול לבצע פעולות הרסניות. אם הערך הוא False, הכלי יכול לבצע רק פעולות הוספה. ברירת המחדל: true. -
idempotentHint: אם הערך הוא True, קריאה חוזרת לכלי עם אותם ארגומנטים לא תשפיע על הסביבה שלו. ברירת המחדל: false. -
openWorldHint: אם הערך הוא True, הכלי יכול לקיים אינטראקציה עם "עולם פתוח" של ישויות חיצוניות. אם הערך הוא false, הכלי יכול לקיים אינטראקציה רק עם ישויות פנימיות. לדוגמה, כלי חיפוש באינטרנט הוא כלי בעולם פתוח, אבל כלי זיכרון הוא לא כלי בעולם פתוח.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌