MCP Reference: mapstools.googleapis.com

เซิร์ฟเวอร์ Model Context Protocol (MCP) ทำหน้าที่เป็นพร็อกซีระหว่างบริการภายนอกที่ให้บริบท ข้อมูล หรือความสามารถแก่โมเดลภาษาขนาดใหญ่ (LLM) หรือแอปพลิเคชัน AI เซิร์ฟเวอร์ MCP จะเชื่อมต่อแอปพลิเคชัน AI กับระบบภายนอก เช่น ฐานข้อมูลและบริการเว็บ โดยแปลการตอบกลับเป็นรูปแบบที่แอปพลิเคชัน AI เข้าใจได้

การตั้งค่าเซิร์ฟเวอร์

คุณต้องเปิดใช้เซิร์ฟเวอร์ MCP และตั้งค่าการตรวจสอบสิทธิ์ก่อนใช้งาน ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้เซิร์ฟเวอร์ MCP ระยะไกลของ Google และ Google Cloud ได้ที่ ภาพรวมของเซิร์ฟเวอร์ MCP ของ Google Cloud

นี่คือเซิร์ฟเวอร์ MCP ที่ให้บริการโดย Maps Grounding Lite API เซิร์ฟเวอร์มีเครื่องมือให้นักพัฒนาแอปพลิเคชัน LLM สร้างแอปพลิเคชันบน Google Maps Platform

อุปกรณ์ปลายทางของเซิร์ฟเวอร์

อุปกรณ์ปลายทางบริการ MCP คือที่อยู่เครือข่ายและอินเทอร์เฟซการสื่อสาร (โดยปกติจะเป็น URL) ของเซิร์ฟเวอร์ MCP ที่แอปพลิเคชัน AI (โฮสต์สำหรับไคลเอ็นต์ MCP) ใช้เพื่อสร้างการเชื่อมต่อที่ปลอดภัยและได้มาตรฐาน ซึ่งเป็นจุดติดต่อสำหรับ LLM ในการขอบริบท เรียกใช้เครื่องมือ หรือเข้าถึงทรัพยากร อุปกรณ์ปลายทาง MCP ของ Google อาจเป็นแบบทั่วโลกหรือแบบภูมิภาค

เซิร์ฟเวอร์ MCP ของ Maps Grounding Lite API มีอุปกรณ์ปลายทาง MCP ดังนี้

  • https://mapstools.googleapis.com/mcp

เครื่องมือ MCP

เครื่องมือ MCP คือฟังก์ชันหรือความสามารถที่ดำเนินการได้ซึ่งเซิร์ฟเวอร์ MCP เปิดเผยต่อ LLM หรือแอปพลิเคชัน AI เพื่อดำเนินการในโลกแห่งความเป็นจริง

เซิร์ฟเวอร์ MCP ของ mapstools.googleapis.com มีเครื่องมือดังนี้

เครื่องมือ MCP
search_places

เรียกใช้เครื่องมือนี้เมื่อคำขอของผู้ใช้คือการค้นหาสถานที่ ธุรกิจ ที่อยู่ สถานที่ตั้ง จุดสนใจ หรือการค้นหาที่เกี่ยวข้องอื่นๆ ที่เกี่ยวข้องกับ Google Maps

ข้อกำหนดของอินพุต (สำคัญ):

  1. text_query (สตริง - บังคับ): คำค้นหาหลัก ซึ่งต้องกำหนดสิ่งที่ผู้ใช้กำลังมองหาอย่างชัดเจน

    • ตัวอย่าง: 'restaurants in New York', 'coffee shops near Golden Gate Park', 'SF MoMA', '1600 Amphitheatre Pkwy, Mountain View, CA, USA', 'pets friendly parks in Manhattan, New York', 'date night restaurants in Chicago', 'accessible public libraries in Los Angeles'.
    • สำหรับรายละเอียดสถานที่ที่เฉพาะเจาะจง: ใส่แอตทริบิวต์ที่ขอ (เช่น 'Google Store Mountain View opening hours', 'SF MoMa phone number', 'Shoreline Park Mountain View address')
  2. location_bias (ออบเจ็กต์ - ไม่บังคับ): ใช้เพื่อจัดลำดับความสำคัญของผลลัพธ์ที่อยู่ใกล้พื้นที่ทางภูมิศาสตร์ที่เฉพาะเจาะจง

    • รูปแบบ: {"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
    • การใช้งาน:
      • เพื่อกำหนดความสำคัญให้รัศมี 5 กม.: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}}
      • เพื่อกำหนดความสำคัญอย่างมากให้จุดศูนย์กลาง: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}} (ละเว้น radius_meters)
  3. language_code (สตริง - ไม่บังคับ): ภาษาที่จะแสดงสรุปผลการค้นหา

    • รูปแบบ: รหัสภาษา 2 ตัวอักษร (ISO 639-1) ตามด้วยขีดล่างและรหัสประเทศ 2 ตัวอักษร (ISO 3166-1 alpha-2) เช่น en, ja, en_US, zh_CN, es_MX หากไม่ได้ระบุรหัสภาษา ผลลัพธ์จะเป็นภาษาอังกฤษ
  4. region_code (สตริง - ไม่บังคับ): รหัสภูมิภาค Unicode CLDR ของผู้ใช้ พารามิเตอร์นี้ใช้เพื่อแสดงรายละเอียดสถานที่ เช่น ชื่อสถานที่ที่เฉพาะเจาะจงของภูมิภาค หากมี พารามิเตอร์อาจส่งผลต่อผลลัพธ์ตามกฎหมายที่เกี่ยวข้อง

    • รูปแบบ: รหัสประเทศ 2 ตัวอักษร (ISO 3166-1 alpha-2) เช่น US, CA

วิธีการเรียกใช้เครื่องมือ:

  • ข้อมูลสถานที่ (สำคัญ): การค้นหาต้องมีข้อมูลสถานที่ที่เพียงพอ หากสถานที่กำกวม (เช่น "ร้านพิซซ่า") คุณต้อง ระบุสถานที่ใน text_query (เช่น "ร้านพิซซ่าในนิวยอร์ก") หรือใช้พารามิเตอร์ location_bias ใส่ชื่อเมือง รัฐ/จังหวัด และภูมิภาค/ประเทศ หากจำเป็นเพื่อแยกความกำกวม

  • ระบุ text_query ที่เฉพาะเจาะจงและมีบริบทมากที่สุดเท่าที่จะเป็นไปได้เสมอ

  • ใช้ location_bias ก็ต่อเมื่อมีการระบุพิกัดอย่างชัดเจน หรือหากการอนุมานสถานที่จากบริบทที่ทราบของผู้ใช้เหมาะสม และ จำเป็นเพื่อให้ได้ผลลัพธ์ที่ดีขึ้น

  • เอาต์พุตที่อ้างอิงต้องระบุแหล่งที่มาโดยใช้ข้อมูลจากช่อง attribution หากมี

lookup_weather

ดึงข้อมูลสภาพอากาศที่ครอบคลุม รวมถึงสภาพอากาศปัจจุบัน การพยากรณ์รายชั่วโมง และรายวัน

ข้อมูลเฉพาะที่พร้อมใช้งาน: อุณหภูมิ (ปัจจุบัน, รู้สึกเหมือน, สูงสุด/ต่ำสุด, ดัชนีความร้อน), ลม (ความเร็ว, ลมกระโชก, ทิศทาง), ปรากฏการณ์ทางดาราศาสตร์ (พระอาทิตย์ขึ้น/ตก, ข้างขึ้นข้างแรม), หยาดน้ำฟ้า (ประเภท, ความน่าจะเป็น, ปริมาณ/QPF), สภาพอากาศ (ดัชนีรังสียูวี, ความชื้น, เมฆปกคลุม, ความน่าจะเป็นที่จะเกิดพายุฝนฟ้าคะนอง) และที่อยู่สถานที่ที่เข้ารหัสพิกัดภูมิศาสตร์

สถานที่และกฎเกี่ยวกับสถานที่ (สำคัญ):

สถานที่ที่ขอข้อมูลสภาพอากาศจะระบุโดยใช้ช่อง location ช่องนี้เป็นโครงสร้าง "oneof" ซึ่งหมายความว่าคุณต้องระบุค่าสำหรับช่องย่อยของสถานที่ 3 ช่องด้านล่างเพียงช่องเดียวเพื่อให้แน่ใจว่าการค้นหาข้อมูลสภาพอากาศถูกต้อง

  1. พิกัดทางภูมิศาสตร์ (lat_lng)

    • ใช้เมื่อได้รับพิกัดละติจูด/ลองจิจูดที่แน่นอน
    • ตัวอย่าง: {"location": {"lat_lng": {"latitude": 34.0522, "longitude": -118.2437}}} // Los Angeles
  2. รหัสสถานที่ (place_id)

    • ตัวระบุสตริงที่ไม่กำกวม (รหัสสถานที่ของ Google Maps)
    • คุณดึงข้อมูล place_id ได้จากเครื่องมือ search_places
    • ตัวอย่าง: {"location": {"place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0"}} // หอไอเฟล
  3. สตริงที่อยู่ (address)

    • สตริงรูปแบบอิสระที่ต้องมีความเฉพาะเจาะจงสำหรับการเข้ารหัสพิกัดภูมิศาสตร์
    • เมืองและภูมิภาค: ใส่ภูมิภาค/ประเทศเสมอ (เช่น "London, UK" ไม่ใช่ "London")
    • ที่อยู่: ระบุที่อยู่ที่ครบถ้วน (เช่น "1600 Pennsylvania Ave NW, Washington, DC")
    • รหัสไปรษณีย์/รหัสไปรษณีย์: ต้องระบุชื่อประเทศด้วย (เช่น "90210, USA" ไม่ใช่ "90210")
    • ตัวอย่าง: {"location": {"address": "1600 Pennsylvania Ave NW, Washington, DC"}}

โหมดการใช้งาน:

  • สภาพอากาศปัจจุบัน: ระบุ location เท่านั้น อย่าระบุ date และ hour

  • การพยากรณ์รายชั่วโมง: ระบุ location, date และ hour (0-23) ใช้สำหรับเวลาที่เฉพาะเจาะจง (เช่น "ตอน 5 โมงเย็น") หรือคำต่างๆ เช่น "อีก 2-3 ชั่วโมงข้างหน้า" หรือ "วันนี้ช่วงเย็น" หากผู้ใช้ระบุนาที ให้ปัดเศษลงเป็นชั่วโมงที่ใกล้ที่สุด ระบบไม่รองรับการพยากรณ์รายชั่วโมงที่เกิน 120 ชั่วโมงนับจากนี้ ระบบรองรับข้อมูลสภาพอากาศรายชั่วโมงย้อนหลังไม่เกิน 24 ชั่วโมง

  • การพยากรณ์รายวัน: ระบุ location และ date อย่าระบุ hour ใช้สำหรับคำขอทั่วไปเกี่ยวกับวัน (เช่น "สภาพอากาศวันพรุ่งนี้", "สภาพอากาศวันศุกร์", "สภาพอากาศวันที่ 25/12") หากวันที่ของวันนี้ไม่อยู่ในบริบท คุณควรชี้แจงกับผู้ใช้ ระบบไม่รองรับการพยากรณ์รายวันเกิน 10 วันรวมถึงวันนี้ ระบบไม่รองรับข้อมูลสภาพอากาศย้อนหลัง

ข้อจำกัดของพารามิเตอร์:

  • เขตเวลา: อินพุต date และ hour ทั้งหมดต้องสัมพันธ์กับเขตเวลาท้องถิ่นของสถานที่ ไม่ใช่เขตเวลาของผู้ใช้
  • รูปแบบวันที่: อินพุตต้องแยกเป็นจำนวนเต็ม {year, month, day}
  • หน่วย: ค่าเริ่มต้นคือ METRIC ตั้งค่า units_system เป็น IMPERIAL สำหรับฟาเรนไฮต์/ไมล์ หากผู้ใช้หมายถึงมาตรฐานของสหรัฐอเมริกาหรือขออย่างชัดเจน
  • เอาต์พุตที่อ้างอิงต้องระบุแหล่งที่มาโดยใช้ข้อมูลจากช่อง attribution หากมี

compute_routes

คำนวณเส้นทางการเดินทางระหว่างต้นทางและปลายทางที่ระบุ โหมดการเดินทางที่รองรับ: DRIVE (ค่าเริ่มต้น), WALK

ข้อกำหนดของอินพุต (สำคัญ): ต้องมีทั้งต้นทาง และปลายทาง โดยต้องระบุแต่ละรายการโดยใช้วิธีใดวิธีหนึ่งต่อไปนี้ ซึ่งซ้อนอยู่ในช่องที่เกี่ยวข้อง

  • address: (สตริง เช่น 'Eiffel Tower, Paris') หมายเหตุ: ยิ่งที่อยู่อินพุตมีความละเอียดหรือเฉพาะเจาะจงมากเท่าใด ผลลัพธ์ก็จะยิ่งดีขึ้น

  • 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 หากมี

ดูข้อมูลจำเพาะของเครื่องมือ 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
}'