รีช โดย โลคัส ทำงานเซิร์ฟเวอร์ เอ็มซีพี ของกูเกิล บิซิเนส โปรไฟล์ระยะไกล ผู้ช่วยเช่น โคลด, แชตจีพีที หรือเคอร์เซอร์ลงชื่อเข้าใช้ด้วย OAuth, อ่านโปรไฟล์ธุรกิจ, รีวิว, อันดับและลีด และทำการเปลี่ยนแปลงสาธารณะหลังจากเจ้าของอนุมัติในแชท โพสต์นี้อธิบายวิธีสร้าง
การตั้งค่าเจ้าของอยู่บนหน้า เอ็มซีพีและคู่มือต่อไคลเอนต์ โพสต์นี้สำหรับนักพัฒนาและผู้สร้างเอไอ: สิ่งที่เซิร์ฟเวอร์เปิดเผย, การเขียนถึงกูเกิล, และการตัดสินใจเบื้องหลัง เป็นไปตามข้อกำหนดโปรโตคอล Model Context
สิ่งที่เซิร์ฟเวอร์เปิดเผย
เซิร์ฟเวอร์ใช้การขนส่ง HTTP แบบสตรีมได้จากข้อกำหนด เอ็มซีพี (การขนส่ง) ดังนั้นไม่มีอะไรต้องติดตั้งหรือเรียกใช้ในเครื่อง เครื่องมือของมันแบ่งเป็นสามคลาส และทุกเครื่องมือมีการอโนเทชันของข้อกำหนด ดังนั้นไคลเอนต์รู้ก่อนเรียกใช้ว่าเครื่องมืออ่านเท่านั้น, เปลี่ยนข้อมูลของรีชเอง หรือเปลี่ยนรายการสาธารณะของกูเกิล (อโนเทชันเครื่องมือ)
| คลาส | สิ่งที่ครอบคลุม | สาธารณะบนกูเกิล? |
|---|---|---|
| อ่าน | สิ่งที่ครอบคลุมบัญชีและตำแหน่ง, เนื้อหาโปรไฟล์, รีวิวพร้อมสถานะตอบกลับ, โพสต์และสื่อ, การวิเคราะห์ประสิทธิภาพ, อันดับคำหลักที่ติดตามและคู่แข่งใกล้เคียง, ลีดและคำขอนัด, และรายการสิ่งที่โปรไฟล์แต่ละรายการขาด | สาธารณะบนกูเกิล?ไม่ |
| เปลี่ยนภายในรีช | สิ่งที่ครอบคลุมร่างตอบกลับรีวิว, เริ่มหรือหยุดติดตามคำหลัก, ทำเครื่องหมายคำแนะนำว่าทำแล้วหรือปิด, และส่งคำขอฟีเจอร์ไปยังทีมรีช | สาธารณะบนกูเกิล?ไม่ |
| เขียนกูเกิล | สิ่งที่ครอบคลุมแก้ไขฟิลด์โปรไฟล์และพื้นที่บริการ, อัปโหลดและลบรูปภาพและวิดีโอ, เผยแพร่โพสต์, และโพสต์ตอบกลับรีวิว | สาธารณะบนกูเกิล?ใช่ |
เซิร์ฟเวอร์ยังเสนอพรอมต์ เอ็มซีพี, คำแนะนำเริ่มต้นที่ใช้ซ้ำได้ของข้อกำหนด (พรอมต์): หนึ่งปรับโปรไฟล์ทีละหนึ่งการเปลี่ยนแปลงที่ยืนยัน, หนึ่งตรวจสอบการมองเห็นการค้นหา, และหนึ่งทำงานผ่านรีวิวที่ไม่ตอบ ไคลเอนต์แสดงเป็นคำขอสำเร็จรูป
เครื่องมือแต่ละตัวเรียกขั้นตอนเซิร์ฟเวอร์เดียวกับที่แดชบอร์ดรีชเรียก, ผ่านตัวเรียกในกระบวนการ การตรวจสอบการเข้าถึงตำแหน่ง, ข้อจำกัดแผนและการตรวจสอบการเชื่อมต่อกูเกิลจึงทำงานเหมือนเจ้าของที่ลงชื่อเข้าใช้ ชั้น เอ็มซีพี ไม่มีทางเลี่ยง
ตัวอย่างเซสชัน, ทีละการเรียก
ตัวอย่างสถานการณ์: เจ้าของคลินิกทันตกรรมใน โคลด
เจ้าของพิมพ์: “ค้นหารีวิวเดือนที่แล้วที่ฉันยังไม่ได้ตอบ และช่วยฉันตอบข้อร้องเรียน”
- ผู้ช่วยอ่านบัญชีก่อน ผลลัพธ์แสดงรายการสถานที่ของคลินิกพร้อมรหัส, สถานะการเชื่อมต่อ กูเกิล, แผนและเครดิตที่เหลือ
- มันอ่านรีวิวของสถานที่นั้น กรองเฉพาะรีวิวที่ยังไม่ได้ตอบจาก 30 วันที่ผ่านมา แต่ละรีวิวกลับมาพร้อมคะแนน, ข้อความ, วันที่ และสถานะการตอบกลับ
- สำหรับรีวิว 2 ดาวเกี่ยวกับเวลารอคอย มันขอร่างตอบกลับจาก รีช การร่างใช้เครดิตและไม่เปลี่ยนแปลงสิ่งใดสาธารณะ ผู้ช่วยแสดงตัวเลือก และเจ้าของแก้ไขหนึ่งตัวเลือก
- ก่อนโพสต์ ผู้ช่วยแสดงข้อความที่แน่นอนและขอคำตอบใช่ เจ้าของตกลง การตอบกลับไปยัง กูเกิล และผลลัพธ์ส่งกลับการตอบกลับที่มันแทนที่ ถ้ามี
- ผู้ช่วยอ่านรีวิวอีกครั้งเพื่อยืนยันว่าการตอบกลับแสดงแล้ว จากนั้นรายงานสิ่งที่มันเปลี่ยนแปลง
ห้าการเรียกเครื่องมือ หนึ่งการเปลี่ยนแปลงสาธารณะ หนึ่งการอนุมัติอย่างชัดเจน ร่างไปถึง กูเกิล เฉพาะในข้อความที่เจ้าของอนุมัติ
การเปลี่ยนแปลงไปถึง กูเกิล อย่างไร
การเปลี่ยนแปลงในรายการสาธารณะผ่านเจ้าของสองครั้ง ครั้งแรก เครื่องมือเขียนมี destructiveHint ซึ่งให้ไคลเอนต์แสดงพรอมต์อนุมัติของตัวเอง ครั้งที่สอง คำอธิบายเครื่องมือแต่ละตัวบอกโมเดลให้แสดงการเปลี่ยนแปลงที่แน่นอนและขอคำตอบใช่ในบทสนทนา การแก้ไขโปรไฟล์และการเปลี่ยนแปลงสื่อไปไกลกว่านั้นและค่าเริ่มต้นเป็นการแสดงตัวอย่างที่ไม่เขียนอะไร
การแก้ไขโปรไฟล์ใช้สองการเรียก ครั้งแรก ด้วย preview: true (ค่าเริ่มต้น) ส่งกลับแต่ละฟิลด์ที่เปลี่ยนแปลงก่อนและหลัง ฟิลด์ใด ๆ ที่จะถูกปฏิเสธพร้อมการแก้ไขที่ต้องการ และลายนิ้วมือ basedOn ของโปรไฟล์ที่อ่าน ครั้งที่สองเขียนเฉพาะถ้ามีลายนิ้วมือนั้นและโปรไฟล์ไม่เปลี่ยนแปลงตั้งแต่นั้น ถ้ามีคนแก้ไขรายการในระหว่างนั้น ในแดชบอร์ดหรือผ่านการซิงค์ กูเกิล การเขียนจะถูกปฏิเสธและผู้ช่วยต้องแสดงตัวอย่างอีกครั้ง
API ของ กูเกิล ใช้ฟิลด์ที่ถูกส่งภายใต้ update mask (locations.patch) มันไม่สามารถรู้ว่าคนเห็นการเปลี่ยนแปลงหรือไม่ การแสดงตัวอย่างและลายนิ้วมือใส่การตรวจสอบนั้นไว้ข้างหน้า ดังนั้นโมเดลไม่สามารถใช้การแก้ไขที่เก่าหรือไม่เห็น แม้ในการลองใหม่
โพสต์และการตอบกลับรีวิวไม่มีขั้นตอนแสดงตัวอย่าง เพราะข้อความที่เจ้าของอนุมัติคือการเปลี่ยนแปลงนั้นเอง คำอธิบายของพวกเขาต้องให้ผู้ช่วยแสดงโพสต์หรือตอบกลับที่แน่นอนก่อน การตอบกลับที่โพสต์แทนที่การตอบกลับก่อนหน้าใด ๆ และไม่มีเครื่องมือที่ลบมัน (reviews.updateReply) และคำอธิบายบอกอย่างนั้น ดังนั้นโมเดลสามารถบอกเจ้าของก่อนที่พวกเขาตกลง
รีช เลือกการยืนยันในบทสนทนาแทนคิวเสนอและอนุมัติภายใน รีช เจ้าของอยู่ในแชทแล้ว กล่องข้อความที่สองเพิ่มขั้นตอนที่ง่ายที่จะละเลย และข้อกำหนด เอ็มซีพี คาดหวังมนุษย์ที่สามารถปฏิเสธการเรียกเครื่องมืออยู่แล้ว (ข้อควรพิจารณาด้านความปลอดภัย)
การป้องกันที่ไม่ขึ้นอยู่กับโมเดล
ข้อกำหนดบอกว่าไคลเอนต์ต้องปฏิบัติต่อคำอธิบายประกอบเครื่องมือว่าไม่น่าเชื่อถือ เว้นแต่มาจากเซิร์ฟเวอร์ที่เชื่อถือได้ (คำอธิบายประกอบเครื่องมือ) และโมเดลสามารถละเว้นคำอธิบาย ดังนั้นเซิร์ฟเวอร์บังคับใช้กฎของตัวเอง:
- งบประมาณการเขียน กูเกิล แต่ละธุรกิจสามารถทำการเปลี่ยนแปลง กูเกิล ได้สูงสุด 20 ครั้งต่อชั่วโมงผ่านผู้ช่วย โมเดลที่ติดอยู่ในลูปถึงขีดจำกัดและถูกบอกว่าจะต้องรอนานเท่าใด แทนที่จะเขียนโปรไฟล์ซ้ำแล้วซ้ำอีก
- ความปลอดภัยในการลองใหม่ ทุกการเปลี่ยนแปลงยอมรับคีย์ idempotency การทำซ้ำด้วยคีย์เดียวกันส่งกลับผลลัพธ์แรกแทนที่จะเขียนอีกครั้ง หากไม่มีคีย์ การเรียกที่เหมือนกันภายในหน้าต่างสั้นนับเป็นการเปลี่ยนแปลงเดียวกัน
- การตรวจสอบสถานที่ในทุกการเรียก รหัสสถานที่ที่โมเดลส่งถูกตรวจสอบกับการเข้าถึง กูเกิล ที่ใช้งานของเจ้าของในแต่ละครั้ง ด้วยการตรวจสอบเดียวกันที่แดชบอร์ดใช้ เซิร์ฟเวอร์ไม่เก็บเซสชันสำหรับโมเดลเพื่อใช้ซ้ำ
- หมายเลขโทรศัพท์ที่ถูกปิดบัง ลีดและการจองกลับมาพร้อมหมายเลขโทรศัพท์ที่ถูกปิดบังเหลือสี่หลักสุดท้าย ในบันทึกด้วย อีเมลผ่านไปได้ เพราะเจ้าของต้องการเพื่อตอบลีด
- การเพิกถอนที่เซิร์ฟเวอร์บังคับใช้ เจ้าของสามารถตัดการเชื่อมต่อผู้ช่วยจากหน้าจอ เอไอ Connectors ใน รีช และเซิร์ฟเวอร์ปฏิเสธโทเค็นของไคลเอนต์นั้นตั้งแต่นั้น
บอกโมเดลสิ่งที่มันไม่เห็น
ผู้ช่วยที่ได้รับรายการว่างบอกเจ้าของ “คุณไม่มีรีวิว” บ่อยครั้งความจริงคือมีข้อมูลแต่ถูกซ่อน: สถานที่ถูกเพิ่มจากรายการสาธารณะและไม่มีการเชื่อมต่อ กูเกิล แผนไม่รวมฟีเจอร์ หรือ กูเกิล ยังไม่เสร็จการซิงค์ครั้งแรก ผลลัพธ์การอ่านจึงมีรายการข้อจำกัดที่ระบุเหตุผลและลิงก์ที่แก้ไข รายการว่างหมายถึงไม่มีอะไรถูกซ่อน
ผลลัพธ์บัญชีทำเช่นเดียวกันสำหรับฟีเจอร์ แต่ละฟีเจอร์ถูกทำเครื่องหมายว่าพร้อมใช้งานหรือยังไม่สร้าง ดังนั้นโมเดลไม่อธิบายการโทรหรือโฆษณาว่าเป็นสิ่งที่ รีช ทำได้วันนี้ เมื่อเจ้าของต้องการสิ่งที่ รีช ขาด ผู้ช่วยสามารถส่งคำขอไปยังทีม รีช ด้วยคำพูดของเจ้าของ หลังจากแสดงให้พวกเขาดูข้อความ
ทุกคำตอบยังส่งคืนเวอร์ชันสคีมาของเครื่องมือด้วย ไคลเอนต์แคชสคีมาของเครื่องมือและอาจล้มเหลวอย่างเงียบ ๆ เมื่อมีการเปลี่ยนแปลง ดังนั้นการเปลี่ยนแปลงที่ทำลายความเข้ากันได้จะปรากฏในคำตอบและในบันทึกของรีช แทนที่จะปรากฏเฉพาะในอัตราข้อผิดพลาดของไคลเอนต์เท่านั้น
การลงชื่อเข้าใช้: OAuth 2.1, ไม่มีคีย์ API
เซิร์ฟเวอร์เป็นทรัพยากรที่ป้องกันด้วย OAuth 2.1 ตามที่ข้อกำหนดการอนุญาต เอ็มซีพี อธิบาย (การอนุญาต) มันเผยแพร่เมทาดาทาทรัพยากรที่ป้องกัน (RFC 9728) ดังนั้นไคลเอนต์พบเซิร์ฟเวอร์อนุญาตด้วยตัวเอง ลงทะเบียนตัวเองและเปิดการลงชื่อเข้าใช้เบราว์เซอร์ เจ้าของลงชื่อเข้าใช้ด้วยบัญชี รีช ไม่มีคีย์ให้วาง
เซิร์ฟเวอร์ตรวจสอบว่าแต่ละโทเค็นถูกออกสำหรับทรัพยากรนี้และไม่สำหรับบริการอื่นบนเซิร์ฟเวอร์อนุญาตเดียวกัน การป้องกัน confused-deputy ที่ตัวบ่งชี้ทรัพยากรมีไว้ (RFC 8707) การเชื่อมต่อ กูเกิล ไม่ถึงผู้ช่วย: รีช ถือมัน และผู้ช่วยถือเฉพาะโทเค็น รีช
นั่นคือเหตุผลที่เจ้าของไม่ต้องการสิทธิ์เข้าถึง API ของ กูเกิล กูเกิล มอบ Business Profile APIs ต่อโครงการหลังจากคำขอสิทธิ์เข้าถึง (ข้อกำหนดเบื้องต้น) ซึ่งธุรกิจขนาดเล็กส่วนใหญ่ไม่เคยยื่น
สิ่งที่มันทำไม่ได้
- มันไม่สามารถเปลี่ยนหมวดหมู่หลักหรือที่อยู่ สิ่งเหล่านั้นอยู่กับเจ้าของในเครื่องมือของ กูเกิล
- มันไม่สามารถลบโพสต์หรือลบการตอบกลับรีวิว การตอบกลับที่โพสต์สามารถถูกแทนที่ ไม่ถูกเอาออก
- หากไม่มี กูเกิล บิซิเนส โปรไฟล์ ที่เชื่อมต่อ มันสามารถอ่านเฉพาะรายการสาธารณะ สถานที่ที่ถูกเพิ่มจากรายการสาธารณะได้รับภาพรวมนั้นและลิงก์เพื่อเชื่อมต่อ
- มันไม่สามารถทำการเปลี่ยนแปลง กูเกิล มากกว่า 20 ครั้งต่อธุรกิจต่อชั่วโมงผ่านผู้ช่วย
- อันดับการค้นหาครอบคลุมเฉพาะคำหลักที่ถูกติดตาม คำหลักใหม่ไม่มีอันดับจนกว่าการตรวจสอบครั้งแรกทำงาน
เชื่อมต่อใน โคลด, แชตจีพีที หรือ Cursor
URL เซิร์ฟเวอร์
https://reach.locus-intelligence.com/api/mcpเกี่ยวกับเซิร์ฟเวอร์ เอ็มซีพี สำหรับ กูเกิล บิซิเนส โปรไฟล์ ของ รีช
ไคลเอนต์แต่ละตัวเพิ่มเซิร์ฟเวอร์ระยะไกลแตกต่างกัน ดังนั้นขั้นตอนอยู่บนหนึ่งหน้าต่อไคลเอนต์: โคลด, แชตจีพีที, โคลด Code, Cursor และ VS Code ผู้จำหน่ายบันทึกสิ่งเดียวกัน: Anthropic บน ตัวเชื่อมต่อที่กำหนดเอง, OpenAI บน การเชื่อมต่อจาก แชตจีพีที และ Cursor บน เซิร์ฟเวอร์ เอ็มซีพี
คำถามที่พบบ่อย
- ฉันจำเป็นต้องมีสิทธิ์เข้าถึง API ของ กูเกิล บิซิเนส โปรไฟล์ เพื่อใช้เซิร์ฟเวอร์ เอ็มซีพี นี้หรือไม่?
- ไม่ รีช ถือการเชื่อมต่อ กูเกิล และผู้ช่วยลงชื่อเข้าใช้ รีช ด้วย OAuth API ของ กูเกิล ต้องการโปรเจกต์ กูเกิล Cloud ที่ได้รับการอนุมัติ (ข้อกำหนดเบื้องต้น) ซึ่งสิ่งนี้หลีกเลี่ยง
- ผู้ช่วย เอไอ ใดทำงานกับมัน?
- ไคลเอนต์ใด ๆ ที่รองรับเซิร์ฟเวอร์ เอ็มซีพี ระยะไกลพร้อมการลงชื่อเข้าใช้ OAuth รวมถึง โคลด, แชตจีพีที, โคลด Code, Cursor, VS Code, Codex, Windsurf และ Cline
- ผู้ช่วยสามารถเปลี่ยนรายการของฉันโดยไม่ถามหรือไม่?
- การเปลี่ยนแปลงไปยัง กูเกิล ผ่านพรอมต์อนุมัติของไคลเอนต์และคำตอบใช่ที่ชัดเจนในบทสนทนา และการแก้ไขโปรไฟล์ต้องการการแสดงตัวอย่างใหม่ เซิร์ฟเวอร์ไม่เห็นบทสนทนา ดังนั้นการป้องกันที่มันบังคับใช้เองคือการปฏิเสธการแสดงตัวอย่างที่เก่า ขีดจำกัดการเขียน กูเกิล รายชั่วโมง และความปลอดภัยในการลองใหม่
- มันมีค่าใช้จ่ายหรือไม่?
- การอ่านไม่มีค่าใช้จ่าย การร่างตอบกลับรีวิวใช้เครดิต รีช และบางฟีเจอร์ขึ้นอยู่กับแผน แผนฟรีครอบคลุมหนึ่งสถานที่
- จะเกิดอะไรถ้าการเชื่อมต่อ กูเกิล ขาด?
- ผลลัพธ์บัญชีแสดงสถานะการเชื่อมต่อของแต่ละสถานที่ ถ้ามันไม่ทำงาน ผู้ช่วยบอกเจ้าของให้เชื่อมต่อ กูเกิล อีกครั้งใน รีช และหยุดทำงานบนสถานที่นั้น
เชื่อมต่อผู้ช่วยเข้ากับโปรไฟล์ของคุณเอง
เริ่มด้วยคำถามแบบอ่านอย่างเดียว เช่น รีวิวใดบ้างที่ยังไม่ได้รับคำตอบ จากนั้นอนุมัติการเปลี่ยนแปลงเล็กๆ หนึ่งรายการแล้วอ่านกลับ หน้าการตั้งค่าจะแนะนำทีละไคลเอ็นต์
