الأداة: 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"، اعرض هذا الرابط للمستخدم. لا تنشئ هذا الرابط بنفسك.
معالجة الأخطاء (مهمة):
- هذه أداة لمعالجة على دفعات. قد يعرض الطلب "نتائج مختلطة" (على سبيل المثال، يتم حلّ بعض طلبات البحث بنجاح بينما يتعذّر حلّ البعض الآخر).
- يُضمَن أن تتطابق قائمة النتائج
resultsمع فهارس الإدخالqueriesبنسبة 1:1. سيؤدي طلب البحث الذي يتعذّر تنفيذه إلى ظهور رسالة فارغةResult(لم يتم ضبطentity) في الفهرس المقابل في قائمةresults. - يجب التحقّق من حقل خريطة
failed_requestsفي الردّ لتحديد فهرس الطلب المحدّد الذي تعذّر تنفيذه. يمثّل مفتاحfailed_requestsالفهرس المستند إلى الرقم 0 لطلب البحث الذي تعذّر تنفيذه في الطلب. لا تفترض أنّ طلب الدفعة بأكمله قد تعذّر تنفيذه بسبب تعذُّر تنفيذ جزء منه.
يوضّح نموذج الرمز التالي كيفية استخدام curl لاستدعاء أداة resolve_names 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": "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، ماونتن فيو، كاليفورنيا" أو "1600 Amphitheatre Parkway، ماونتن فيو، كاليفورنيا" أو "برج إيفل، باريس". يجب أن تكون طلبات البحث عبارة عن عنوان أو اسم مكان محدّد. لا تتوفّر المواقع الجغرافية العامة، مثل اسم سلسلة متاجر (مثل "ستاربكس") أو طلب بحث مثل "مطاعم". |
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 |
هو رمز الحالة، ويجب أن يكون قيمة محدّدة مسبقًا من |
message |
يشير إلى رسالة خطأ موجّهة للمطوّرين، ويجب أن تكون الرسالة بالإنجليزية. أما رسائل الخطأ الموجّهة للمستخدمين، فيجب ترجمتها وإرسالها في حقل |
details[] |
يشير إلى قائمة بالرسائل التي تتضمّن تفاصيل الخطأ. تتوفّر مجموعة شائعة من أنواع الرسائل التي يمكن لواجهات برمجة التطبيقات استخدامها. هو كائن يحتوي على حقول من أي نوع، بالإضافة إلى حقل |
أي
| تمثيل JSON |
|---|
{ "typeUrl": string, "value": string } |
| الحقول | |
|---|---|
typeUrl |
تحدّد هذه السمة نوع رسالة Protobuf المتسلسلة باستخدام مرجع URI يتألف من بادئة تنتهي بشرطة مائلة واسم النوع المؤهَّل بالكامل. مثال: type.googleapis.com/google.protobuf.StringValue يجب أن يحتوي هذا السلسلة على حرف واحد على الأقل من البادئة اختيارية، ومن المتوقّع أن تزيل عمليات تنفيذ Protobuf كل ما يسبق آخر يجب أن تكون جميع سلاسل عناوين URL من النوع مراجع URI قانونية مع القيود الإضافية (بالنسبة إلى تنسيق النص) التي يجب أن يتألف محتوى المرجع منها فقط من أحرف أبجدية رقمية وعلامات الهروب المشفرة بالنسبة المئوية والأحرف في المجموعة التالية (باستثناء علامات الاقتباس المزدوجة الخارجية): في التصميم الأصلي لـ |
value |
تحتوي على تسلسل Protobuf للنوع الموصوف بواسطة type_url. سلسلة بترميز base64 |
الثقة
مستوى الثقة في الحلّ.
| عمليات التعداد | |
|---|---|
CONFIDENCE_UNSPECIFIED |
القيمة التلقائية هذه القيمة غير مستخدَمة. |
MEDIUM |
يشير مستوى الثقة المتوسط إلى أنّ الحلّ صحيح على الأرجح، ولكن قد تكون هناك حلول أخرى محتملة. |
HIGH |
يشير مستوى الموثوقية العالي إلى أنّ درجة الدقة صحيحة وتمثّل كيانًا جغرافيًا مكانيًا محدّدًا (مثل مكان محدّد). |
التعليقات التوضيحية للأدوات
يتم إرسال تعليقات توضيحية للأدوات إلى عملاء MCP لوصف المخاطر الأساسية لأداة معيّنة. تتعامل معظم البرامج مع هذه التلميحات على أنّها غير موثوق بها، ولكن يمكن استخدامها لتحديد الوقت الذي قد يتم فيه إرسال طلب تأكيد إلى المستخدم.
بالإضافة إلى سلسلة العنوان، يتم تحديد تلميحات القيم المنطقية التالية على النحو التالي:
-
readOnlyHint: إذا كانت القيمة صحيحة، لن تعدّل الأداة بيئتها. القيمة التلقائية: false. -
destructiveHint: إذا كانت القيمة صحيحة، يمكن للأداة تنفيذ إجراءات مدمّرة. إذا كانت القيمة "خطأ"، يمكن للأداة تنفيذ إجراءات إضافية فقط. القيمة التلقائية: true idempotentHint: إذا كانت القيمة صحيحة، لن يكون لاستدعاء الأداة بشكل متكرر باستخدام الوسيطات نفسها أي تأثير إضافي على بيئتها. القيمة التلقائية: false.openWorldHint: إذا كانت القيمة صحيحة، يمكن للأداة التفاعل مع "عالم مفتوح" من الكيانات الخارجية. إذا كانت القيمة false، يمكن للأداة التفاعل مع الكيانات الداخلية فقط. على سبيل المثال، ستكون أداة البحث على الويب عالمًا مفتوحًا، بينما لن تكون أداة الذاكرة عالمًا مفتوحًا.
تلميح تدميري: ❌ | تلميح متكرّر: ❌ | تلميح للقراءة فقط: ✅ | تلميح للعالم المفتوح: ❌