ابزار: resolve_maps_urls
فهرستی از نشانیهای وب Google Maps را به «شناسههای جا» در Google Maps متعارف تبدیل میکند.
چه زمانی این ابزار را فراخوانی کنید (بسیار مهم):
- وقتی کاربر یک یا چند پیوند یا نشانی وب همرسانی Google Maps (مثلاً «https://maps.app.goo.gl/...») ارائه میدهد، از این ابزار استفاده کنید. «https://www.google.com/maps/place/...» یا «https://maps.google.com/...») و باید «شناسههای مکان» متعارف زیربنایی را استخراج کنید.
- میتوانید حداکثر ۲۰ نشانی وب را برای حلوفصل در یک درخواست دستهای مشخص کنید.
الزامات ورودی (بسیار مهم):
urls(آرایه رشتهها - اجباری): فهرست نشانیهای وب Google Maps برای حل کردن. هر نشانی وب باید نشانی وب معتبر و تکمکانی Google Maps باشد.
ذخیره در Google Maps:
- پاسخ شامل فیلد
save_to_maps_urlاست: یک پیوند Google Maps که حاوی همه مکانهای با موفقیت حلشده است. - وقتی کاربر میخواهد مکانهای حلشده را بهعنوان فهرستی در Google Maps ذخیره، همرسانی، یا باز کند (مثلاً جمعآوری مکانهای همرسانیشده در مکالمه)، این پیوند را به کاربر ارائه دهید. این پیوند را خودتان نسازید.
مدیریت خطا (بسیار مهم):
- این ابزار پردازش دستهای است. ممکن است درخواست «نتایج مختلط» برگرداند (مثلاً برخیاز نشانیهای وب با موفقیت حلوفصل شوند درحالیکه برخی دیگر ناموفق باشند).
- تضمین میشود که فهرست خروجی
entitiesبا نمایههای ورودیurlsبهصورت ۱:۱ نگاشت شود. وضوح نشانی وب ناموفق منجر به پیامEntityخالی (هیچ فیلدی تنظیم نشده است) در نمایه مربوطه در فهرستentitiesمیشود. - باید فیلد نقشه
failed_requestsرا در پاسخ بررسی کنید تا مشخص شود کدام نمایه نشانی وب خاص ناموفق بوده است. کلیدfailed_requestsنشاندهنده نمایه مبتنی بر صفر نشانی وب ناموفق در درخواست است. فرض نکنید که کل تماس دستهای بهدلیل یک شکست جزئی ناموفق بوده است.
نمونه کد زیر نحوه استفاده از 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 MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
طرحواره ورودی
پیام درخواست برای ResolveMapsUrls.
ResolveMapsUrlsRequest
| نمایش JSON |
|---|
{ "urls": [ string ] } |
| فیلدها | |
|---|---|
urls[] |
الزامی. نشانیهای وب Google Maps که باید حلوفصل شوند. هر نشانی وب باید نشانی وب معتبر Google Maps باشد، برای مثال، https://maps.app.goo.gl/...، https://www.google.com/maps/place/...، یا https://maps.google.com/.... درحالحاضر، فقط نشانیهای وبی که به یک مکان اشاره میکنند پشتیبانی میشوند. میتوانید حداکثر ۲۰ نشانی وب مشخص کنید. |
طرح خروجی
پیام پاسخ برای ResolveMapsUrls.
ResolveMapsUrlsResponse
| نمایش JSON |
|---|
{ "entities": [ { object ( |
| فیلدها | |
|---|---|
entities[] |
فقط خروجی. فهرست نهادهای حلشده از نشانیهای وب Google Maps. تضمین میشود که با نمایههای |
failedRequests |
فقط خروجی. نقشهای که خرابیهای جزئی را برای نشانیهای وب Google Maps نشان میدهد. کلید، نمایه درخواست ناموفق در فیلد شیئی که حاوی فهرستی از جفتهای |
saveToMapsUrl |
فقط خروجی. پیوندی برای ذخیره کردن همه نهادهای باموفقیت حلشده در Google Maps. |
نهاد
| نمایش 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 بهسادگی همه چیز را تا آخرین همه رشتههای نشانی وب نوع باید ارجاعهای URI قانونی با محدودیت اضافی (برای قالب نوشتاری) باشند که محتوای ارجاع باید فقط از نویسههای الفباعددی، گریزهای کدگذاریشده با درصد، و نویسههای موجود در مجموعه زیر (بهجز تیکهای بیرونی) تشکیل شده باشد: در طراحی اصلی |
value |
سریالسازی Protobuf از نوع شرحدادهشده توسط type_url را نگه میدارد. رشته کدبندیشده با Base64. |
حاشیهنویسیهای ابزار
حاشیهنویسیهای ابزار به کارخواهان MCP ارسال میشود تا خطر اصلی ابزار موردنظر را شرح دهد. اکثر کارخواهها این راهنماییها را غیرقابلاعتماد تلقی میکنند، اما میتوان از آنها برای تصمیمگیری درباره زمان ارسال پیامواره تأیید به کاربر استفاده کرد.
همراه با رشته عنوان، نکات بولی زیر بهصورت زیر تعریف میشوند:
-
readOnlyHint: اگر درست باشد، ابزار محیط خود را تغییر نمیدهد. پیشفرض: false. -
destructiveHint: اگر درست باشد، ابزار میتواند کنشهای مخرب انجام دهد. اگر نادرست باشد، ابزار فقط میتواند کنشهای افزایشی انجام دهد. پیشفرض: true. idempotentHint: اگر درست باشد، فراخوانی مکرر ابزار با آرگومانهای یکسان تأثیر بیشتری بر محیط آن نخواهد داشت. پیشفرض: false.openWorldHint: اگر درست باشد، ابزار میتواند با «دنیای باز» نهادهای خارجی تعامل داشته باشد. اگر نادرست باشد، ابزار فقط میتواند با نهادهای داخلی تعامل داشته باشد. برای مثال، ابزار جستجوی وب دنیای باز است، درحالیکه ابزار حافظه دنیای باز نیست.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌