MCP araçları — genel bakış
Erişim hakları
MCP araçları üç scope düzeyine atanmıştır:
| Scope | Anlamı |
|---|---|
read | Yalnızca okuma erişimi; oluşturamaz, düzenleyemez, silemez |
write | Kaynakları, kanalları ve Inbox’ı okur ve yazar; ekip ayarlarına erişimi yoktur |
admin | Ekip ayarları dahil tam MCP erişimi |
OAuth bağlantılarında hangi araçlara erişilebileceğini yetkilendirme sırasında seçilen scope belirler. API token’larında en yüksek erişim düzeyini token’ın rolü belirler.
Workspace seçimi
MCP sunucusu https://picasi.app/mcp adresinde durur, adreste Workspace yoktur.
| Oturum açma | Workspace |
|---|---|
| API token’ı | sabit, token’ın Workspace’i; parametre gerekmez |
| OAuth | hesabın tüm Workspace’leri; her çağrı workspace_id ister |
OAuth’ta olabilecek değerleri list_workspaces döndürür. workspace_id olmadan çağrı geri çevrilir.
Okuma araçları
Tüm okuma araçları en az read scope’u ister.
search_updates
Updates’i anahtar sözcüklere, kaynaklara, tag’lere ve döneme göre arar.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
query | String | Tam metin arama terimi (isteğe bağlı) |
source_id | String | Belli bir kaynaktan Updates (isteğe bağlı) |
tags | Array | Süzmek için konu tag’leri (isteğe bağlı) |
folder | String | inbox, saved ya da dropped (isteğe bağlı) |
source_ownership | String | all (varsayılan), own (yalnızca kendi kaynakları) ya da competitor (yalnızca dış kaynaklar) |
limit | Integer | Sonuç sayısı (varsayılan: 20, en çok: 100) |
source_ownership filtresi kaynaktaki is_own alanını kullanır. Inbox arayüzündeki sahiplik filtresinin karşılığıdır ve yapay zekâ asistanının hedefli biçimde yalnızca kendi varlığını ya da yalnızca rakipleri görmesini sağlar.
get_update_details
Tek bir Update’in tüm içeriğini döndürür.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
update_id | String | Update kimliği |
list_sources
Workspace’teki tüm kaynakları listeler.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
is_own | Boolean | true = yalnızca kendi kaynakları, false = yalnızca rakipler, boş bırak = tümü |
Döndürülen her kaynak is_own alanını içerir, böylece yapay zekâ asistanları ikinci bir istek yapmak zorunda kalmadan kendi varlıklarıyla rakiplerinkini ayırabilir.
Her kanal, birbirinden ayrı tutulması gereken üç alanla gelir:
| Alan | Anlamı |
|---|---|
monitoring_active | Kanalın anahtarı: açık ya da kapalı. Sağlık durumu değildir. |
state | Almanın durumu: healthy, degraded, broken, quarantined ya da paused. E-posta kanalları çekilmez, alır; onlar receiving, stale ya da waiting bildirir. null, henüz bir almanın bağlı olmadığı anlamına gelir. |
last_checked | Son çekme girişimi, e-posta kanallarında en son alınan ileti. |
Tek bir kanalın eksiksiz tanısı için araç get_channel_status’tur.
list_reports
Kullanılabilir Report’ları listeler.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
type | String | summary, feedback, list, linkedin_post, conversation_starters (isteğe bağlı) |
limit | Integer | Sayı (varsayılan: 10) |
get_report
Bir Report’un tüm içeriğini döndürür.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
report_id | String | Report kimliği |
get_team_context
Workspace’in yapay zekâ bağlamını döndürür: ekip üstverisi (ad, dil, saat dilimi), web sitesi adresi, bağlam belgeleri ve sahiplik yapılandırması.
Gerekli scope: read
Zorunlu parametre yoktur.
Yanıt, context bloğunda şunları içerir:
website_url– saklanan kurum adresiis_own_sources_configured– en az bir kaynak kendinin olarak işaretlenir işaretlenmeztrueown_sources_count– kendi kaynaklarının sayısı
Yapay zekâ asistanları Voice Share ya da Momentum karşılaştırmalarını yalnızca is_own_sources_configured true ise sunmalıdır — yoksa karşılaştırma temeli yoktur.
list_tags
Workspace’teki tüm tag’leri listeler.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
type | String | sources, channels, updates (isteğe bağlı) |
get_update_statistics
Updates’i listelemek yerine sayar. search_updates ile aynı filtreleri alır ve 100 sonuçluk üst sınırı yoktur.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
group_by | String | source (varsayılan), source_tag, update_tag, day, week, month, quarter |
compare_previous_period | Boolean | Aynı uzunluktaki önceki dönemi de sayar ve farkı bildirir |
query | String | Tam metin arama terimi (isteğe bağlı) |
source_id | String | Tek bir kaynakla sınırlar (isteğe bağlı) |
source_tags | Array | Kaynak tag’leri (isteğe bağlı) |
update_tags | Array | Konu tag’leri (isteğe bağlı) |
source_ownership | String | all (varsayılan), own ya da competitor |
platform | String | Tek bir platformla sınırlar, örneğin linkedin (isteğe bağlı) |
folder | Array | inbox, saved; varsayılan ikisidir |
days | Integer | Gün olarak zaman aralığı, 1 ila 365 (varsayılan: 30) |
date_from, date_to | String | days yerine tarih olarak zaman aralığı |
Platforma göre gruplama yoktur. Atılan ve taşan Updates sayılmaz.
get_channel_status
Bir kanalın durumunu döndürür: son çekme, son başarı, son hata, art arda başarısızlık sayısı, bir sonraki planlanmış girişim ve bu kanaldan gelen Update sayısı.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
channel_id | String | Kanal kimliği, include_channels=true ile list_sources’tan |
discover_channels
Bir web sitesini inceler ve izlenebilecek kanalları bildirir. Hiçbir şey oluşturmaz.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
url | String | İncelenecek web sitesi (source_id ayarlıysa isteğe bağlı) |
source_id | String | Bu kaynağın web sitesini kullanır ve onda bulunan kanalları imler |
list_workspaces
Oturum açmış hesabın Workspace’lerini workspace_id, ad ve rolle listeler.
Gerekli scope: yok; araç her bağlantıya açıktır
Parametre yoktur.
Report araçları
create_report
Bir filtreye uyan Updates’ten bir Report oluşturur. Filtreler search_updates ile aynıdır.
Üretim arka planda çalışır: çağrı hemen bir request_id döndürür. get_report_status nerede olduğunu bildirir, get_report bitmiş Report’u okur.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
type | String | Zorunlu. summary, feedback, list ya da conversation_starters |
title | String | Report’un adı (isteğe bağlı) |
instructions | String | Yapay zekâ için odak (isteğe bağlı) |
language | String | Dil kodu, örneğin de; varsayılan Workspace dilidir |
query | String | Tam metin arama terimi (isteğe bağlı) |
source_ids | Array | Bu kaynaklarla sınırlar (isteğe bağlı) |
source_tags | Array | Kaynak tag’leri (isteğe bağlı) |
source_tags_mode | String | AND ya da OR |
update_tags | Array | Konu tag’leri (isteğe bağlı) |
update_tags_mode | String | AND ya da OR |
source_ownership | String | all, own ya da competitor |
platform | String | Tek bir platformla sınırlar (isteğe bağlı) |
folder | Array | Veri temelinin klasörleri; varsayılan inbox ve saved |
days | Integer | Gün olarak zaman aralığı, 1 ila 365 (varsayılan: 30) |
date_from, date_to | String | days yerine tarih olarak zaman aralığı |
get_report_status
create_report ile ısmarlanan bir Report’un nerede olduğunu döndürür.
Gerekli scope: read
| Parametre | Tür | Açıklama |
|---|---|---|
request_id | String | create_report’tan gelen request_id |
| Durum | Anlamı |
|---|---|
queued | kuyrukta bekliyor |
running | üretiliyor |
ready | bitti; get_report ve report_id ile oku |
empty | bitti, ama hiçbir Update filtrelere uymadı |
failed | yarıda kesildi; nedeni yanıttadır |
Yazma araçları
Tüm yazma araçları en az write scope’u ister.
create_source
Yeni bir kaynak oluşturur.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
url | String | Kaynağın web sitesi adresi |
name | String | İç ad |
tags | Array | Tag kimlikleri (isteğe bağlı) |
update_source
Var olan bir kaynağın adını, adresini ya da tag’lerini değiştirir.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
source_id | String | Kaynak kimliği |
name | String | Yeni ad (isteğe bağlı) |
url | String | Yeni adres (isteğe bağlı) |
delete_source
Bir kaynağı, tüm kanalları ve Updates’i ile birlikte siler.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
source_id | String | Kaynak kimliği |
create_channel
Elle bir kanal oluşturur.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
source_id | String | Üst kaynağın kimliği |
url | String | Kanal adresi |
name | String | Kanal adı (isteğe bağlı) |
update_channel
Bir kanalın adını ya da açıklamasını değiştirir.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
channel_id | String | Kanal kimliği |
name | String | Yeni ad (isteğe bağlı) |
delete_channel
Bir kanalı siler.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
channel_id | String | Kanal kimliği |
toggle_channel
Bir kanalı açar ya da kapatır.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
channel_id | String | Kanal kimliği |
active | Boolean | true = etkin, false = etkisiz |
create_tag
Yeni bir tag oluşturur.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
name | String | Tag adı |
type | String | sources, channels ya da updates |
description | String | Yapay zekâ ile tag’leme için açıklama (isteğe bağlı) |
update_tag
Bir tag’in adını ya da açıklamasını değiştirir.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
tag_id | String | Tag kimliği |
name | String | Yeni ad (isteğe bağlı) |
description | String | Yeni yapay zekâ açıklaması (isteğe bağlı) |
update_update_state
Updates’i Workspace klasörleri arasında taşır.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
update_ids | Array | Update kimlikleri, çağrı başına en çok 100 |
folder | String | inbox, saved ya da dropped |
Durum Workspace başına geçerlidir ve Update’in kendisini değiştirmez. Yanıt her kimliği ayrı ayrı bildirir.
tag_update
Var olan konu tag’lerini Updates’e atar.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
update_ids | Array | Update kimlikleri, çağrı başına en çok 100 |
tags | Array | Slug, kimlik ya da ad olarak tag’ler |
mode | String | add (varsayılan) var olan tag’leri korur, replace tam olarak bunları koyar |
Yalnızca applies_to = updates olan tag’lere izin verilir; bir kaynak tag’i geri çevrilir. Eksik tag’leri önce create_tag ile oluştur.
untag_update
Konu tag’lerini Updates’ten kaldırır.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
update_ids | Array | Update kimlikleri, çağrı başına en çok 100 |
tags | Array | Kaldırılacak tag’ler, slug, kimlik ya da ad olarak |
Yalnızca bu Workspace’in ataması kaldırılır. Tag’in kendisi kalır.
refresh_source_channels
Var olan bir kaynak için kanal tanımayı yeniden çalıştırır.
Gerekli scope: write
| Parametre | Tür | Açıklama |
|---|---|---|
source_id | String | Kaynak kimliği |
create_detected | Boolean | false (varsayılan) yalnızca bildirir, true eksik kanalları oluşturur |
Var olan kanallar iki kez oluşturulmaz; kapatılmış bir kanal var sayılır. Yeni kanallar çekmeye kendiliğinden başlar.