MCP Tools Reference: mapstools.googleapis.com

الأداة: compute_routes

تحسب هذه الأداة مسارًا للسفر بين نقطة انطلاق ووجهة محدّدتَين. أوضاع السفر المتاحة: DRIVE (تلقائيًا)، WALK

متطلبات الإدخال (مهمة): يجب توفير كل من نقطة الانطلاق والوجهة. يجب توفير كل منهما باستخدام إحدى الطرق التالية، مع تضمينها ضمن الحقل الخاص بها:

  • address: (سلسلة، مثل "برج إيفل، باريس") ملاحظة: كلما كانت تفاصيل العنوان المدخَل أكثر دقة، كانت النتائج أفضل.

  • lat_lng: (كائن، {"latitude": number, "longitude": number})

  • place_id: (سلسلة، مثل "ChIJOwE_Id1w5EAR4Q27FkL6T_0") ملاحظة: يمكن الحصول على رقم التعريف هذا من أداة search_places. يُسمح بأي تركيبة من أنواع الإدخال (مثل نقطة الانطلاق حسب العنوان والوجهة حسب خط الطول والعرض). إذا كانت نقطة الانطلاق أو الوجهة غير متوفّرة، يجب أن تطلب من المستخدم توضيح ذلك قبل محاولة استدعاء الأداة.

مثال على استدعاء الأداة: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

  • يجب تحديد مصدر الناتج الأساسي باستخدام المعلومات من حقل attribution متى توفّرت.

يوضّح المثال التالي كيفية استخدام curl لاستدعاء أداة compute_routes في حزمة أدوات المحادثة المتعددة.

طلب 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 tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

مخطط الإدخال

ComputeRoutesRequest.

ComputeRoutesRequest

تمثيل JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode)
}
الحقول
origin

object (Waypoint)

الحقل مطلوب. نقطة الانطلاق على المسار.

destination

object (Waypoint)

الحقل مطلوب. النقطة الوسيطة للوجهة.

travelMode

enum (RouteTravelMode)

اختياريّ. يحدّد وضع النقل.

Waypoint

تمثيل JSON
{

  // Union field location_type can be only one of the following:
  "latLng": {
    object (LatLng)
  },
  "placeId": string,
  "address": string
  // End of list of possible types for union field location_type.
}
الحقول
حقل الربط location_type طرق مختلفة لتمثيل الموقع الجغرافي يمكن أن يكون location_type واحدًا مما يلي فقط:
latLng

object (LatLng)

نقطة محدّدة باستخدام الإحداثيات الجغرافية

placeId

string

رقم تعريف المكان المرتبط بالنقطة الوسيطة

address

string

عنوان يمكن لشخص عادي قراءته أو رمز Plus Codes يمكنك الاطّلاع على https://plus.codes للحصول على التفاصيل.

LatLng

تمثيل JSON
{
  "latitude": number,
  "longitude": number
}
الحقول
latitude

number

خط العرض بالدرجات يجب أن يكون في النطاق ‎[-90.0, +90.0].

longitude

number

خط الطول بالدرجات يجب أن يكون في النطاق ‎[-180.0, +180.0].

RouteTravelMode

مجموعة من القيم تُستخدم لتحديد وضع السفر

عمليات التعداد
ROUTE_TRAVEL_MODE_UNSPECIFIED لم يتم تحديد وضع السفر. يتم ضبط القيمة تلقائيًا على DRIVE.
DRIVE السفر بالسيارة
WALK السفر سيرًا على الأقدام ملاحظة: مسارات WALK هي في مرحلة تجريبية وقد لا تتضمّن أحيانًا أرصفة واضحة أو مسارات للمشاة. يجب عرض هذا التحذير للمستخدم بشأن كل مسار سير على الأقدام يظهر في تطبيقك.

مخطط النتائج

ComputeRoutesResponse.

ComputeRoutesResponse

تمثيل JSON
{
  "routes": [
    {
      object (Route)
    }
  ]
}
الحقول
routes[]

object (Route)

تحتوي على مسارات بين نقطة الانطلاق والوجهة المطلوبتَين لا يتم حاليًا عرض سوى مسار واحد.

مسار

تمثيل JSON
{
  "distanceMeters": integer,
  "duration": string,
  "attribution": {
    object (Attribution)
  }
}
الحقول
distanceMeters

integer

مسافة السفر في المسار، بالأمتار

duration

string (Duration format)

المدة اللازمة للتنقّل في المسار

مدة بالثواني مع ما يصل إلى تسعة أرقام كسور، وتنتهي بـ 's'. مثال: "3.5s".

attribution

object (Attribution)

تحديد المصدر المطلوب عرضه مع المسار

المدة

تمثيل JSON
{
  "seconds": string,
  "nanos": integer
}
الحقول
seconds

string (int64 format)

الثواني الموقَّعة من الفترة الزمنية يجب أن تكون القيمة في النطاق من ‎-315,576,000,000 إلى ‎+315,576,000,000 ضِمنًا. ملاحظة: يتم احتساب هذه الحدود من: 60 ثانية/دقيقة * 60 دقيقة/ساعة * 24 ساعة/يوم * 365.25 يوم/سنة * 10000 سنة

nanos

integer

أجزاء الثانية الموقَّعة بدقة النانو ثانية من الفترة الزمنية يتم تمثيل المدد الأقل من ثانية واحدة بحقل seconds بقيمة 0 وحقل nanos بقيمة موجبة أو سالبة. بالنسبة إلى المدد التي تبلغ ثانية واحدة أو أكثر، يجب أن تكون قيمة حقل nanos غير الصفرية بنفس علامة حقل seconds. يجب أن تكون القيمة في النطاق من ‎-999,999,999 إلى ‎+999,999,999 ضِمنًا.

تحديد المصدر

تمثيل JSON
{
  "title": string,
  "url": string
}
الحقول
title

string

العنوان الذي سيظهر لتحديد المصدر

url

string

عنوان URL الذي سيؤدي إلى تحديد المصدر

التعليقات التوضيحية للأداة

تلميح مُدمِّر: ❌ | تلميح متكرّر: ❌ | تلميح للقراءة فقط: ✅ | تلميح للعالم المفتوح: ❌