Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
[Bu makale yayın öncesi belgedir ve değişebilir.]
Process Mining MCP sunucusu, İşlem Madenciliği analiz özelliklerini yapay zeka aracılarına ve konuşma uygulamalarına sunan özel bir Model Bağlam Protokolü uygulamasıdır. Microsoft Copilot Studio gibi MCP uyumlu istemciler aracılığıyla işlem analiziyle doğal dil etkileşimlerine olanak tanıyan süreç madenciliği verilerine programlı erişim sağlar.
Önemli
- Bu bir önizleme özelliğidir.
- Önizleme özellikleri, üretimde kullanıma yönelik değildir ve sınırlı işlevselliğe sahip olabilir. Bu özellikler, müşterilerin erken erişim elde etmesi ve geri bildirim sağlaması amacıyla resmi sürümden önce kullanıma sunulur.
- Daha fazla bilgi için önizleme koşulları sayfamıza gidin.
Önemli özellikler:
- İşlem bulma: Kullanılabilir işlemleri ve bunların meta verilerini listeleme ve keşfetme
- Analiz ve ölçümler: Performans sorunu analizi, çeşitlemeler, servis talepleri, kenarlar ve toplu ölçümler alma
- Bağıntı analizi: İşlem performansı üzerindeki öznitelik etkilerini belirleme
- Gelişmiş filtreleme: Öznitelikler, zaman çerçeveleri, ölçümler, alt işlemler ve diziler arasında karmaşık filtreler uygulama
- Uzun süre çalışan işlemler: İlerleme bildirimleri içeren karmaşık sorgular için destek
Mimari:
- Sunucu tarafı bileşeni: Power Platform ve Dataverse ile tümleştirilir
- Kimlik doğrulaması: Ortam bağlamı ile Azure AD tabanlı
- Bağlayıcı: Power Platform bağlayıcıları kataloğunda önceden oluşturulmuş bir İşlem Madenciliği bağlayıcısı olarak kullanılabilir
- Protokol: Model Bağlam Protokolü (MCP) standardı
Önkoşullar
Aşağıdaki listede İşlem Madenciliği MCP sunucusunu kullanmaya yönelik önkoşullar yer alır.
- Etkin İşlem Madenciliği lisansı
- Power Platform'da en az bir alınan işlemle yapılandırılan İşlem Madenciliği ortamı
- Azure AD kimlik doğrulaması
- İşlem Madenciliği bağlayıcısı yapılandırılmış MCP uyumlu istemci (örneğin, Copilot Studio)
Kullanılabilir MCP araçları
Sunucu, amaca göre düzenlenmiş dokuz (9) aracı kullanıma sunar. Her araç belirli parametreleri kabul eder ve yapılandırılmış analiz verilerini döndürür.
İşlem bulma araçları
Kullanılabilir işlemleri ve bunların yapılandırmasını bulmak için bu araçları kullanın.
| Araç adı | Amaç | Anahtar parametreleri |
|---|---|---|
| get_processes | Kimlikler ve adlarla tüm işlemleri listeler | Hiçbiri (ortam bağlamı kullanır) |
| get_process_details | Öznitelikleri, özel ölçümleri, iş kurallarını alır | processId (Guid) |
| get_attribute_values | Sayfalandırma ile belirli öznitelik için değerleri alır | processId, attributeName, itemsPerPage, itemsToSkip |
get_processes
Geçerli ortamda kimliği doğrulanmış kullanıcının erişebileceği tüm işlemleri listeler.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Hiçbiri | - | - | - | Ortamı belirlemek için kimlik doğrulama bağlamı kullanır |
İade:
- processId ve processName ile EntityListItem dizisi
Örnek kullanım:
User: "What processes are available?"
Tool: get_processes
Response: List of processes with IDs
Ne zaman kullanılır:
- Kullanılabilir işlemleri keşfederken çağrılan ilk araç
- Sonraki araç çağrıları için geçerli işlem kimlikleri alma
- Kullanıcının belirli işlemlere erişimi olduğunu doğrulama
get_process_details
Öznitelikler, özel ölçümler ve iş kuralları gibi belirli bir işlem için kapsamlı meta verileri alır.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
İade:
- GetAnalyticsMetadataResult içeriği:
- Öznitelikler: Olay düzeyi ve olay düzeyi öznitelikleri
- Özel ölçümler: Kullanıcı tanımlı ölçümler
- İş kuralları: İşlem için yapılandırılmış kurallar
Örnek kullanım:
User: "Tell me about the Order-to-Cash process attributes"
Tool: get_process_details with processId
Response: Attributes (Department, Customer, Activity), custom metrics, business rules
Ne zaman kullanılır:
- Filtreleri oluşturmadan önce (geçerli öznitelik adlarını bulmak için)
- İşlem şemasını ve kullanılabilir ölçümleri anlama
- Olay düzeyi ve olay düzeyi özniteliklerini tanımlama (bağıntı analizi için önemlidir)
Tip
Özniteliğin büyük/küçük harf düzeyinde olduğunu doğrulamak için get_correlation kullanmadan önce her zaman get_process_details çağırın.
get_attribute_values
Sayfalandırma desteğine sahip belirli bir özniteliğin tüm değerlerini alır.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
| öznitelik adı | dize | - | Yes | Değerlerini alınacak özniteliğin adı |
| itemsPerPage | int | 20 | No | Sayfa başına öğe sayısı (maksimum dağıtıma göre değişir) |
| itemsToSkip | int | 0 | No | Sayfalandırma için uzaklık |
İade:
- McpAnalyticsListResult ile:
- items: Öznitelik değerlerini ve ilişkili ölçümleri içeren sözlük dizisi
- uzaklık: Geçerli sayfalandırma uzaklığı
- sınır: Sayfa boyutu
- totalCount: Toplam kullanılabilir kayıt sayısı
Örnek kullanım:
User: "What departments are in the Order-to-Cash process?"
Tool: get_attribute_values with processId, attributeName="Department"
Response: List of department values (Sales, Finance, Warehouse)
Ne zaman kullanılır:
- Filtreleme için geçerli değerleri bulma
- Öznitelik dağıtımlarını keşfetme
- Dinamik filtre URI'leri oluşturma
Analiz ve ölçüm araçları
İşlem performansını analiz etmek, performans sorunlarını belirlemek ve ölçümleri almak için bu araçları kullanın.
| Araç adı | Amaç | Anahtar parametreleri |
|---|---|---|
| get_process_overall_metrics | Toplu işlem düzeyi ölçümleri | processId, filterOptions |
| get_bottleneck_analysis | En uzun süreli etkinlikler | processId, filterOptions |
| get_variants_with_metrics | Ölçümlerle işlem varyantları | processId, filterOptions, metricToSortBy |
| get_edges_with_metrics | Ölçümlerle akış kenarlarını işleme | processId, filterOptions |
| get_cases_with_metrics | Ölçümlerle tek tek servis talepleri | processId, filterOptions, metricToSortBy |
get_process_overall_metrics
Belirtilen işlem ve filtreler için toplu işlem düzeyi ölçümleri döndürür.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
| filterOptions | McpFilterOptions | sıfır | No | Uygulanacak isteğe bağlı filtreler |
| itemsPerPage | int | 20 | No | Sayfa başına öğe sayısı |
| itemsToSkip | int | 0 | No | Sayfalandırma için uzaklık |
İade:
- Ölçüm anahtar-değer çiftlerinin sözlüğü:
- Toplam servis talebi sayısı
- Ortalama/ortanca/en düşük/maksimum büyük/küçük harf süresi
- Aktarım hızı ölçümleri
- SLA uyumluluk ölçümleri
Örnek kullanım:
User: "What are the overall metrics for Order-to-Cash?"
Tool: get_process_overall_metrics with processId
Response: 1,245 cases, avg duration 4.2 days, median 3.8 days
Ne zaman kullanılır:
- Üst düzey işlem özetleri
- Filtrelenmiş ile genel performansı karşılaştırma
- Temel ölçümleri oluşturma
get_bottleneck_analysis
Performans sorunlarını belirlemek için etkinlikleri analiz eder ve süreye (azalan) göre sıralanmış olarak döndürür.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
| itemsPerPage | int | 20 | No | Sayfa başına öğe sayısı |
| itemsToSkip | int | 0 | No | Sayfalandırma için uzaklık |
| mcpFilterOptions | McpFilterOptions | sıfır | No | Uygulanacak isteğe bağlı filtreler |
İade:
- Süreye göre sıralanmış etkinliklerle McpAnalyticsListResult (azalan)
- Her öğe şu öğeleri içerir:
- Değer: Etkinlik adı
- Süre: Etkinlik için ortalama süre
- İstenen ek ölçümler
Özel davranış:
- "Activity" özniteliğini analiz etmek için önceden yapılandırılmış
- Süre ve Değer ölçümlerini otomatik olarak içerir
- Süreye göre azalan düzende sıralanmış
Örnek kullanım:
User: "What are the top 3 bottlenecks in Order-to-Cash?"
Tool: get_bottleneck_analysis with processId, itemsPerPage=3
Response:
1. Approve Order - Avg duration: 3.2 days
1. Credit Check - Avg duration: 2.8 days
1. Prepare Shipment - Avg duration: 2.1 days
Ne zaman kullanılır:
- İşlem performans sorunlarını tanımlama
- İyileştirme çalışmalarının önceliğini belirleme
- Departmana özgü veya segmente özgü performans sorunlarını analiz etme (filtrelerle)
Tip
Belirli departmanlara odaklanan performans sorunu analizi için, segmente özgü performans sorunlarını belirlemek için AttributeValueFilter ile birleştirin.
get_variants_with_metrics
İlişkili ölçümlerle işlem değişkenlerini (benzersiz etkinlik dizileri) alır.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
| filterOptions | McpFilterOptions | sıfır | No | Uygulanacak isteğe bağlı filtreler |
| itemsPerPage | int | 20 | No | Sayfa başına öğe sayısı |
| itemsToSkip | int | 0 | No | Sayfalandırma için uzaklık |
| metricToSortBy | VariantMetric | CaseDuration | No | Sonuçları sıralama ölçütü olarak ölçüm |
| sortOrder | Sıralama | Azalan | No | Sıralama yönü (Artan/Azalan) |
İade:
- McpAnalyticsListResult ve çeşitli değişkenler:
- Değişken yol (etkinlik dizisi)
- Sıklık ve büyük/küçük harf sayısı
- Süre ölçümleri
- Davranışsal sapma göstergeleri
Örnek kullanım:
User: "What are the most common process variants?"
Tool: get_variants_with_metrics with processId, metricToSortBy=CaseCount, sortOrder=Descending
Response: Top 3 variants with frequencies and durations
Ne zaman kullanılır:
- Mutlu yolu ve sorunlu varyantları tanımlama
- Süreç uyumluluğu analizi
- Yeniden çalışma döngülerini ve sapmalarını bulma
- Değişken performansı karşılaştırma
get_edges_with_metrics
Sıklık ve süre ölçümlerine sahip etkinlikler arasındaki geçişleri (kenarlar) alır.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
| filterOptions | McpFilterOptions | sıfır | No | Uygulanacak isteğe bağlı filtreler |
| itemsPerPage | int | 20 | No | Sayfa başına öğe sayısı |
| itemsToSkip | int | 0 | No | Sayfalandırma için uzaklık |
İade:
- McpAnalyticsListResult ve kenarlar:
- Etkinlikten etkinliğe
- Geçiş sıklığı
- Geçiş süresi
- Sapma göstergeleri
Örnek kullanım:
User: "Show me the process flow transitions"
Tool: get_edges_with_metrics with processId
Response: Activity transitions with frequencies (e.g., Create Order → Approve Order: 1,100 cases)
Ne zaman kullanılır:
- İşlem akışı yapısını anlama
- Yönlendirme karmaşıklığını belirleme
- Performans sorunu geçişlerini bulma
- Teslim gecikmelerini analiz etme
get_cases_with_metrics
İlişkili ölçümlere ve özniteliklere sahip tek tek servis taleplerini alır.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
| filterOptions | McpFilterOptions | sıfır | No | Uygulanacak isteğe bağlı filtreler |
| itemsPerPage | int | 20 | No | Sayfa başına öğe sayısı |
| itemsToSkip | int | 0 | No | Sayfalandırma için uzaklık |
| metricToSortBy | CaseMetric | Süre | No | Sonuçları sıralama ölçütü olarak ölçüm |
| sortOrder | Sıralama | Azalan | No | Sıralama yönü (Artan/Azalan) |
İade:
- McpAnalyticsListResult ve örnekler:
- Servis Talebi Kimliği
- Süre, etkin süre, bekleme süresi
- Olay sayısı
- Öznitelik değerleri
Örnek kullanım:
User: "Show me cases that took longer than 5 days"
Tool: get_cases_with_metrics with processId, filterOptions (MetricConditionFilter for Duration>5 days)
Response: List of cases exceeding 5 days with details
Ne zaman kullanılır:
- Ayrıntılı olay araştırması
- Aykırı durumları tanımlama
- Belirli durumlar için kök neden analizi
- Daha fazla analiz için servis talebi verilerini dışarı aktarma
Bağıntı çözümleme araçları
Özniteliklerin işlem ölçümlerini nasıl etkilediğini belirlemek için bu aracı kullanın.
| Araç adı | Amaç | Anahtar parametreleri |
|---|---|---|
| get_correlation | İşlem ölçümlerinde öznitelik etkisi | processId, attributeName, influenceFormula |
get_correlation
Etkileri belirlemek için öznitelik değerleri ve işlem ölçümleri arasındaki bağıntıyı hesaplar.
Parametreler:
| Parametre | Type | Varsayılan | Gerekli | Açıklama |
|---|---|---|---|---|
| Processıd | Guid | - | Yes | İşlemin benzersiz tanımlayıcısı |
| öznitelik adı | dize | - | Yes | Özniteliğin adı (büyük/küçük harf düzeyinde olmalıdır) |
| influenceFormula | InfluenceFormula | - | Yes | Üzerindeki etkiyi analiz etmek için ölçüm |
| sortOrder | Sıralama | Azalan | No | Etki değerleri için sıralama yönü |
| filterOptions | McpFilterOptions | sıfır | No | Uygulanacak isteğe bağlı filtreler |
İade:
- Her öznitelik değeri için etki değerleriyle McpAnalyticsListResult
- Daha yüksek değerler seçili ölçüm üzerinde daha güçlü etki gösterir
Kullanılabilir etki formülleri:
- ActiveTimeInfluence
- CaseUtilizationInfluence
- DurationInfluence
- EventCountInfluence
- LoopCountInfluence
- ReworkCountInfluence
- SelfloopCountInfluence
- WaitingTimeInfluence
Örnek kullanım:
User: "Does department influence process duration?"
Tool: get_correlation with processId, attributeName="Department", influenceFormula=DurationInfluence
Response: Sales: 0.75 (high), Finance: 0.42 (moderate), Warehouse: 0.18 (low)
Ne zaman kullanılır:
- Kök neden analizi
- Düşük performansa katkıda bulunan segmentleri belirleme
- İyileştirme çalışmalarını etkilerine göre önceliklendirme
- Ölçümlerdeki öznitelik etkilerini anlama
Önemli
get_correlation aracı yalnızca büyük/küçük harf düzeyi özniteliklerle çalışır. Olay düzeyi özniteliklerinin (Etkinlik gibi) kullanılması şu hataya neden olur: "Büyük/küçük harf düzeyi olmayan öznitelikler için bağıntı hesaplanamaz."
İstek ve yanıt yapıları
Aşağıdaki bölümlerde ortak istek parametreleri ve yanıt yapıları açıklanmaktadır.
Ortak istek parametreleri
Çoğu araç, sayfalandırma ve sıralama için bu standart parametreleri kabul eder.
| Parametre | Type | Varsayılan | Açıklama |
|---|---|---|---|
| Processıd | Guid | Gerekli | İşlemin benzersiz tanımlayıcısı (get_processes dışında) |
| itemsPerPage | int | 50 | Sayfa başına döndürülecek öğe sayısı |
| itemsToSkip | int | 0 | Atlanması gereken öğe sayısı (sayfalandırma için uzaklık) |
| metricToSortBy | dize | Araclara göre değişir | Sonuçları sıralamak için ölçüm adı |
| sortOrder | Sıralama | Azalan | Sıralama yönü (Artan veya Azalan) |
| filterOptions | McpFilterOptions | sıfır | Karmaşık filtreleme seçenekleri (bkz. Filtre Seçenekleri bölümü) |
Yanıt yapısı
Aşağıdaki bölümlerde yanıt yapıları için ayrıntılar sağlanır.
McpAnalyticsListResult
Liste tabanlı sorgular için standart yanıt biçimi.
{
"items": [
{
"metric1": "value1",
"metric2": 123.45,
"metric3": 456
},
{
"metric1": "value2",
"metric2": 98.76,
"metric3": 321
}
],
"offset": 0,
"limit": 50,
"totalCount": 500
}
Alanları:
-
items: Ölçüm anahtar-değer çiftlerini içeren sözlük dizisi
- Anahtarlar ölçüm adlarıdır (örneğin, "Süre", "Değer", "CaseCount")
- Değerler ölçüm değerleridir (dizeler, sayılar, tarihler)
- uzaklık: Geçerli sayfalandırma uzaklığı (eşittir itemsToSkip parametresi)
- limit: Sayfa boyutu (eşittir itemsPerPage parametresi)
- totalCount: Kullanılabilir toplam kayıt sayısı (sayfalandırma için kullanın)
Sayfalama örneği:
Request 1: itemsPerPage=50, itemsToSkip=0 → Returns items 1-50
Request 2: itemsPerPage=50, itemsToSkip=50 → Returns items 51-100
Request 3: itemsPerPage=50, itemsToSkip=100 → Returns items 101-150
Continue while offset + limit < totalCount
Uzun süreli işlemler
Karmaşık sorgular ek işlem süresi gerektirebilir. MCP sunucusu, sunucu tarafı yoklama, akış ilerleme durumu güncelleştirmeleri ile bu işlemleri zaman uyumsuz olarak işler.
İşlem akışı:
- İlk istek: İstemci MCP sunucusuna araç çağırma isteği gönderir
- Sunucu tarafı işleme: API, yoklamayı dahili olarak işler; sunucu analiz altyapısının sorguyu tamamlamasını bekler. İstemci tarafı yoklama gerekmez.
- İlerleme bildirimleri: Sunucu akışları, Server-Sent Olayları (SSE) aracılığıyla istemciye otomatik olarak ilerleme güncelleştirmesi gönderir. İlerleme bildirimleri işleme sırasında yaklaşık 5 saniyede bir gönderilir.
- Tamamlama: Sunucu Başarılı, FailedClientError veya FailedAnalyticsError durumuyla son sonucu döndürür
Son durumlar:
- Başarılı: Yanıt olarak kullanılabilir sonuçlar
- FailedClientError: Doğrulama hatası (geçersiz parametreler, filtreler)
- FailedAnalyticsError: Analiz altyapısı işleme hatası
Uzun süre çalışan işlemler için tipik senaryolar:
- Büyük veri kümesi sorguları (>10.000 olay)
- Birden çok koşula sahip karmaşık filtreler
- Birçok öznitelik değeri arasında bağıntı analizi
- Derin işlem karmaşıklığı ile değişken analizi
Uyarı
Sunucu tüm yoklamayı dahili olarak işler. İstemciler yoklama mantığını uygulamaya gerek kalmadan SSE aktarımı aracılığıyla ilerleme bildirimi alır. Bu yaklaşım, MCP'nin Akışla Aktarılabilir HTTP aktarımıyla uyumludur.
Filtre seçenekleri başvurusu
McpFilterOptions yapısı, beş filtre türü aracılığıyla veri alma üzerinde hassas denetim sağlar. Filtreler birleştirilerek karmaşık sorgular oluşturulabilir.
Filtre bileşimi mantığı
- McpFilterOptions içindeki tüm filtre türleri AND mantığıyla birleştirilir
- Aynı türdeki birden çok filtre OR mantığıyla birleştirilir
- Her filtrenin bir
isInclusiveözelliği vardır (varsayılan: true)-
isInclusive=true: Eşleşen kayıtları dahil et -
isInclusive=false: Eşleşen kayıtları dışla
-
Örnek:
AttributeValueFilters: [Department=Sales OR Department=Marketing]
AND
MetricConditionFilters: [Duration > 5 days]
= Cases from Sales OR Marketing with duration > 5 days
AttributeValueFilter
Belirli öznitelik değerlerine (departman, kullanıcı, etkinlik adı gibi) göre filtreler.
Özellikler:
| Özellik | Type | Gerekli | Açıklama |
|---|---|---|---|
| öznitelik adı | dize | Yes | Filtre uygulamak için özniteliğin adı |
| öznitelikDeğerler | string[] | Yes | Dahil etmek veya dışlamak için değerlerin listesi |
| isInclusive | bool | Hayır (varsayılan: true) | Eşleşen değerleri ekleme (true) veya dışlama (yanlış) |
Örnek JSON:
{
"attributeValueFilters": [
{
"attributeName": "Department",
"attributeValues": ["Sales", "Marketing"],
"isInclusive": true
}
]
}
Kullanım örnekleri:
- Belirli departmanlara, kullanıcılara veya müşteri segmentlerine göre filtreleme
- Test verilerini veya belirli etkinlikleri hariç tutma
- İşlemin alt kümelerini analiz etme
Doğrulama kuralları:
- attributeName boş olmamalıdır
- attributeValues dizisi en az bir değer içermelidir
- İşlem şemasında öznitelik adı bulunmalıdır (doğrulamak için get_process_details çağır)
TimeframeFilter
Servis talebi veya olay zaman damgaları için tarih/saat aralıklarına göre filtreler.
Özellikler:
| Özellik | Type | Gerekli | Açıklama |
|---|---|---|---|
| startDate | Tarih/Saat | Yes | Zaman çerçevesinin başlangıcı (dahil) |
| Bitiş Tarihi | Tarih/Saat | Yes | Zaman çerçevesi sonu (dahil) |
| isInclusive | bool | Hayır (varsayılan: true) | Zaman çerçevelerini dahil et (true) veya hariç tutma (yanlış) |
Örnek JSON:
{
"timeframeFilters": [
{
"startDate": "2025-01-01T00:00:00Z",
"endDate": "2025-12-31T23:59:59Z",
"isInclusive": true
}
]
}
Kullanım örnekleri:
- Belirli dönemleri (üç aylık dönemler, aylar, yıllar) analiz etme
- Geçmiş verileri dışlama
- Zaman aralığı performansını karşılaştırma
Doğrulama kuralları:
- startDate endDate öncesinde olmalıdır
- Tarih biçimi geçerli ISO 8601 olmalıdır
Önemli
startDate endDate sonrasındaysa doğrulama hatası oluşur. Göndermeden önce her zaman tarih aralığını doğrulayın.
MetricConditionFilter
Ölçüm değeri eşiklerine göre filtreler (örneğin, süre > 5 gün, olay sayısı < 10).
Özellikler:
| Özellik | Type | Gerekli | Açıklama |
|---|---|---|---|
| metric | McpFilterMetricType | Yes | Filtre uygulamak için ölçüm |
| customMetricId | Guid | Koşullu | Ölçüm CustomMetric ise gereklidir |
| comparisonOperator | ValueFilterExpressionOperator | Yes | Karşılaştırma işleci |
| dataType | ValueFilterDataType | Yes | Değerin veri türü |
| değer | Nesne | Yes | Karşılaştıracak değer |
| isInclusive | bool | Hayır (varsayılan: true) | Eşleşmeleri dahil et (true) veya hariç tutma (yanlış) |
Kullanılabilir ölçümler (McpFilterMetricType):
| Ölçüm Türü | Açıklama |
|---|---|
| EventDuration | Tek tek olayların süresi |
| CaseDuration | Baştan sona toplam servis talebi süresi |
| CaseActiveTime | Etkin olarak işlenmek için harcanan süre (bekleme süresi hariç) |
| CaseWaitingTime | Etkinlikler arasında beklerken harcanan süre |
| CaseUtilization | Servis talebi kullanım yüzdesi |
| CaseCumulativeUtilization | Servis talebi yaşam döngüsü genelinde toplu kullanım |
| CaseEventCount | Servis talebi başına olay sayısı |
| CaseSelfLoopCount | Kendi kendine döngü sayısı (aynı etkinlik hemen yinelenir) |
| CaseLoopCount | Döngü sayısı (yineleyen etkinlik dizileri) |
| CaseReworkCount | Yeniden çalışma örneklerinin sayısı |
| CustomMetric | Kullanıcı tanımlı ölçüm (customMetricId gerektirir) |
Karşılaştırma işleçleri:
- EqualTo
- NotEqualTo
- GreaterThan
- GreaterThanOrEqualTo
- LessThan
- LessThanOrEqualTo
Veri türleri:
- Dize
- Sayı
- Süre (süre)
- Tarih/Saat
Örnek JSON:
{
"metricConditionFilters": [
{
"metric": "CaseDuration",
"comparisonOperator": "GreaterThan",
"dataType": "Time",
"value": "5.00:00:00",
"isInclusive": true
}
]
}
Kullanım örnekleri:
- SLA eşiklerini aşan servis taleplerini belirleme
- Yüksek değerli veya düşük değerli durumlara göre filtreleme
- Belirli özelliklere sahip servis taleplerini analiz etme (örneğin, yüksek yeniden çalışma sayısı)
Doğrulama kuralları:
- Ölçüm CustomMetric olduğunda CustomMetricId gerekir
- Değer belirtilen dataType ile eşleşmelidir
- Ölçüm sorgu bağlamı için geçerli olmalıdır
SubProcessFilter
Başvuru etkinliklerinin ardından göreli etkinliklerin geldiği alt işlem desenlerine göre filtreler.
Özellikler:
| Özellik | Type | Gerekli | Açıklama |
|---|---|---|---|
| öznitelik adı | dize | Yes | Öznitelik adı (genellikle "Etkinlik") |
| referenceAttributeValues | string[] | Yes | Alt işlemde etkinlikleri başlatma |
| relativeAttributeValues | string[] | Yes | Alt işlemdeki etkinlikleri sonlandırma |
| isInclusive | bool | Hayır (varsayılan: true) | Alt işleme dahil et (true) veya dışla (yanlış) |
Örnek JSON:
{
"subProcessFilters": [
{
"attributeName": "Activity",
"referenceAttributeValues": ["Create Order"],
"relativeAttributeValues": ["Ship Goods"],
"isInclusive": true
}
]
}
Kullanım örnekleri:
- Belirli alt işlem akışlarını analiz etme
- Belirli yolları izleyen servis taleplerini belirleme
- Belirli alt işlem desenlerini hariç tutma
Doğrulama kuralları:
- attributeName boş olmamalıdır
- referenceAttributeValues ve relativeAttributeValues değerlerinin her biri en az bir değer içermelidir
AttributeSequenceFilter
Belirli ilişki türlerine sahip etkinlik dizilerine göre filtreler (doğrudan takip edilen, sonunda takip edilen vb.).
Özellikler:
| Özellik | Type | Gerekli | Açıklama |
|---|---|---|---|
| öznitelik adı | dize | Yes | Öznitelik adı (genellikle "Etkinlik") |
| relationType | SequenceFilterRelationType | Yes | Etkinlikler arasındaki ilişki türü |
| referenceAttributeValues | string[] | Yes | Sırayla ilk etkinlikler |
| relativeAttributeValues | string[] | Yes | Sıralı olarak ikinci etkinlikler |
| isInclusive | bool | Hayır (varsayılan: true) | Sırayı dahil et (true) veya hariç tutma (yanlış) |
İlişki türleri:
- DirectFollowed: Başvuru etkinliğinin ardından doğrudan göreli etkinlik gelir (aralarında etkinlik yoktur)
- SonundaKlasılan: Başvuru etkinliği sonunda göreli etkinlik takip eder (diğer etkinlikler arasında olabilir)
Örnek JSON:
{
"attributeSequenceFilters": [
{
"attributeName": "Activity",
"relationType": "DirectlyFollowed",
"referenceAttributeValues": ["Approve Order"],
"relativeAttributeValues": ["Credit Check"],
"isInclusive": true
}
]
}
Kullanım örnekleri:
- Belirli etkinlik dizilerini zorunlu kılma
- Uyumluluk ihlallerini tanımlama
- Belirli bir sıralamaya sahip servis taleplerini analiz etme
Doğrulama kuralları:
- attributeName boş olmamalıdır
- referenceAttributeValues ve relativeAttributeValues değerlerinin her biri en az bir değer içermelidir
Hata işleme
Aşağıdaki bölümlerde sorunları çözmenize yardımcı olabilecek yaygın hata kodları, doğrulama hataları ve yanıt biçimi açıklanmaktadır.
Hata kodları
MCP sunucusu üç birincil hata kodu kullanır:
| Hata Kodu | Açıklama | Olası Nedenler |
|---|---|---|
| InvalidParams | Geçersiz parametre değerleri | Boş GUID, null gerekli alan, geçersiz zaman çerçevesi, boş diziler |
| InvalidRequest | İstek yapısı veya iş kuralı ihlalleri | Varolmayan öznitelik adları, filtre söz dizimi hataları, desteklenmeyen işlemler |
| Dahili Hata | Sunucu tarafı işleme hataları | Analiz altyapısı hataları, veri tutarsızlıkları, hizmetin kullanılamaması |
Yaygın doğrulama hataları
Boş processId
Hata: "processId (Guid) işlemin kimliği olmalıdır." Neden: processId parametresi boş veya geçersiz Çözüm: Geçerli işlem kimliklerini almak için get_processes kullanın
Geçersiz zaman çerçevesi
Hata: "StartDate, EndDate öncesinde olmalıdır." Neden: TimeframeFilter endDate Çözümlemesi'nin ardından startDate'a sahip: İstek göndermeden önce tarih aralığını doğrulama
Öznitelik adı eksik
Hata: "Öznitelik adı sağlanmalıdır." Neden: filtre Çözümlemesinde attributeName null veya boş: İşlem şemasından geçerli öznitelik adı sağlayın
Boş öznitelik değerleri
Hata: "Öznitelik değerleri en az bir değer içermelidir." Neden: AttributeValueFilter Çözümlemesinde attributeValues dizisi boş: Diziye en az bir değer ekleyin
Özel ölçüm kimliği eksik
Hata: "Ölçüm CustomMetric olduğunda CustomMetricId gereklidir." Neden: ölçüm CustomMetric ancak customMetricId sağlanmadı Çözüm: Özel ölçümün GUID değerini sağlayın
Bağıntıda büyük/küçük harf düzeyi olmayan öznitelik
Hata: "Büyük/küçük harf düzeyi olmayan öznitelikler için bağıntı hesaplanamaz." Neden: Olay düzeyi özniteliğiyle get_correlation deneniyor (örneğin, "Etkinlik") Çözüm: Yalnızca büyük/küçük harf düzeyi öznitelikleri kullanın (örneğin, "Departman", "Müşteri"); büyük/küçük harf düzeyindeki öznitelikleri tanımlamak için get_process_details çağırma
Hata yanıtı biçimi
{
"error": {
"code": "InvalidParams",
"message": "Attribute name must be provided."
}
}
Önerilen yöntemler
Aşağıdaki en iyi yöntemler İşlem Madenciliği MCP sunucusunu etkili bir şekilde kullanmanıza yardımcı olabilir.
Her zaman önce işlem ayrıntılarını alın
Sorguları oluşturmadan önce kullanılabilir öznitelikleri, ölçümleri ve iş kurallarını bulmak için get_process_details kullanın.
Neden: Öznitelik adlarının işlem şemasıyla eşleşmesini sağlar, doğrulama hatalarını önler, olay düzeyi öznitelikleri ile olay düzeyi özniteliklerini tanımlar.
Step 1: get_processes → Obtain processId
Step 2: get_process_details with processId → Discover attributes
Step 3: Use discovered attributes in filters and queries
Büyük veri kümeleri için sayfalandırma uygulama
Tüm liste işlemleri için itemsPerPage ve itemsToSkip kullanın. Daha fazla sayfa olup olmadığını belirlemek için totalCount'ı izleyin.
Önerilen sayfa boyutları:
- Varsayılan: Sayfa başına 50 öğe
- Büyük veri kümeleri: Sayfa başına 20 öğe (daha hızlı yanıt süreleri)
- Küçük veri kümeleri: Sayfa başına 100 öğe (daha az gidiş dönüş)
let allItems = [];
let offset = 0;
const pageSize = 50;
do {
const response = await getTool(processId, pageSize, offset);
allItems.push(...response.items);
offset += pageSize;
} while (offset < response.totalCount);
Veri hacmini azaltmak için filtrelemeyi kullanma
İşleme süresini ve yanıt yükü boyutunu azaltmak için sorgu zincirinizin başlarında AttributeValueFilter ve TimeframeFilter uygulayın.
Filtre önceliği:
- TimeframeFilter (veri kümesini hızla azaltır)
- AttributeValueFilter (belirli segmentlere göre daraltılıyor)
- MetricConditionFilter (sonuçları daha da iyileştirin)
Uzun süre çalışan işlemleri işleme
Uzun süre çalışan işlemler sunucu tarafından otomatik olarak işlenir. API, şirket içinde sunucu tarafı yoklama kullanır ve Server-Sent Olayları (SSE) aracılığıyla istemciye ilerleme güncelleştirmelerini akışla aktarır. İstemci tarafı yoklama uygulaması gerekmez.
Bekleyebileceğiniz şeyler:
- Sunucu, karmaşık sorguları sizin yerinize zaman uyumsuz olarak işler
- İlerleme bildirimleri SSE aktarımı aracılığıyla otomatik olarak teslim edilir
- İşlem tamamlandığında nihai sonuç döndürülür
- Alındığında son sonuçları kullanıcıya görüntüleme
Önbellek işlemi meta verileri
İşlem ayrıntıları (öznitelikler, ölçümler, iş kuralları) seyrek değişir. API çağrılarını azaltmak için önbellek get_process_details yanıtı.
Önbellek geçersizleştirme tetikleyicileri:
- İşlem yeniden işleme
- Yapılandırma değişiklikleri
- Kullanıcı tarafından başlatılan yenileme
İstemci tarafında filtreleri doğrulama
Gidiş dönüş hatalarını azaltmak için istek göndermeden önce tarih aralıklarını, öznitelik adlarını ve gerekli alanları denetleyin.
İstemci tarafı doğrulama denetim listesi:
- [ ] ProcessId boş olmayan GUID
- [ ] TimeframeFilter: startDate < endDate
- [ ] AttributeValueFilter: attributeName boş değil, attributeValues en az bir öğe içeriyor
- [ ] MetricConditionFilter: ölçüm CustomMetric ise customMetricId sağlandı
- [ ] Öznitelik adları işlem şemasıyla eşleş
Bağıntıyı stratejik olarak kullanma
Bağıntı analizi hesaplama açısından yoğundur. Bağıntıyı çalıştırmadan önce veri kümesini azaltmak için önce filtreleri uygulayın.
En iyi yöntemler:
- Özniteliğin büyük/küçük harf düzeyinde olduğunu doğrulama (çağrı get_process_details)
- Önce TimeframeFilter ve AttributeValueFilter uygulama
- Araştırma için değil hipotez testi için kullanın
- Belirli kesimler için önbellek sonuçları
İlgili bilgiler
- İşlem Madenciliği bağlayıcısı başvurusu: Bağlayıcı ayrıntıları, kimlik doğrulaması ve azaltma sınırları
- İşlem Madenciliği ile Copilot Studio aracısı oluşturma: Adım adım uygulama kılavuzu
- Özel aracılara araç ekleme: Copilot Studio'da bağlayıcı aracını ekleme
- MCP sunucu bağlayıcıları kataloğu: Kullanılabilir MCP bağlayıcılarının tam listesi
- İşlem Madenciliği'ne genel bakış: İşlem Madenciliği özelliklerine genel bakış
- Model Bağlam Protokolü belirtimi: MCP standart ayrıntıları