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 ของ mapstools.googleapis.com มีอุปกรณ์ปลายทาง 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 ก็ต่อเมื่อมีการระบุพิกัดอย่างชัดเจน หรือหากการอนุมานสถานที่จากบริบทที่ทราบของผู้ใช้เหมาะสม และ จำเป็นเพื่อให้ได้ผลลัพธ์ที่ดีขึ้น

lookup_weather

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ดูข้อกำหนดของเครื่องมือ 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
}'