Customer Insights - 資料 的 MCP Server 工具參考

一台 MCP 伺服器同時服務 Customer Insights - 資料 與 Customer Insights - Journeys,但每個工具都支援特定應用程式。 透過 Customer Insights - 資料,你可以使用客戶檔案工具。 旅程和電子郵件工具需要 Customer Insights - Journeys,同意工具則需要 Customer Insights - Journeys 或 Shared Consent。

Customer Insights 模型情境協定(MCP)伺服器將 Dynamics 365 Customer Insights - 資料 與 Customer Insights - Journeys 功能公開為 AI 客服人員及大型語言模型(LLM)客戶端可呼叫的工具。

兩個應用程式共用一台 MCP 伺服器。 您的客服員不再直接呼叫內部 API,而是透過一個安全介面運作,該介面套用 Customer Insights 在其他地方執行的相同規則,包括旅程執行時的同意規則。

伺服器是共享的,但每個工具都使用特定應用程式的資料。 透過 MCP,代理人可以:

  • 使用 Customer Insights - 資料:發現已匯入的資料來源,將來源紀錄解析為統一的客戶檔案,並取得個人資料屬性、分區成員、衡量、預測及叢集成員
  • 使用 Customer Insights - Journeys 或 Shared Consent:在發送訊息前,先檢查同意並產生符合規定的退訂連結
  • 使用 Customer Insights - Journeys:建立旅程並驗證電子郵件內容

工具一覽

需求欄位顯示每個工具的支援範圍。 工具不會讀取另一個應用程式的資料,因此需要 Customer Insights - 資料 的工具不會回傳 Customer Insights - Journeys 資料。

Tool 顯示標題 其功能是什麼 Requires 唯讀
find_customer 尋找客戶 依姓名搜尋統一的客戶檔案 客戶洞察-數據 Yes
get_customer_by_source_id 按來源識別解決客戶 從來源系統記錄 ID 解析統一的客戶 ID 客戶洞察-數據 Yes
get_customer_by_contact 以聯絡方式解決客戶問題 解析來自 Dataverse 聯絡 GUID 的統一客戶識別 客戶洞察-數據 Yes
get_customer_details 取得客戶資料 回傳一位客戶的完整 Customer 360 檢視圖 客戶洞察-數據 Yes
get_customer_segments 獲取顧客分群 列出客戶所屬的 Customer Insights - 資料 細分 客戶洞察-數據 Yes
get_customer_measures 取得客戶指標 報酬、計算的指標與關鍵績效指標 客戶洞察-數據 Yes
get_customer_predictions 獲取客戶預測 回傳機器學習預測,如流失機率 客戶洞察-數據 Yes
get_cluster_information 取得叢集資訊 回報群組成員,例如家庭,以及其他成員 客戶洞察-數據 Yes
list_data_sources 資料來源列表 列出已攝取的資料來源及其記錄數量 客戶洞察-數據 Yes
check_consent 檢查同意 檢查聯絡點、管道、目的及主題的同意 Customer Insights - Journeys 或 Shared Consent(共享同意) Yes
get_unsubscribe_link 取得取消訂閱連結 為收件人產生合規的退訂連結 Customer Insights - Journeys 或 Shared Consent(共享同意) Yes
create_journey 創造旅程 肯定、豐富並創造一段旅程 顧客洞察 - 旅程 No
validate_email 驗證電子郵件 驗證現有郵件而不更改內容 顧客洞察 - 旅程 Yes

重要

get_customer_segments僅回傳 Customer Insights - 資料 細分項目。 它不會回傳你在 Customer Insights - Journeys 建立的細分區段的會員資格,而 Customer Insights MCP 伺服器中沒有任何工具會回傳 Customer Insights - Journeys 細分的會員資格。

create_journey 是唯一能寫入資料的工具。 它不是只讀、破壞性或冪能的,所以叫兩次會造成兩段旅程。 其他工具只能讀取。

工具如何組合

需要 Customer Insights - 資料 的客戶檔案工具,遵循兩步驟模式:解析統一的客戶 ID,然後用該 ID 來取得客戶資料。 同意、旅程和電子郵件工具不需要統一的客戶 ID。

步驟 1:解決統一的客戶識別碼

選擇與你已知客戶狀況相符的工具:

  • find_customer 當你有一個人的名字時
  • get_customer_by_contact 當您擁有 Dataverse 時,請聯絡 GUID
  • get_customer_by_source_id 當你擁有來自匯入來源系統(如忠誠系統或 ERP 系統)的紀錄 ID 時

如果你不知道哪些來源實體名稱有效,請先打電話詢問 list_data_sources 。

步驟 2:取回客戶資料

解決 ID 後,請撥打以下任一工具:

  • get_customer_details 完整資料資料與來源
  • get_customer_segments 分段會員資格
  • get_customer_measures 針對KPI與衡量指標
  • get_customer_predictions 針對人工智慧與機器學習分數
  • get_cluster_information 群集成員資格

客戶檔案工具

這些工具需要 Customer Insights - 資料。 他們從 Dataverse 虛擬實體讀取資料,這些實體反映出 Customer Insights - 資料 所建立的即時統一客戶資料,包括其分段、衡量、預測與叢集。

Note

客戶資料工具不會讀取 Customer Insights - Journeys 的資料。 如果你只使用 Customer Insights - Journeys,這些工具就沒有統一的客戶檔案可供閱讀。 在 Customer Insights - Journeys 中的 Use Customer Insights - 資料 檔案與細分領域中了解更多。

尋找客戶

find_customer

依名字或姓氏搜尋統一的客戶檔案,並回傳匹配的客戶 ID、姓名及電子郵件地址。 當使用者給你一個人的名字但沒有統一的客戶 ID 時,請先使用這個工具。

  • 行為:如果你不提供姓名,工具會列出個人資料而非搜尋。
  • 分頁:用 top 來控制頁面大小。 回覆內容包括 hasMore :讓你能判斷目前頁面之外是否有更多結果。

按來源識別解決客戶

get_customer_by_source_id

從已匯入的來源系統中記錄識別碼解析統一的客戶 ID。 當你有來自忠誠度或 ERP 系統的 ID 並需要匹配的 Customer Insights 檔案時,可以使用它。

先呼叫 list_data_sources 以尋找有效的來源實體名稱,例如 contact、 lead或自訂資料表。

以聯絡方式解決客戶問題

get_customer_by_contact

解析來自 Dataverse 聯絡人 GUID 的統一客戶 ID。 當工作流程以聯絡人紀錄開始,並需要相關的客戶洞察檔案時,請使用它。

這個工具是 的 get_customer_by_source_id 捷徑,將來源實體設為 contact。

取得客戶資料

get_customer_details

為統一客戶回傳完整的 Customer 360 視圖。 結果包括:

  • 核心個人檔案屬性,如姓名、電子郵件和地址,系統欄位則不包含
  • 分段會員資格
  • 客戶衡量標準
  • 叢集
  • 預測
  • 顯示資料統一來源的來源紀錄

每個來源記錄包含來源實體的非系統屬性、這些屬性如何映射到統一設定檔屬性,以及一個標示每個統一欄位中哪個來源貢獻了勝出值的旗標。

在解決客戶識別問題後,使用這個工具,並希望一通電話中了解完整情況。

獲取顧客分群

get_customer_segments

列出統一客戶所屬的 Customer Insights - 資料 細分或受眾。 每個結果包含區段名稱、顯示名稱和區段識別碼。

此工具不會回傳 Customer Insights - Journeys 的細分項目。

取得客戶指標

get_customer_measures

退貨計算客戶指標與關鍵績效指標(KPI),例如終身價值、訂單數量及互動分數。 該工具將支援的 Customer Insights 資料佈局中儲存的指標整合成單一結果。

用它來取得總購買量、平均訂單金額或自訂商業指標等彙整值。

獲取客戶預測

get_customer_predictions

為統一客戶回報機器學習預測,例如流失機率、預測終身價值、傾向分數及次佳產品建議。 每個結果都包含該產品所屬的型號與供應商。

取得叢集資訊

get_cluster_information

回傳客戶所屬的叢集,以及每個叢集的其他成員及其親和力分數。 叢集類型是從 Customer Insights 模型的元資料中動態發現的。

叢集是統一後的規則,將符合一組條件的統一設定檔分組。 例如,家庭是指一群共用同姓和同住址的人。

列出數據源

list_data_sources

列出匯入客戶洞察的資料來源。 針對每個來源,工具會回報來源實體、記錄數量,以及該來源的欄位是否出現在統一剖面中。 它也會標示那些欄位未解析成剖面欄位的來源,這在排查統一問題時很有用。

不需要輸入。 使用此工具在呼叫 get_customer_by_source_id前發現有效的來源實體名稱。

這些工具需要 Customer Insights - Journeys 或 Dynamics 365 應用程式,並附有共享同意。 他們不需要 Customer Insights - 資料。

這些工具委託給與 Customer Insights - Journeys 在旅程執行時所使用的後端同意服務相同,因此客服人員的決策總是與旅程本身的行為相符。 同意服務可獨立於完整 Customer Insights 安裝,因此即使在僅部署 Dynamics 365 Sales 或 Contact Center 的環境中,這些工具也能使用。

check_consent

檢查聯絡點、溝通管道、目的及主題的同意狀態。 在推薦或發送通知前,請先打電話確認收件人是否符合資格。 該工具會 msdynmkt_checkconsent 呼叫 Dataverse 自訂 API,並回傳同意服務的決定,包括訊息被阻擋的原因。

典型使用案例

準備發送商業訊息的客服人員會打電話 check_consent 確認收件人是否選擇加入相關目的與管道。

範例

檢查聯絡點 +111111111、合規設定檔 7f4a6355-1811-4cde-bde3-fee8c85f56b1、目的 Commercial(10000000-0000-0000-0000-000000000003)、通路類型 SMS、事業單位 c507f51d-8f0c-ee11-8f6e-6045bd6ef763及主題 Commercial Topic 001(23db4a4d-ba9f-f011-bbd3-6045bd194648)的同意狀態。

結果:

參數 Value
接觸點 +111111111
頻道類型 SMS
合規設定檔識別碼 7f4a6355-1811-4cde-bde3-fee8c85f56b1
Purpose 商業版(ID:1000000-0000-0000-0000-0000000003)
Topic 商業主題 001(ID:23db4a4d-ba9f-f011-bbd3-6045bd194648)
事業單位 C507F51D-8F0C-EE11-8F6E-6045BD6EF763
同意 ✅ 已批准

該聯絡點擁有商業目的與商業主題 001 主題所需的自願同意,因此在現行合規設定下,允許向此聯絡點發送簡訊訊息。

get_unsubscribe_link

為收件人及訊息情境產生合規的退訂連結。 請求會標示收件人實體、目的、合規設定、訊息範本及聯絡點。 該工具會 msdynmkt_getunsubscribelink 呼叫 Dataverse 自訂 API。

每個連結都與聯絡點和訊息情境不同,因此你能享有完整的追蹤與可稽核性。

當收件人選擇該連結時,會開啟與合規設定檔相關的偏好中心頁面。 偏好中心讓收件人管理自己的溝通偏好,例如選擇退出特定目的或主題、更新聯絡點,或取消訂閱所有內容。 這讓客戶擁有真正的掌控權,而非全有或全無的退出。

你可以自訂偏好中心的外觀與使用感,以符合你的品牌,包括更新文字、新增目的與主題、用自訂 CSS 樣式化頁面,以及新增自訂 JavaScript。 在 「創建品牌客製化偏好中心」了解更多。

典型使用案例

外展代理會產生訊息,並致電 get_unsubscribe_link 在訊息內容中嵌入一鍵退出連結。

範例

產生一個取消訂閱連結,涵蓋聯絡點 +111111111、實體類型 Contact (f56302b0-875e-f111-a826-7ced8d6d1623)、訊息範本 226abb7d-855e-f111-a826-7ced8d6d1e7c、合規設定檔 7f4a6355-1811-4cde-bde3-fee8c85f56b1、目的 10000000-0000-0000-0000-000000000003、主題 23db4a4d-ba9f-f011-bbd3-6045bd194648及事業單位 c507f51d-8f0c-ee11-8f6e-6045bd6ef763。

結果:

參數 Value
接觸點 +111111111
實體類型 聯絡方式
實體識別碼 f56302b0-875e-f111-a826-7ced8d6d1623
訊息範本 ID 226abb7d-855e-f111-a826-7ced8d6d1e7c
合規設定檔識別碼 7f4a6355-1811-4cde-bde3-fee8c85f56b1
目的識別 10000000-0000-0000-0000-000000000003
主題識別碼 23db4a4d-ba9f-f011-bbd3-6045bd194648
事業單位識別碼 C507F51D-8F0C-EE11-8F6E-6045BD6EF763

已產生的退訂連結:

https://public-fra.mkt.dynamics.com/api/v2.0/orgs/7b2fdebc-d216-ee11-a66d-0022483903fc/consent/preferences?contextId=fd436906-0633-42a9-8426-c3a6edca0100

旅程與電子郵件工具

這些工具需要 Customer Insights - Journeys。

創造旅程

create_journey

驗證完整的旅程 JSON payload,豐富它,再驗證一次豐富後的 payload,然後建立 Customer Insights - Journeys 旅程記錄。 回應包含已建立的旅程 ID 及驗證結果。

重要

create_journey 是 Customer Insights MCP 伺服器中唯一能產生資料的工具。 它不是冪立的,所以重試失敗的通話可能會產生重複的旅程。 請你的經紀人在重審前確認結果。

驗證電子郵件

validate_email

驗證現有的 Customer Insights - Journeys 電子郵件,且不修改郵件。 請求包含電子郵件訊息 ID、內容部分、佔位符及驗證上下文。 回應包含訊息層級與佔位層級的驗證結果。

利用它在旅程發送訊息前,發現內容問題,例如未解決的佔位符。

工作流程範例

用名字查詢客戶,取得他們的完整檔案

這個工作流程需要 Customer Insights - 資料。

  1. 打電話 find_customer,然後選擇匹配的客戶並記錄他們的統一ID。
  2. 請致電 get_customer_details 索取資料資料、分段、測量及來源來源。

豐富已知資料宇宙的聯絡人

這個工作流程需要 Customer Insights - 資料。

  1. 打電話 get_customer_by_contact 將聯絡人ID解析為統一的客戶ID。
  2. 打電話 get_customer_predictions 查詢 get_cluster_information 流失分數、客戶終身價值分數和群組會員資格。

解析來自其他來源系統的紀錄

這個工作流程需要 Customer Insights - 資料。

  1. 請致電 list_data_sources 查詢有效的來源實體名稱。
  2. 呼叫 get_customer_by_source_id 以將來源紀錄解析為統一的客戶 ID。
  3. 打電話 get_customer_segments 或 get_customer_measures 詢問細分項目和關鍵績效指標(KPI)相關資訊。

發送合規訊息

這個工作流程需要 Customer Insights - Journeys 或 Shared Consent。

  1. 取得收件人的聯絡方式,例如電子郵件地址或電話號碼,以及他們的紀錄編號。 如果你使用 Customer Insights - 資料,你可以先用其中一個解決工具解決客戶問題。
  2. 請致電 check_consent 確認該聯絡人是否選擇用於您打算使用的目的、主題、頻道及聯絡點。
  3. 致電 get_unsubscribe_link 取得個人化的退出連結。
  4. 撰寫並發送帶有連結的訊息。

建立並檢視旅程

這個工作流程需要 Customer Insights - Journeys。

  1. 打電話 create_journey 告訴我旅程的貨物。
  2. 撥打 validate_email 旅程使用的電子郵件,確認內容是否正確解決。

運作原理

Customer Insights MCP 伺服器是建立在 Dataverse 自訂 API 模式之上。 它使用兩個自訂的 API 來進行工具互動:

  • 清單工具:列舉伺服器上所有註冊的 MCP 工具。
  • 呼叫工具:以名稱執行特定的 MCP 工具,並將參數以 JSON 傳遞。

伺服器定義存在於基礎解決方案(CxpClient)中,該解決方案會發佈給每個 Dynamics 365 組織。 來自 Customer Insights - 資料 和 Customer Insights - Journeys 的工具供應商會作為解決方案擴充加入。

架構概觀

伺服器採用分層架構:

  1. 協定層:自訂 API 與 Dataverse 外掛負責 MCP 協定合規性。
  2. 登錄層:透過基於反射的自動發現,在執行時發現可用的工具提供者。
  3. 工具層:MCP 包裝器,用於驗證輸入並將委派給服務。
  4. 服務層:呼叫底層客戶洞察服務的業務邏輯。
  5. 資料層:Dataverse 虛擬實體與 Dataverse 儲存。

安全性

MCP 伺服器在多個層級執行安全防護:

層 Description
傳輸安全(mTLS) 客戶端與 Dataverse 之間的互助傳輸層安全憑證驗證
自訂 API 權限 平台在允許工具發現或執行前,先驗證使用者權限
工具層級授權 每個工具都會檢查實體特定的權限,例如同意目的的讀取權限
資料層級安全 列級安全確保使用者只存取他們被授權查看的資料

Note

授權是在工具邏輯中,利用呼叫者的使用者情境強制執行的。 MCP 伺服器從不會隱含地升級權限。 工具只是表面功夫,從不做超出呼叫使用者被允許做的事。

先決條件

在使用工具之前,請確保你具備:

  • 每個工具所需的應用程式:
    • 關於客戶資料工具,Customer Insights - 資料。
    • 至於旅程和電子郵件工具,請參考 Customer Insights - Journeys。
    • 對於同意工具,可以使用 Customer Insights - Journeys 或部署於具備共享同意的 Dynamics 365 環境,例如 Dynamics 365 Sales with Shared Consent。
  • 存取支援你計劃調用工具的 Dataverse 表格。
  • 對於同意工具,至少有一個符合目的和主題的合規檔案。 預設的合規設定包含商業目的( Commercial Purpose)且具限制性執法(Restricted enforce)和交易型( Transactional Purpose)但非限制性執法,因此你可以立即開始,無需額外設定。
  • Dataverse 的安全角色賦予工具對使用者或代理身份所需的特權。

Limitations

請記住下列限制:

  • 同意工具涵蓋同意檢查和取消訂閱連結產生。 更新同意、建立或刪除目的與主題等管理操作,以及同意模型的元資料檢索,都不會透過 MCP 公開。
  • Customer Insights - Journeys 區段:無工具退貨 Customer Insights - Journeys 區段會員資格。 get_customer_segments僅回傳 Customer Insights - 資料 細分項目。
  • 效能:透過 MCP 的通話在旅程執行時可能比直接服務通話延遲更高。 設計高通量情境時,請將此納入考量。
  • 單一 MCP 伺服器:一台伺服器同時涵蓋 Customer Insights - Journeys 與 Customer Insights - 資料,且所有工具共享相同的伺服器層級範圍定義。 工具層級授權控制對個別工具的存取。 每個工具仍然需要在「工具一覽中的需求」欄位中顯示的內容。

下一步