این سرور MCP است که توسط ابزارهای عامل Maps Experience ارائه شده است. این سرور ابزارهایی را برای توسعهدهندگان فراهم میکند تا برنامههای LLM را روی «پلاتفرم Google Maps» بسازند.
سرور «پروتکل بافتار مدل» (MCP) بهعنوان یک پراکسی بین یک سرویس خارجی که بافتار، داده، یا قابلیتها را به یک «مدل زبانی بزرگ» (LLM) یا برنامه هوش مصنوعی ارائه میدهد، عمل میکند. سرورهای MCP برنامههای هوش مصنوعی را به سیستمهای خارجی مانند پایگاههای داده و سرویسهای وب متصل میکنند و پاسخهای آنها را به قالبی ترجمه میکنند که برنامه هوش مصنوعی بتواند درک کند.
راهاندازی سرور
باید قبلاز استفاده، سرورهای MCP را فعال کنید و اصالتسنجی را راهاندازی کنید. برای اطلاعات بیشتر درباره استفاده از سرورهای MCP راه دور Google و Google Cloud، به نمای کلی سرورهای Google Cloud MCP مراجعه کنید.
نقطههای پایانی سرور
نقطه پایان سرویس MCP نشانی شبکه و میانای ارتباطی (معمولاً یک نشانی وب) سرور MCP است که برنامه هوش مصنوعی (میزبان کارخواه MCP) از آن برای برقراری اتصال ایمن و استاندارد استفاده میکند. این نقطه تماس برای LLM است تا زمینه را درخواست کند، ابزاری را فراخوانی کند، یا به منبعی دسترسی پیدا کند.
سرور MCP ابزارهای عامل Maps Experience دارای نقطه پایانی MCP جهانی زیر است:
- https://mapstools.googleapis.com/mcp
ابزارهای «پروتکل زمینهای مدل» (MCP)
ابزار MCP یک تابع یا قابلیت اجرایی است که سرور MCP برای انجام کنشی در دنیای واقعی دراختیار LLM یا برنامه هوش مصنوعی قرار میدهد.
ابزارها
سرور MCP mapstools.googleapis.com ابزارهای زیر را دارد:
| ابزارهای «پروتکل زمینهای مدل» (MCP) | |
|---|---|
search_places |
وقتی درخواست کاربر پیدا کردن مکانها، کسبوکارها، نشانیها، موقعیتها، نقاط دیدنی، یا هر جستجوی دیگری مربوط به Google Maps است، این ابزار را فراخوانی کنید. الزامات ورودی (بسیار مهم):
دستورالعملهای فراخوانی ابزار:
|
lookup_weather |
اطلاعات جامع زیستمحیطی را برای یک مکان بازیابی میکند، ازجمله آبوهوا، کیفیت هوا (AQI و آلایندهها)، و گرده (سطوح آلرژن گونههای درخت، چمن، علف هرز، و گیاه): شرایط فعلی، پیشبینیها/سابقه ساعتی، و پیشبینیهای روزانه برای آبوهوا و کیفیت هوا؛ گرده فقط پیشبینی روزانه است (امروز تا ۴ روز آینده، بدون دادههای ساعتی یا گذشته). دامنهها و قابلیتهای محیطی دردسترس (capabilities: WEATHER، AIR_QUALITY، POLLEN — مهم): * انتخاب صریح اجباری: باید حداقل یکی از WEATHER، AIR_QUALITY، یا POLLEN را در capabilities در هر تماس بگنجانید. حذف capabilities مجاز نیست. * پرسوجوهای کلی / مبهم درباره فضای باز (مجموعه کامل محیطی فضای باز): اگر کاربر سؤالی کلی درباره فضای باز، سفر، یا موقعیت خاصی بپرسد بدون اینکه آن را به دامنه خاصی محدود کند (مثلاً «درحالحاضر شرایط فضای باز برای دویدن چطور است؟»)، هر سه قابلیت را بهطور صریح اضافه کنید (capabilities: ["WEATHER", "AIR_QUALITY", "POLLEN"]) تا مجموعه کامل محیطی فضای باز (آبوهوا + کیفیت هوا + گرده) برگردانده شود؛ برای date/hour گذشته، POLLEN را که سابقه ندارد حذف کنید. * انتخاب دامنه هدفمند (پرسوجوهای خاص): اگر کاربر بهطور خاص فقط یک یا دو دامنه را درخواست کند (مثلاً «درحالحاضر AQI در سیاتل چقدر است؟»)، فقط قابلیتهای درخواستشده (WEATHER، AIR_QUALITY، و/یا POLLEN) را اضافه کنید. فقط دامنه(های) درخواستشده اجرا و برگردانده خواهد شد. دادههای خاص دردسترس براساس دامنه: * آبوهوا (weather): دما (فعلی، دمای حسی، حداکثر/حداقل، شاخص گرما)، باد (سرعت، تندباد، جهت)، رویدادهای آسمانی (طلوع/غروب خورشید، فاز ماه)، بارش (نوع، احتمال، مقدار/QPF)، و شرایط جوی (شاخص فرابنفش، رطوبت، پوشش ابر، احتمال رعدوبرق، فشار هوا). * کیفیت هوا (air_quality): «شاخصهای کیفیت هوای» جهانی و محلی (مقدار AQI، دسته، آلاینده غالب)، توصیههای بهداشتی در ۷ گروه حساسیت، و غلظت آلایندهها (include_pollutant_concentration: true). هر شاخص آلاینده غالب خود را دارد؛ آن را برای هر شاخص گزارش کنید (برای مثال، آلاینده «شاخص کیفیت هوای» جهانی را برای «شاخص کیفیت هوای» ایالات متحده ارائه نکنید). * گرده (pollen): «شاخص جهانی گرده» (UPI، ۰ تا ۵) روزانه برای هر دسته درخت، چمن، و علف هرز و برای هر گونه گیاهی (index.value با index.category آن، مثلاً ۱ = «بسیار کم»)، وضعیت فصلی، واکنشهای متقاطع، و توصیههای بهداشتی. * فیلدهای گرده ازدسترفته: in_season ازدسترفته یعنی فصل آن نیست. گونههای گیاهی را که بدون index برگردانده شدهاند حذف کن، مگراینکه کاربر درباره آن گیاه بپرسد؛ در این صورت بگو هیچ دادهای درباره گرده آن برای امروز گزارش نشده است (سطحی را استنباط نکن). قوانین مکان (بسیار مهم): مکان هدف باید در location بااستفاده از فقط یکی از زیرفیلدهای oneof زیر مشخص شود: ۱. مختصات جغرافیایی (lat_lng): * زمانی استفاده کنید که مختصات دقیق عرض جغرافیایی/ طول جغرافیایی مشخص باشد. * مثال: {"location": {"lat_lng": {"latitude": 34.0522, "longitude": -118.2437}}} ۲. شناسه مکان (place_id): * شناسه مکان Google Maps بدون ابهام (مثلاً، از search_places یا resolve_names دریافت شده باشد). * مثال: {"location": {"place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0"}} ۳. رشته نشانی (address): * شهر/منطقه، محله، نقطه عطف یا مکان جالب، نشانی خیابان، یا کد پستی، ترجیحاً همراه با شهر/کشور. * مثال: {"location": {"address": "Paris, France"}} حالتهای زمان و استفاده (date و hour — بحرانی): * مرجع منطقه زمانی محلی: همه ورودیهای date ({year, month, day}) و hour (0-23) باید در منطقه زمانی رسمی محلی location درخواستشده بیان شوند (برای مثال، پُرسمان برای "Paris tomorrow at 13:00" از تاریخ و ساعت محلی Europe/Paris 13 استفاده میکند)، هرگز از ساعت هماهنگ جهانی یا منطقه زمانی تماسگیرنده استفاده نمیشود. * ۱. شرایط فعلی (date حذف شده و hour حذف شده): * location و capabilities هدف (WEATHER، AIR_QUALITY، POLLEN) را ارائه دهید. date یا hour را مشخص نکنید. * «شرایط کنونی» (CC) را بهصورت همزمان برای دامنه(های) درخواستشده برمیگرداند (آبوهوای کنونی، کیفیت هوای ساعت کنونی، و/یا پیشبینی گرده امروز). * برای کیفیت هوا، «شرایط فعلی» مربوط به یک ساعت است: از آن بهتنهایی برای پاسخ دادن به سؤالات مربوط به کیفیت هوا یا سؤالات کلی درباره فضای باز برای کل امروز استفاده نکنید (از «پرسمانهای روزانه» در زیر استفاده کنید). * ۲. پیشبینی ساعتبهساعت / سابقه (date مشخصشده و hour مشخصشده 0-23): * location، date ({year, month, day})، hour (0-23)، و capabilities هدف را ارائه دهید. اگر دقیقه ذکر شده است، آن را به نزدیکترین ساعت گرد کنید. * محدودیت بحرانی (وقتی hour تنظیم شده باشد، date الزامی است): ارائه hour بدون date (date حذف شده، hour تنظیم شده) مجاز نیست و با خطا مواجه خواهد شد. حتی وقتی کاربر درباره ساعت خاصی در امروز (مثلاً "at 13:00 today") میپرسد، باید هم date (تاریخ امروز در location) و هم hour را پر کنید. * هر ساعت یکبار برای «آبوهوا» و/یا «کیفیت هوا» درخواستشده در YYYY-MM-DD-HH و هر روز یکبار برای «گرده» درخواستشده در YYYY-MM-DD جستجو میکند. * سؤالات «چه زمانی» درباره آبوهوا: برای سؤالات مربوط به آبوهوا که چه زمانی / چه ساعتی / بهترین زمان را میپرسند (برای مثال، "what time will it stop raining?")، از فراخوانیهای ساعتی WEATHER (date + hour) برای ساعتهای مربوطه استفاده کنید. پیشبینی روزانه «آبوهوا» مقادیر ساعتی ندارد. برای سؤالات کلی درباره فضای باز «چه زمانی / بهترین زمان» (مثلاً "when is the best time to go walking today?")، این فراخوانیهای ساعتی WEATHER را علاوهبر فراخوانی تمامروز برای «کیفیت هوا» (و گرده) که در «پرسوجوهای روزانه» شرح داده شده است انجام دهید. * ۳. پرسوجوهای روزانه (date مشخص شده و hour حذف شده): * location، date ({year, month, day} در زمان مدنی محلی location درخواستشده) را بدون hour، و capabilities هدف را برای پرسوجوهای کل روز (مثلاً "weather and pollen in London tomorrow") ارائه دهید. * کیفیت هوا و سؤالات کلی درباره فضای باز برای امروز: برای سؤالات مربوط به کیفیت هوا و سؤالات کلی درباره فضای باز (که شامل کیفیت هوا میشود) درباره امروز (مثلاً "how will the air quality change today"، "is today a good day for a picnic?")، date را روی تاریخ امروز در location (ساعت حذف شده) تنظیم کنید تا سری ساعتی کیفیت هوای روز را دریافت کنید. فراخوانی «شرایط کنونی» بهتنهایی فقط کیفیت هوای ساعت کنونی را برمیگرداند و کافی نیست؛ اگر کاربر درباره «اکنون» هم سؤال کرد، میتوانید یکی اضافه کنید. * پنجرههای زمانی کیفیت هوا: برای پرسشهای مربوط به کیفیت هوا درباره پنجرهای در یک روز (مثلاً "air quality between noon and 6 PM")، یک تماس روزانه را برای آن تاریخ ترجیح دهید و ساعتهای پنجره را از سری «کیفیت هوا» بخوانید، بهجای اینکه ساعتهای تکی را نمونهبرداری کنید. اگر از تماسهای ساعتی استفاده میکنید، همه ساعتهای پنجره را پوشش دهید. * پیشبینیهای روزانه را برای آبوهوا و/یا گرده درخواستی و سری ساعتی کیفیت هوا روز که کل روز محلی را پوشش میدهد (۰۰:۰۰ تا ۲۳:۰۰ محلی) برمیگرداند: ۲۴ ساعت پیشین برای تاریخ گذشته، ۲۴ ساعت پیشبینیشده برای تاریخ آینده، و برای امروز ساعتهای قبلی (سابقه)، ساعت فعلی، و ساعتهای باقیمانده (پیشبینی). افقهای زمانی پشتیبانیشده براساس دامنه: * آبوهوا: ساعتی از ۲۴ ساعت گذشته تا ۲۴۰ ساعت (۱۰ روز) آینده (ساعتهای گذشته به هر دو date و hour نیاز دارند)؛ روزانه تا ۱۰ روز شامل امروز (امروز تا ۹ روز آینده)؛ بدون سابقه روزانه. * کیفیت هوا: ساعتی از ۷۲۰ ساعت (۳۰ روز) قبل تا ۹۶ ساعت (۴ روز) بعد؛ تماس تمامروز باید در آن پنجره قرار گیرد (در عمل امروز −۲۹ روز تا +۳ روز). * گرده: فقط روزانه، از امروز تا ۴ روز آینده (۵ روز با احتساب امروز)؛ تاریخهای گذشته وجود ندارد و hour نادیده گرفته میشود. * (توجه: اگر چندین قابلیت درخواست شود و date/hour خارج از یکی از محدودههای آنها باشد، تماس همچنان موفقیتآمیز خواهد بود و فقط موارد پشتیبانیشده را برمیگرداند.) * درخواستهای خارج از محدوده: اگر تاریخ یا ساعت درخواستی خارج از محدوده پشتیبانیشده دامنه در بالا باشد (برای مثال، گرده برای تاریخ گذشته)، همچنان lookup_weather را برای تاریخ/ ساعت درخواستشده فراخوانی کنید؛ خطا محدوده پشتیبانیشده را بیان میکند. تاریخ، ساعت، یا دامنه دیگری را بهعنوان جایگزین فراخوانی نکنید. گزینههای دامنه و ارجاع: * زبان (language_code): کد زبان اختیاری BCP-47 (مثلاً "fr"). پیشفرض "en" است. * واحدهای آبوهوا (weather_options.units_system یا units_system): پیشفرض روی METRIC است. اگر کاربر به استانداردهای ایالات متحده اشاره میکند یا صریحاً واحدهای امپریال را درخواست میکند، روی IMPERIAL (فارنهایت/ مایل بر ساعت) تنظیم کنید. در هر دو weather_options.units_system (ترجیحی) و units_system سطح بالا پشتیبانی میشود؛ اگر هر دو مشخص شده باشند، نباید باهم تداخل داشته باشند. * Air Quality Options (air_quality_options): Set include_pollutant_concentration: true when specific pollutant concentrations (PM2.5, PM10, O3, NO2, SO2, CO) are needed; optionally set index_region_code (2-letter ISO country code, e.g., "US") to request a specific regional AQI scale. بهطور پیشفرض، پاسخ شامل «شاخص کیفیت هوای جهانی» و شاخص کیفیت هوای منطقهای مکان است. * ارجاع: برونداد مستندشده باید بااستفاده از فیلد attribution در داخل هر محفظه دامنه برگرداندهشده (weather.attribution، air_quality.attribution، pollen.attribution) به منبع ارجاع داده شود. * زمانهای برگرداندهشده: مقادیر date_time کیفیت هوا ازقبل به وقت محلی مکان (utc_offset گنجاندهشده) هستند؛ آنها را همانطور که هستند ارائه دهید. زمانهای date_time آبوهوا (فعلی و ساعتی) و طلوع/غروب آفتاب به وقت UTC هستند؛ آنها را بااستفاده از time_zone به وقت محلی مکان تبدیل کنید. همه زمانها را بهعنوان محلی برچسبگذاری کنید.
|
compute_routes |
مسیرهای سفر بین مبدأ و مقصد را محاسبه میکند، بهصورت اختیاری ازطریق توقفهای میانی. مسافت و مدتزمان هر مسیر را برمیگرداند. الزامات ورودی (بسیار مهم):
دستورالعملهای فراخوانی ابزار:
مثال فراخوانی ابزار: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"intermediate_waypoints":[{"address":"Louvre Museum"}],"travel_mode":"DRIVE","departure_time":"2026-09-19T08:00:00+02:00"} دستورالعملهای پاسخ:
|
search_along_route |
وقتی کاربر میخواهد مکانها، کسبوکارها، یا نقاط جالب را درطول مسیر سفر پیدا کند (مثلاً «پمپ بنزین در مسیرم به تاهو»، «کافیشاپهای بین سانفرانسیسکو و سن خوزه»)، این ابزار را فراخوانی کنید. فراخوانی این ابزار هزینه بیشتری نسبتبه الزامات ورودی (بسیار مهم):
دستورالعملهای فراخوانی ابزار:
|
resolve_names |
فهرست دستهای از پُرسمانهای مکان خاص (نام نشانگرهای مکانی یا نشانیهای دقیق) را به «شناسههای جا» در Google Maps متعارف تبدیل میکند. الزامات ورودی (بسیار مهم):
دستورالعملهای فراخوانی ابزار:
ذخیره در Google Maps:
مدیریت خطا (بسیار مهم):
|
resolve_maps_urls |
فهرستی از نشانیهای وب Google Maps را به «شناسههای مکان» متعارف Google Maps تبدیل میکند. چه زمانی این ابزار را فراخوانی کنید (بسیار مهم):
الزامات ورودی (بسیار مهم):
ذخیره در Google Maps:
مدیریت خطا (بسیار مهم):
|
دریافت مشخصات ابزار MCP
برای دریافت مشخصات ابزار MCP برای همه ابزارهای موجود در سرور MCP، از روش tools/list استفاده کنید. مثال زیر نشان میدهد که چگونه میتوان از curl برای فهرست کردن همه ابزارها و مشخصات آنها که درحالحاضر در سرور MCP دردسترس هستند استفاده کرد.
| درخواست Curl |
|---|
curl --location 'https://mapstools.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/list", "jsonrpc": "2.0", "id": 1 }' |