MCP คู่มือการประกอบ
Model Context Protocol (MCP) เป็นมาตรฐานเปิดที่ช่วยให้ผู้ช่วย AI เรียกใช้เครื่องมือภายนอกได้โดยตรง SocialHub ใช้เซิร์ฟเวอร์ MCP เพื่อให้คุณสามารถจัดการร้านค้า สมาชิก คูปอง และคะแนนจากภายใน Claude Desktop, Cursor หรือไคลเอนต์ที่รองรับ MCP ใดๆ
แทนที่จะเขียนโค้ด คุณเพียงแค่ถาม AI ว่า: "แสดงรายการร้านค้าที่ใช้งานอยู่ทั้งหมด" หรือ "มอบ 500 คะแนนให้กับสมาชิก m_abc123" และผู้ช่วยจะเรียกใช้เครื่องมือ SocialHub MCP ในนามของคุณ
การกำหนดค่าการเชื่อมต่อ
SocialHub เปิดเผยปลายทาง HTTP MCP ที่สามารถสตรีมได้ คุณต้องการข้อมูลสองชิ้น:
| URL ปลายทาง | https://flash.socialhub.ai/api/mcp |
| API ส่วนหัวของคีย์ | Authorization: Bearer fl_live_... |
สร้างคีย์ API ที่ /flash/account/api-keys ตรวจสอบให้แน่ใจว่าคีย์มีขอบเขตที่จำเป็นสำหรับเครื่องมือที่คุณวางแผนจะใช้
Claude Desktop การกำหนดค่า
เพิ่มสิ่งต่อไปนี้ในการตั้งค่า Claude Desktop MCP ของคุณ (claude_desktop_config.json):
{
"mcpServers": {
"flash": {
"type": "http",
"url": "https://flash.socialhub.ai/api/mcp",
"headers": {
"Authorization": "Bearer fl_live_your_key_here"
}
}
}
}การกำหนดค่า Cursor
ใน Cursor ไปที่ การตั้งค่า > MCP และเพิ่มเซิร์ฟเวอร์ใหม่:
{
"mcpServers": {
"flash": {
"type": "http",
"url": "https://flash.socialhub.ai/api/mcp",
"headers": {
"Authorization": "Bearer fl_live_your_key_here"
}
}
}
}ช่อง type ยังยอมรับ streamable-http เป็นนามแฝงด้วย ไคลเอนต์เดสก์ท็อปเหล่านี้จัดเก็บคีย์ไว้ในไฟล์กำหนดค่า โดยถือว่าคีย์นั้นเป็นความลับ และเลือกใช้รูปแบบตัวแปรสภาพแวดล้อม (ด้านล่าง) ที่รองรับการเก็บคีย์ข้อความธรรมดาออกจากดิสก์
เชื่อมต่อจาก Claude Code
เพิ่ม SocialHub เป็นเซิร์ฟเวอร์ HTTP MCP ด้วยคำสั่ง claude mcp add ส่งออกคีย์ของคุณเป็นตัวแปรสภาพแวดล้อมก่อน ดังนั้นคีย์ข้อความธรรมดาจะไม่ไปอยู่ในไฟล์กำหนดค่าหรือประวัติเชลล์ของคุณ:
export FLASH_API_KEY="fl_live_your_key_here"
claude mcp add --transport http flash \
https://flash.socialhub.ai/api/mcp \
--header "Authorization: Bearer ${FLASH_API_KEY}"หรือคอมมิต .mcp.json ที่มีขอบเขตโปรเจ็กต์ที่รูท repo อ้างอิง env var ด้วย ${FLASH_API_KEY} — อย่าวางคีย์ข้อความธรรมดา:
{
"mcpServers": {
"flash": {
"type": "http",
"url": "https://flash.socialhub.ai/api/mcp",
"headers": {
"Authorization": "Bearer ${FLASH_API_KEY}"
}
}
}
}ตรวจสอบตัวเองหลังจากเชื่อมต่อ:
- เรียกใช้
claude mcp listและยืนยันว่าflashแสดงว่าเชื่อมต่อแล้ว - ขอให้ผู้ช่วย "แสดงรายการเครื่องมือ SocialHub ที่มีอยู่" — คุณควรเห็นเฉพาะเครื่องมือที่ขอบเขตคีย์ของคุณอนุญาตเท่านั้น
- รหัสเซิร์ฟเวอร์จะต้องเป็น
flashทุกประการ; ตรวจสอบให้แน่ใจว่าFLASH_API_KEYถูกส่งออกในเชลล์ที่เรียกใช้ Claude Code
Gotcha: คีย์ที่ไม่ถูกต้องหรือถูกเพิกถอนจะแสดงเป็นการเชื่อมต่อที่ล้มเหลว ไม่ใช่พรอมต์การตรวจสอบสิทธิ์ SocialHub ใช้การตรวจสอบสิทธิ์ Bearer-token โดย ไม่มี OAuth สำรอง ดังนั้นหากเซิร์ฟเวอร์แสดงว่าล้มเหลว/ยกเลิกการเชื่อมต่อ ให้ตรวจสอบค่าคีย์อีกครั้งและมีขอบเขตที่คุณต้องการก่อนที่จะแก้ไขข้อบกพร่องอย่างอื่น
เครื่องมือที่ใช้ได้ (75)
cwm_get_forecast_capabilitiesอ่าน TimesFM 2.5 ความพร้อมด้านแนวโน้ม/ควอนไทล์โดยรวม และความพร้อมด้านการรวมข้อมูลผู้เช่าส่วนตัว 7/30/90 วัน สถานะรอการฝึกอบรม/การตรวจสอบยืนยันระบุไว้อย่างชัดเจน จำเป็นต้องมี predictions:read.
cwm_predict_next_behaviorsการคาดการณ์ของผู้บริโภคข้อหนึ่ง: การกระจาย/การจัดอันดับกิจกรรมครั้งต่อไปขั้นสุดท้าย รวมถึง... CWM + TimesFM 7/30/90d purchaseWindowsนิยมใช้โมเดลเหตุการณ์ผู้เช่าที่ได้รับสิทธิ์ มีการอ้างอิงสาธารณะภายในหนึ่งรายการเป็นตัวเลือกสำรอง ไม่มีผลลัพธ์จากผู้เชี่ยวชาญรายบุคคล ความน่าจะเป็นของเหตุการณ์ไม่ได้ปรับเทียบ ช่วงเวลาการซื้อ null จนกว่าจะได้รับการฝึกอบรม/รับรอง ต้องใช้ predictions:read; metrics:read นอกจากนี้ยังช่วยให้สามารถกำหนดช่วงเวลาการซื้อได้
member_id*cwm_forecast_aggregate_trendคาดการณ์ตัวชี้วัดรายวันของแบรนด์/หมวดหมู่ด้วย TimesFM 2.5: จุด + q10..q90 ประวัติที่หายไปส่งคืน nullควอนไทล์รวมไม่ได้ปรับเทียบ ไม่ใช่ช่วงส่วนบุคคล ต้องใช้ predictions:read AND metrics:read.
metric?, horizon_days?, history_days?, category?cwm_predict_purchase_windowsผู้เช่าส่วนตัว CWM + TimesFM ความน่าจะเป็นในการซื้อ ณ วันที่ 7/30/90 วัน (0–1) ค่าเป็นศูนย์จนกว่าจะได้รับการฝึกฝนและตรวจสอบความถูกต้อง ไม่มีค่าสำรองที่สร้างขึ้น ต้องใช้ predictions:read AND metrics:read.
member_idlist_metricsแสดงรายการเมตริกที่มีให้ทีมนี้จากเลเยอร์ความหมายที่ควบคุม (คีย์, ป้ายกำกับ, หน่วย, การรับรอง, หมวดหมู่) โทรสอบถามก่อนเพื่อค้นหาคีย์เมตริกที่ถูกต้อง จำเป็นต้องมี metrics:read.
category?describe_metricรับข้อมูลจำเพาะครบถ้วนของตัวชี้วัดหนึ่งรายการ: คำจำกัดความที่เชื่อถือได้ หน่วย การรับรอง มิติข้อมูล ฟิลด์ที่สามารถกรองได้ พารามิเตอร์ที่ปรับแต่งได้ และคำแนะนำการใช้งาน ต้องใช้ metrics:read.
metricquery_metricเรียกใช้คิวรีเมตริกที่มีการกำกับดูแลและส่งคืนตัวเลขพร้อมคำจำกัดความที่เชื่อถือได้ เลือกคีย์เมตริก พร้อมด้วยมิติข้อมูลเพิ่มเติม ตัวกรอง ช่วงเวลา ระดับความละเอียด และการเปรียบเทียบระหว่างช่วงเวลา — ไม่ต้องใช้ SQL ต้องใช้ metrics:read.
metric, dimensions?, filters?, timeRange?, grain?, compare?, params?breakdown_metricแยกย่อยตัวชี้วัดหนึ่งตัวตามมิติเดียวในช่วงเวลาล่าสุดที่กำหนด โดยใช้ป้ายกำกับที่อ่านง่าย (ชื่อร้านค้า/ระดับ/ช่องทาง) ต้องใช้ metrics:read.
metric, dimension, days, state?ask_metricsตอบคำถามที่เป็นภาษาธรรมชาติโดยเลือกตัวชี้วัดที่เหมาะสม ดึงข้อมูลตัวชี้วัดเหล่านั้น และวิเคราะห์ตัวชี้วัดหลัก สำหรับการวินิจฉัยแบบปลายเปิด ต้องใช้ metrics:read.
question, categories?list_storesรายชื่อร้านค้าทั้งหมดสำหรับทีมปัจจุบัน รองรับตัวกรองสถานะที่เป็นตัวเลือก การค้นหา และการแบ่งหน้า
status?, search?, limit?, offset?get_storeรับรายละเอียดของร้านค้าเฉพาะตามรหัส
store_idlist_membersรายชื่อสมาชิกโปรแกรมสะสมคะแนน รองรับโปรแกรมกรองและการแบ่งหน้า
programId?, limit?, offset?, status?get_memberรับรายละเอียดของสมาชิกภักดีเฉพาะด้วย ID ส่งคืนฟิลด์ PII ที่ถอดรหัสแล้ว
member_idlist_coupon_poolsแสดงรายการคูปอง รองรับตัวกรองสถานะและประเภท
status?, coupon_type?, limit?, offset?get_dashboard_statsภาพรวมแดชบอร์ดการดำเนินงาน (การจับภาพ การสแกน อัตราการจับภาพ คูปอง ร้านค้า แผน) ไม่ใช่ตัวชี้วัดที่อยู่ภายใต้การกำกับดูแล — โปรดใช้เครื่องมือวัดตัวชี้วัดสำหรับตัวชี้วัดทางธุรกิจที่เชื่อถือได้
(none)earn_pointsมอบคะแนนความภักดีให้กับสมาชิก ส่งกลับรหัสธุรกรรมและยอดดุลใหม่
member_id, amount, description?redeem_pointsหักคะแนนสะสมจากสมาชิก (การใช้ FIFO)
member_id, amount, reasonget_points_balanceรับคะแนนสะสมปัจจุบันของสมาชิกและประวัติการทำธุรกรรมล่าสุด
member_id, limit?get_member_couponsรับคูปองที่มีอยู่ของสมาชิก (ยังไม่แลก, ยังไม่หมดอายุ)
member_idget_member_tierรับระดับปัจจุบันของสมาชิก ข้อกำหนดการอัปเกรดระดับถัดไป และทุกระดับ
member_idget_member_receiptsรับประวัติการส่งใบเสร็จรับเงินของสมาชิกพร้อมสถานะ OCR และคะแนนที่ได้รับ
member_id, limit?redeem_points_for_couponแลกคะแนนสะสมเป็นคูปองจากกลุ่มที่ระบุ (อะตอมมิก: คะแนน + คูปอง หรือทั้งสองอย่าง)
member_id, pool_id, points_costissue_couponออกคูปองจากกลุ่มให้กับสมาชิก (สมาชิกคนเดียว; ผู้ชมจำนวนมากจะผ่านขั้นตอนการยืนยัน So) ต้องใช้ coupons:write
member_id, pool_id, run_id?check_email_frequencyตรวจสอบว่าสามารถส่งอีเมลการตลาดไปยังที่อยู่ที่จำกัดความถี่ได้หรือไม่ (1/วัน, 2/สัปดาห์, 4/เดือน)
emaillist_ambassador_candidatesรายการให้คะแนนผู้สมัคร Ambassador สำหรับโปรแกรมสะสมคะแนน (โหมด Pro) ว่างเปล่าในโหมด Lite
band?, status?, level?, sort_by?, limit?, offset?get_ambassador_metricsรับรายงาน ROI ของ Ambassador: เป้าหมายย่อยสามเป้าหมาย การรักษาผู้ใช้เดือนที่ 2 และเกท go/no-go 90 วัน
since_days?, assumed_paid_cac_usd?issue_ambassador_codeออกหรืออัพเกรดรหัสพันธมิตร Ambassador ส่วนตัวของสมาชิก ส่งกลับสตริงรหัส
member_id, single_use?, max_redemptions?, min_order_amount?get_tracking_statsรับการวิเคราะห์การเข้าชมหน้า/พฤติกรรม: ภาพรวม หน้ายอดนิยม รายละเอียดอุปกรณ์ หรือแหล่งที่มาของการเข้าชม
metric?, period?, start?, end?, campaign?, limit?get_member_profileข้อมูลสรุปโปรไฟล์ของสมาชิก (ความสามารถในการติดต่อ, การยินยอม/)CCPA(ข้อมูลสะสม เช่น ความภักดี การค้า/หมวดหมู่/ช่องทาง/การมีส่วนร่วม การตั้งค่าที่ประกาศไว้ แท็ก ข้อมูลทางภูมิศาสตร์แบบคร่าวๆ ช่วงอายุ) ข้อมูลส่วนบุคคลถูกปกปิด — ไม่มีชื่อหรือข้อมูลติดต่อ ต้องใช้ members:read.
member_idget_member_timelineแสดงประวัติการใช้งานล่าสุดของสมาชิก (การเข้าชม คะแนน คูปอง อีเมล ใบเสร็จ) พร้อมสรุป เพื่อใช้ในการตัดสินใจดำเนินการที่เหมาะสมกับแต่ละบุคคล ส่งคืนข้อมูลส่วนบุคคลที่ถอดรหัสแล้ว ต้องใช้สิทธิ์อนุญาต members:behavior:อ่าน.
member_id, limit?list_segmentsแสดงรายการกลุ่มเป้าหมายของทีม (ชื่อ สถานะ จำนวนสมาชิกที่แคชไว้) ต้องมี segments:read
status?, limit?, offset?create_segmentสร้างกลุ่มเป้าหมายจากเงื่อนไขที่มีโครงสร้าง (ไม่ใช้ SQL); ปฏิเสธรายการที่ซ้ำกัน ต้องใช้ segments:write + คีย์ที่ผู้ใช้เป็นเจ้าของ
name, conditions, description?list_automationsแสดงรายการระบบอัตโนมัติของทีม (แคมเปญที่ทำงานเมื่อมีเหตุการณ์) และสถานะของระบบ ต้องมีการตั้งค่า automations:read
status?pause_automationหยุดการทำงานอัตโนมัติที่กำลังทำงานอยู่โดยใช้รหัสแคมเปญ (ทำซ้ำได้) ต้องใช้ automations:write
campaign_idlist_campaign_templatesแสดงรายการเทมเพลตแคมเปญที่มีให้สำหรับทีมนี้ (อย่างเป็นทางการและที่บันทึกไว้) เพื่อค้นหา template_id สำหรับ create_campaign_draft จำเป็นต้องมี campaigns:read
limit?list_campaignsแสดงรายการแคมเปญล่าสุดของทีม (รหัส, ชื่อ, สถานะ) เพื่อค้นหา source_campaign_id เพื่อคัดลอกฉบับร่าง ต้องมี campaigns:read
limit?, status?create_campaign_draftสร้างแบบร่างแคมเปญจากเทมเพลตหรือแคมเปญก่อนหน้า (ห้ามส่งออกไปเด็ดขาด — ต้องผ่านการตรวจสอบจากมนุษย์) ต้องใช้สิทธิ์นี้ campaigns:write-ร่าง.
title, template_id?, source_campaign_id?, segment_id?, merge_context?check_member_reachตรวจสอบว่าสมาชิกคนนั้นได้รับการติดต่อ (ในระบบใดก็ได้) ผ่านช่องทางใดช่องทางหนึ่งในช่วงเวลาที่ผ่านมาแล้วหรือไม่ — หลีกเลี่ยงการติดต่อมากเกินไป (ต้องใช้...) members:behavior:อ่าน.
member_id, channel, days?create_memberสร้างสมาชิกโปรแกรมสะสมแต้ม หรือยกเลิกโปรแกรมสะสมแต้มที่มีอยู่แล้วโดยอัตโนมัติ externalId/อีเมล การยินยอมรับการตลาดไม่ได้เปิดใช้งานผ่านทางนี้ MCP. กำหนดให้มี members:write.
email, fullName, phone?, externalId?, birthMonth?, birthDay?update_memberอัปเดตข้อมูลส่วนตัว/โปรไฟล์ของสมาชิก (อีเมล, เบอร์โทรศัพท์, fullName, externalIdสถานะ) บังคับใช้ความเป็นเจ้าของทีม ต้องใช้ members:write.
member_id, email?, fullName?, phone?, externalId?, status?upsert_storeสร้างร้านค้าใหม่ หรืออัปเดตร้านค้าที่มีอยู่ให้ตรงกัน externalId สำหรับทีมนี้ จำเป็นต้องมี stores:write.
name, externalId?, address?, city?, state?, country?, timezone?ingest_orderบันทึกใบสั่งซื้อและให้คะแนนสะสมโดยอัตโนมัติ (สมาชิกแก้ไขปัญหาแล้ว) memberId > externalId (อีเมล) ต้องใช้ orders:write.
externalOrderId, customer, totalAmount, financialStatus?, currency?, orderName?, storeId?reverse_pointsเรียกคืนคะแนนสะสมจากสมาชิก โดยเชื่อมโยงกับรหัสธุรกรรมเดิม สำหรับการคืนเงินหรือยกเลิกธุรกรรมในระบบ POS/ERP จำเป็นต้องมีข้อมูลยืนยัน points:write.
member_id, reversesTransactionId, amount, reasonassign_tagกำหนดแท็กให้กับสมาชิกด้วยตนเองโดย tag_key (การเพิกถอนโดยผู้ปฏิบัติงาน; ตรึงไว้กับการกวาดกฎ) ต้องใช้ tags:write.
member_id, tag_key, value?remove_tagลบแท็กออกจากสมาชิกด้วยตนเองโดยใช้ tag_key (แท็กที่ใช้งานอยู่อาจถูกเพิ่มกลับเข้ามาใหม่ในการตรวจสอบครั้งถัดไป) ต้องใช้ tags:write
member_id, tag_keylist_productsแสดงรายการสินค้าพร้อมหมวดหมู่/แบรนด์/กลุ่มผลิตภัณฑ์ สถานะ และแหล่งที่มา สามารถกรองตามสถานะได้category_id/brand_id/แนวตั้ง ต้องใช้ catalog:read.
status?, category_id?, brand_id?, vertical?, limit?, offset?get_productรับผลิตภัณฑ์หนึ่งรายการพร้อมตัวเลือกต่างๆ สินค้าที่มีหมายเลขซีเรียล ส่วนประกอบแบบผสม และเนื้อหาพื้นฐานด้าน AI ต้องใช้ catalog:read.
product_idlist_categoriesแสดงรายการหมวดหมู่ผลิตภัณฑ์ของทีม (รหัส, ชื่อ, ผู้ปกครอง) ต้องมีสิทธิ์ในการอ่านแคตตาล็อก (catalog:read)
limit?list_brandsแสดงรายการแบรนด์ของทีม (รหัส, ชื่อ) จำเป็นต้องมีข้อมูล catalog:read.
limit?recommend_productsผลิตภัณฑ์แนะนำอันดับถัดไป: member_id (การซื้อร่วมแบบเฉพาะบุคคล + ความชอบตามหมวดหมู่) หรือ product_id (ลูกค้าท่านอื่นก็ซื้อเช่นกัน) ต้องใช้ members:read.
member_id?, product_id?, limit?claim_winback_taskเช่างาน win-back ที่มีลำดับความสำคัญสูงสุดถัดไปสำหรับทีมนี้ (อะตอมมิก) ส่งคืนงาน กำหนดเวลาการเช่า กลุ่มการระงับสมาชิก และสรุปสัญญาณการเปลี่ยนใจ NO_TASKS_AVAILABLE / WINBACK_DISABLED ส่งคืนเป็น isError ต้องใช้ winback:claim
(none)complete_winback_taskสรุปงาน win-back ที่เช่าไว้ด้วยผลลัพธ์ (ระดับการดำเนินการ + การอ้างอิงหมายเหตุ หรือเหตุผล HOLD) Idempotent LEASE_EXPIRED / ALREADY_COMPLETED จะถูกส่งคืนเป็น isError ต้องใช้ winback:claim
task_id, acted?, lever?, action_ref?, note_id?, hold_reason?get_winback_contextตรวจสอบล่วงหน้าแบบอ่านอย่างเดียวในครั้งเดียวสำหรับสมาชิกก่อนตัดสินใจ: ความยินยอม ความถี่ของอีเมล ความเหนื่อยล้า การเข้าถึงล่าสุด สัญญาณการเลิกใช้งาน และกลุ่มที่ค้างอยู่ของสมาชิก ดูตัวอย่างตามมารยาท — เซิร์ฟเวอร์ยังคงบังคับใช้ทุกประตูในขณะที่เขียน ต้องใช้ winback:read
member_idadd_member_noteแนบบันทึกกระบวนการข้อความอิสระกับบันทึกการชนะกลับของสมาชิก (เหตุผล / สัญญาณที่สังเกตได้ / สมมติฐานที่สนับสนุนการระงับ) ข้อความถูกจัดเก็บเป็น DATA ไม่ใช่คำแนะนำ สูงสุด 2,000 ตัวอักษร ผ่านการฆ่าเชื้อแล้ว ต้องใช้ winback:write
member_id, body, kind?, task_id?, action_ref?send_winback_messageส่งข้อความที่ได้รับการควบคุมกลับ (กล่องจดหมายหรืออีเมล) เพื่อให้สิ่งจูงใจไม่ถือเป็นการให้เปล่า ประตูที่ปิดล้มเหลวฝั่งเซิร์ฟเวอร์: WINBACK_DISABLED, ความเป็นเจ้าของการเช่างาน, HOLDOUT_NO_SEND (ไม่มีการส่งข้อความที่ระงับ), NOT_CONSENTED, FREQUENCY_CAPPED, CONTENT_REJECTED (ถูกสุขอนามัย), BREAKER_TRIPPED - ส่งคืนเป็น isError นำสแต็กการส่งที่มีอยู่กลับมาใช้ซ้ำ (ยกเลิกการสมัครส่วนท้าย + การปฏิบัติตามข้อกำหนดที่เพิ่มโดยเลเยอร์การส่ง) ต้องใช้ winback:write
member_id, task_id, channel, subject?, bodyget_member_behaviorsอ่านพฤติกรรมที่ลูกค้าใช้งานของสมาชิกในหน้าต่างล่าสุด (เลเยอร์ 3 ใหม่สุดมาก่อน) เพื่ออนุมานเจตนา (เลเยอร์ 4) ส่งคืนเฉพาะการกระทำของลูกค้าโดยเจตนา (เรียกดู เปิด/คลิก เช็คอิน ซื้อ แลก อ้างอิง ส่งเนื้อหา) โดยมีป้ายกำกับแค็ตตาล็อก + ความหมายแนบในบรรทัด พร้อมข้อมูลสรุป (นับตามประเภท + หน้าต่าง) เหตุผลเหนือทั้งหน้าต่าง เจตนาเป็นเพียงสมมติฐานเพื่อยืนยัน ไม่ใช่ข้อเท็จจริง อ่านอย่างเดียว ต้องใช้ winback:read
member_id, since_days?, limit?claim_agent_taskเช่างานการตัดสินใจของตัวแทนครั้งต่อไปสำหรับทีมนี้ (อะตอมมิก; เลือกจำกัดให้แคบลงตามประเภท) ส่งกลับรหัสงาน ชนิด ข้อเท็จจริงของหัวเรื่อง และกำหนดเวลาการเช่า NO_TASKS_AVAILABLE / AGENT_TASKS_DISABLED ส่งคืนเป็น isError ต้องใช้ agent_tasks:claim
kind?get_agent_taskอ่านข้อเท็จจริงของงานการตัดสินใจของตัวแทนหนึ่งราย (ประเภท หัวเรื่อง เหตุผลในการแจ้งสถานะ สถานะ) ก่อนตัดสินใจ AGENT_TASK_NOT_FOUND ส่งคืนเป็น isError ต้องการ agent_tasks:read
taskIdcomplete_agent_taskดำเนินการงานที่เช่าให้เสร็จสมบูรณ์ด้วยการตัดสินใจ โดยใช้ผลของมันผ่านการเขียนแบบ idempotent ที่มีอยู่แล้ว fraud_household_referral: block (เรียกคืนทั้งสองฝ่าย) / allow (ยกเลิกการแจ้งเตือน) / escalate (ส่งต่อให้มนุษย์ตรวจสอบ) ALREADY_COMPLETED / NOT_LEASE_OWNER / LEASE_EXPIRED จะถูกส่งคืนเป็น isError ต้องใช้ agent_tasks:claim
taskId, decision, reason?list_objectsระบุวัตถุทางธุรกิจที่ทีมนี้สามารถวิเคราะห์ได้: วัตถุหลักของแพลตฟอร์ม (สมาชิก คำสั่งซื้อ ร้านค้า คูปอง แคมเปญ ผลิตภัณฑ์ กลุ่มลูกค้า แท็ก) รวมถึงวัตถุอื่นๆ ของทีมนี้ MCP- วัตถุที่กำหนดเองที่มองเห็นได้ — คีย์ ป้ายกำกับ และความหมายที่ชัดเจนในบรรทัดเดียว โทรสอบถามก่อนเพื่อตรวจสอบความถูกต้อง object ต้องใช้กุญแจ introspection:read.
(none)describe_objectอธิบายธุรกิจหนึ่งอย่าง object จากทะเบียนที่ควบคุม: ความหมายที่เชื่อถือได้พร้อมคุณสมบัติที่แบ่งออกเป็นข้อเท็จจริง (อิงตามคอลัมน์), ข้อมูลที่ได้มา (การอ้างอิงเมตริก/แท็ก/การรวมข้อมูลที่มีความทันสมัย — ห้ามคำนวณคุณภาพซ้ำ) และค่าที่กำหนดเอง (ฟิลด์ที่กำหนดเองของทีมนี้) คุณสมบัติ PII จะส่งคืนเฉพาะข้อมูลเมตาเท่านั้น ไม่ใช่ค่าจริง ฟิลด์ = สรุป (ค่าเริ่มต้น) หรือแบบเต็ม ต้องใช้ introspection:read.
object, fields?list_actionsระบุการกระทำของเอเจนต์ที่อยู่ภายใต้การกำกับดูแล (สิ่งที่เอเจนต์สามารถทำได้): กำหนดเป้าหมาย objectผลข้างเคียง, เกียร์ (อัตโนมัติ/ตรวจสอบ/ห้าม), คีย์เงื่อนไขเบื้องต้นฝั่งเซิร์ฟเวอร์, ขีดจำกัดค่า และความสามารถในการย้อนกลับ — ตรวจสอบตัวเองก่อนเสนอการเขียน สามารถกรองเพิ่มเติมได้ตามต้องการ object. กำหนดให้มี introspection:read.
object?list_stamp_programsแสดงรายการบัตรสะสมแต้มของทีม (eStampโปรแกรม: รหัส, ชื่อ, จำนวนแสตมป์ที่ต้องใช้ในการทำกิจกรรมให้เสร็จสมบูรณ์, ประเภทรางวัล (คูปอง/คะแนน/แบบกรอกเอง), การรีเซ็ตอัตโนมัติ และสถานะ กรุณาโทรสอบถามก่อน program_id. กำหนดให้มี stamp:read.
(none)get_member_stamp_cardsรับบัตรสะสมแต้มของสมาชิก: ชื่อโปรแกรม แต้มปัจจุบัน จำนวนแต้มที่ต้องสะสม จำนวนครั้งที่ทำสำเร็จ และรางวัลที่ได้รับ (ต้องใช้...) stamp:read.
member_idgrant_stampsมอบแสตมป์ให้กับสมาชิกสำหรับโปรแกรมสะสมแสตมป์ (เช่น การเยี่ยมชมร้านค้า) ทำงานได้ซ้ำซ้อนด้วย idempotency_key; เมื่อทำรายการเสร็จสิ้น รางวัล (คูปอง/คะแนน) จะถูกออกโดยอัตโนมัติ จำกัดจำนวนต่อการเรียกใช้ ต้องใช้ stamp:write
program_id, member_id, amount?, reason?, idempotency_key?get_member_pointsคะแนนของสมาชิก: ยอดคงเหลือที่ใช้ได้, คะแนนสะสมตลอดชีพ, การแลกคะแนน, ระดับปัจจุบัน, ชุดคะแนนที่จะหมดอายุเร็วที่สุด คีย์ที่ผูกกับสมาชิก → คะแนนของตนเอง (ไม่ต้องระบุ member_id); คีย์ของทีม → ส่งต่อ member_id ต้องใช้ loyalty:self:read
member_id?get_member_points_historyรายการธุรกรรมคะแนนล่าสุดของสมาชิก (ที่ได้รับ/แลก/ปรับปรุง) เรียงจากรายการล่าสุดก่อน รหัสสมาชิก → ประวัติส่วนตัว; รหัสทีม → รหัสผ่าน member_id. กำหนดให้มี loyalty:self:อ่าน.
member_id?get_member_rewardsรางวัลที่สมาชิกสามารถแลกคะแนนได้ — รายการพร้อมราคาคะแนน โดยแบ่งตามความสามารถในการจ่ายเมื่อเทียบกับยอดคงเหลือของสมาชิก รหัสสมาชิก → ของตนเอง; รหัสทีม → ของผ่าน member_id. กำหนดให้มี loyalty:self:อ่าน.
member_id?get_loyalty_program_rulesวิธีการทำงานของโปรแกรมสะสมคะแนน — อัตราการสะสมคะแนน โบนัสต้อนรับ มูลค่าคะแนน วิธีการเข้าร่วม — พร้อมคำถามที่พบบ่อย (FAQ) ที่ได้รับการอนุมัติจากแบรนด์ ข้อมูลสาธารณะ คีย์ที่ผูกกับสมาชิกไม่จำเป็นต้องมีอาร์กิวเมนต์ ต้องใช้ loyalty:self:read
member_id?list_synthetic_scenariosแสดงรายการสถานการณ์จำลองแผงสังเคราะห์พร้อมขอบเขตการใช้งานที่แท้จริง ระดับความเชื่อมั่น และช่องป้อนข้อมูลของแต่ละสถานการณ์ โทรติดต่อก่อนเพื่อเลือกประเภท ต้องใช้ metrics:read.
(none)get_synthetic_calibrationการปรับเทียบแผงข้อมูลสังเคราะห์ของแบรนด์ (อัตราความแม่นยำของการคาดการณ์สังเคราะห์ในอดีตเทียบกับความเป็นจริง) null จนกว่าจะมีการทดสอบย้อนหลัง) ต้องใช้ metrics:read.
(none)get_synthetic_reportอ่านรายงานที่เที่ยงตรงและแช่แข็งสำหรับการวิเคราะห์แผงสังเคราะห์ — การอ่านทิศทาง ความเชื่อมั่นสูงสุด สัญญาณเตือนการกดดัน ธีม — หรือ blockReason หากยังไม่พร้อม ต้องใช้ metrics:read.
run_idrun_synthetic_panelทำการจำลองกลุ่มตัวอย่าง: ใช้แบบจำลองดิจิทัลที่ไม่ระบุตัวตนของกลุ่มเป้าหมายเพื่อตอบสนองต่อสิ่งกระตุ้น และสร้างรายงานแสดงทิศทางที่เที่ยงตรง (ไม่ใช่ตัวเลขสัมบูรณ์จริง) ส่งคืน run_id เพื่อใช้ในการสำรวจ จำกัดจำนวนการจำลองต่อวัน + ≤50 แบบจำลอง ต้องใช้ synthetic:write
segment_id, kind, fieldsความปลอดภัยและความเป็นส่วนตัว
ส่วนติดต่อผู้ใช้ MCP เป็นเลเยอร์อำนวยความสะดวกด้าน AI ไม่ใช่เครื่องมือบริหารจัดการแบบกลุ่ม มีบางสิ่งที่ควรคำนึงถึง:
- เซิร์ฟเวอร์เป็นขอบเขต ไม่ใช่แชท การดำเนินการเขียน (การให้รางวัล/การแลกคะแนน การออกคูปอง การออกรหัส Ambassador) จำเป็นต้องมีขอบเขตการเขียนที่ตรงกัน และ ถูกผูกไว้โดยตัวป้องกันฝั่งเซิร์ฟเวอร์: มูลค่าสูงสุดต่อการโทรบวกขีดจำกัดอัตราการเขียนต่อคีย์ ทั้งคู่บังคับใช้เมื่อปิดล้มเหลว การยืนยันในแชทใดๆ ที่ไคลเอนต์ AI ของคุณขอนั้นเป็นไปตามมารยาท เซิร์ฟเวอร์คือสิ่งที่จะหยุดคีย์ที่รั่วไหลหรือโมเดลที่แทรกพร้อมท์จากจุดระบาย
- เครื่องมือการอ่านบางตัวส่งคืน PII สมาชิก เครื่องมือเช่น
get_memberและlist_membersสามารถส่งคืนชื่อและอีเมลที่ถอดรหัสไปยังไคลเอนต์ AI ของคุณ ปฏิบัติต่อข้อมูลนั้นตามนั้นและเลือกใช้คีย์ที่มีสิทธิ์น้อยที่สุด - ห้ามส่งคีย์แบบข้อความธรรมดาเด็ดขาด อ้างอิง
${FLASH_API_KEY}ใน.mcp.jsonที่เช็คอินแล้วเสมอ แทนที่จะใช้คีย์แบบตรงตัว - ใช้คีย์ที่มีสิทธิ์น้อยที่สุดและอ่านได้อย่างเดียว สร้างคีย์ที่มีขอบเขตเฉพาะเครื่องมือที่คุณต้องการ หากคีย์ใดไม่มีขอบเขตของเครื่องมือนั้น เครื่องมือดังกล่าวจะถูกซ่อนไว้ — มันจะไม่ปรากฏในรายการ
ตัวเลขมาจากเลเยอร์ความหมายที่มีการควบคุม
ทุกตัวชี้วัดที่ AI รายงาน — GMV, สมาชิกที่ใช้งานอยู่, อัตราการแลกรับ และอื่นๆ — จะไหลผ่านเลเยอร์ตัวชี้วัดที่มีการกำกับดูแลของ SocialHub ซึ่งมีคำจำกัดความ (และการรับรอง) ที่เชื่อถือได้เพียงหนึ่งเดียวสำหรับแต่ละตัวชี้วัด เครื่องมือ list_metrics, describe_metric, query_metric, breakdown_metric และ ask_metrics จะเลือกคีย์ตัวชี้วัดและมิติภายใต้การกำกับดูแลนั้น — AI จะไม่เขียน SQL ดังนั้นตัวเลขที่คุณได้รับจึงตรงกับแดชบอร์ดของคุณ แทนที่จะเป็นผลรวมแบบเฉพาะกิจที่อาจคลาดเคลื่อนได้
ตัวอย่างการสนทนา
list_stores ที่มีสถานะ "ใช้งานอยู่"