כלי: compute_routes
חישוב מסלול נסיעה בין נקודת מוצא ליעד שצוינו. מצבי נסיעה נתמכים: נהיגה (ברירת מחדל), הליכה.
דרישות קלט (חשובות): נדרשים גם מקור וגם יעד. צריך לספק כל אחד מהם באחת מהשיטות הבאות, כשהם מוטמעים בשדה המתאים:
address: (מחרוזת, למשל, 'מגדל אייפל, פריז'). הערה: ככל שהכתובת שמוזנת מפורטת או ספציפית יותר, כך התוצאות יהיו טובות יותר.
lat_lng: (אובייקט, {"latitude": number, "longitude": number})
place_id: (מחרוזת, למשל, 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') הערה: אפשר לקבל את המזהה הזה מהכלי search_places. מותר להשתמש בכל שילוב של סוגי קלט (לדוגמה, מקור לפי כתובת, יעד לפי lat_lng). אם חסר מקור או יעד, חובה לבקש מהמשתמש הבהרה לפני שמנסים להפעיל את הכלי.
קריאה לכלי לדוגמה: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}
- אם יש מידע בשדה
attribution, צריך לציין את המקור של הפלט המבוסס על הארקה באמצעות המידע הזה.
בדוגמת הקוד הבאה מוצג שימוש בפקודה curl כדי להפעיל את הכלי compute_routes MCP.
| בקשת 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": "compute_routes", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
סכימת הקלט
ComputeRoutesRequest.
ComputeRoutesRequest
| ייצוג ב-JSON |
|---|
{ "origin": { object ( |
| שדות | |
|---|---|
origin |
חובה. ציון דרך של נקודת המוצא. |
destination |
חובה. נקודת ציון של היעד. |
travelMode |
אופציונלי. מציין את אמצעי התחבורה. |
נקודת ציון
| ייצוג ב-JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה איחוד location_type. דרכים שונות לייצוג מיקום. הערך location_type יכול להיות רק אחד מהבאים: |
|
latLng |
נקודה שצוינה באמצעות קואורדינטות גיאוגרפיות. |
placeId |
מזהה המקום שמשויך לנקודת הביניים. |
address |
כתובת קריאה או קוד פלוס. פרטים נוספים זמינים בכתובת https://plus.codes. |
LatLng
| ייצוג ב-JSON |
|---|
{ "latitude": number, "longitude": number } |
| שדות | |
|---|---|
latitude |
קו הרוחב במעלות. הערך חייב להיות בטווח [-90.0, +90.0]. |
longitude |
קו האורך במעלות. הערך חייב להיות בטווח [-180.0, +180.0]. |
RouteTravelMode
קבוצת ערכים שמשמשת לציון אמצעי התחבורה.
| טיפוסים בני מנייה (enum) | |
|---|---|
ROUTE_TRAVEL_MODE_UNSPECIFIED |
לא צוין אמצעי תחבורה. ברירת המחדל היא DRIVE. |
DRIVE |
נסיעה במכונית פרטית. |
WALK |
הליכה. הערה: מסלולי WALK הם בגרסת בטא, ולפעמים יכול להיות שחסרים בהם מדרכות ברורות או שבילים להולכי רגל. חובה להציג את האזהרה הזו למשתמש לגבי כל הליכה שמוצגת באפליקציה. |
סכימת הפלט
ComputeRoutesResponse.
ComputeRoutesResponse
| ייצוג ב-JSON |
|---|
{
"routes": [
{
object ( |
| שדות | |
|---|---|
routes[] |
כולל מסלולים בין נקודת המוצא ליעד המבוקשים. בשלב הזה מוחזר רק מסלול אחד. |
מסלול
| ייצוג ב-JSON |
|---|
{
"distanceMeters": integer,
"duration": string,
"attribution": {
object ( |
| שדות | |
|---|---|
distanceMeters |
מרחק הנסיעה במסלול, במטרים. |
duration |
משך הזמן שנדרש כדי לנווט במסלול. משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב- |
attribution |
חובה להציג את הסימן למודעה עם המסלול. |
משך
| ייצוג ב-JSON |
|---|
{ "seconds": string, "nanos": integer } |
| שדות | |
|---|---|
seconds |
מספר השניות של טווח הזמן, כולל סימן. הערך חייב להיות בין -315,576,000,000 לבין +315,576,000,000, כולל. הערה: הגבולות האלה מחושבים לפי: 60 שניות בדקה * 60 דקות בשעה * 24 שעות ביממה * 365.25 ימים בשנה * 10,000 שנים |
nanos |
שברים חתומים של שנייה ברזולוציית ננו-שנייה של טווח הזמן. משכי זמן של פחות משנייה אחת מיוצגים באמצעות שדה |
שיוך (Attribution)
| ייצוג ב-JSON |
|---|
{ "title": string, "url": string } |
| שדות | |
|---|---|
title |
השם שיוצג לשיוך. |
url |
כתובת ה-URL לקישור לצורך שיוך. |
הערות בכלי
הערות על כלי נשלחות ללקוחות MCP כדי לתאר את הסיכון הבסיסי של כלי מסוים. רוב הלקוחות מתייחסים לרמזים האלה כאל רמזים לא מהימנים, אבל אפשר להשתמש בהם כדי להחליט מתי לשלוח למשתמש הנחיה לאישור.
בנוסף למחרוזת הכותרת, מוגדרים הרמזים הבוליאניים הבאים:
-
readOnlyHint: אם הערך הוא true, הכלי לא משנה את הסביבה שלו. ברירת מחדל: false. -
destructiveHint: אם הערך הוא True, הכלי יכול לבצע פעולות הרסניות. אם הערך הוא false, הכלי יכול לבצע רק פעולות של הוספה. ברירת מחדל: true. -
idempotentHint: אם הערך הוא True, קריאה חוזרת לכלי עם אותם ארגומנטים לא תשפיע על הסביבה שלו. ברירת מחדל: false. -
openWorldHint: אם הערך הוא true, הכלי יכול ליצור אינטראקציה עם 'עולם פתוח' של ישויות חיצוניות. אם הערך הוא false, הכלי יכול ליצור אינטראקציה רק עם ישויות פנימיות. לדוגמה, כלי לחיפוש באינטרנט יהיה עולם פתוח, אבל כלי לזיכרון לא יהיה עולם פתוח.
רמז הרסני: ❌ | רמז אידמפוטנטי: ❌ | רמז לקריאה בלבד: ✅ | רמז לעולם פתוח: ❌