Ana içeriğe geç

MCP Erişimi (AI ajanları)

Son zamanlarda neler değişti

MCP artık iPhone'da (web uygulamasına ek olarak) tamamen mevcut. iPhone ekranı web ekranını yansıtır ve tüm desteklenen AI istemcileri için aynı kurulum parçacıklarını içerir.

Pro plan ve üstü

MCP Erişimi Pro veya Ultra plan gerektirir. Her iki plan da tam okuma + yazma erişimi alır (27 araç) ve istersen salt okunur moduna geçebilir.

MCP (Model Context Protocol), AI kodlama asistanlarını ve otomasyon araçlarını doğrudan TellDone verilerine bağlamana izin verir. Bağlandıktan sonra, AI ajanın notlarını, görevlerini, etkinliklerini, raporlarını, etiketlerini ve değişiklik geçmişini okuyabilir - ve öğeleri oluşturabilir, güncelleyebilir, silebilir ve geri getirebilir. Toplam 27 araç vardır: 10'u veri okumak, 17'si yazmak için.

Hem iPhone uygulamasında (Ayarlar → Entegrasyonlar → AI Ajanları) hem de web uygulamasında (Ayarlar → AI Ajanları) mevcut.

Bağlanmanın iki yolu

Bir AI istemcisinin kimliğini doğrulamanın iki yolu var ve ikisi de tamamen destekleniyor:

  1. OAuth 2.1 (önerilir) - standart "TellDone ile giriş yap" onay akışı. Claude Desktop'ın konektör arayüzü ve Claude.ai bunu kullanır. Token kopyalamak yok - TellDone hesabınla giriş yaparsın ve istemcinin istediği izinleri onaylarsın.
  2. Bearer token - kişisel erişim token'ını Ayarlar'dan kopyala ve istemcinin yapılandırmasına yapıştır. Betikler, CLI'lar ve yerleşik OAuth akışı olmayan istemciler için en basit yol.
İstemciÖnerilen
Claude Desktop / CoworkOAuth - MCP URL'siyle özel bir konektör ekle, sonra giriş yap
Claude Code (CLI)Her ikisi de - claude mcp add seni tarayıcında OAuth akışında yönlendirir veya token yöntemi için bir Bearer başlığı ekle
Betikler veya kendi kodunBearer token - otomatikleştirmesi en kolay
Yalnızca listelenmiş konektör dizininden seçim yapmayı destekleyen bir istemciŞimdilik bearer token'ı veya mcp-remote köprüsünü kullan - TellDone henüz hiçbir konektör dizininde yok

Plan gereksinimleri

PlanMCP
FreeKilitli
BasicKilitli
ProRead + Write (27 araç) - Read-only moduna geçebilir
UltraRead + Write (27 araç) - Read-only moduna geçebilir

Uygulama içi ekran

AI Ajanları ekranı planına ve MCP'nin açık olup olmamasına bağlı olarak üç duruma sahiptir.

Kilitli (Free ve Basic)

Free veya Basic planındaysan, ekran MCP'nin ne yaptığını açıklar ve bir Yükselt düğmesi gösterir. Üzerine dokunmak, Pro veya Ultra'ya geçebileceğin paywall'u açar.

Devre dışı (Pro ve Ultra, özellik kapalı)

Pro veya Ultra'daysan ama henüz MCP'yi açmadıysan, ekran planının neler yapabileceğine dair kısa bir özet (araç sayısı, erişim modu, kotalar) ve bir Etkinleştir düğmesi gösterir. Bağlantı token'ını oluşturmak ve entegrasyonu başlatmak için üzerine dokun.

Etkin

Etkinleştirildiğinde, ekran bir AI istemcisini bağlamak için ihtiyacın olan her şeyi gösterir:

  • Mod anahtarı - Ultra'da Read-only ve Read + Write arasında geçiş yapabilirsin. Pro'da mod Read + Write'a sabittir.
  • Token'ı göster veya gizle göz anahtarı ve kopyala düğmesiyle Erişim Token'ı satırı.
  • Claude Code, Cursor, Windsurf ve Diğer sekmeleriyle Kurulum seçicisi. Eşleşen kod parçacığı sekmelerin altında görünür - sadece kopyalayıp AI istemcine yapıştır.
  • Yeniden Oluştur düğmesi - token'ı hemen döndürür ve eskisini kullanan tüm aktif oturumları keser.
  • Devre Dışı Bırak düğmesi - MCP'yi kapatır ve token'ı siler. Daha sonra yeniden etkinleştirebilirsin, ancak yeni bir token verilir.
ipucu

Bağlantı token'ını gizli tut. Token'a sahip olan herkes TellDone verilerine erişebilir. Token'ın sızdığından şüphelendiğinde Yeniden Oluştur'u kullan.

Nasıl etkinleştirilir

MCP'yi her iki platformdan da yapılandırabilirsin:

  • iPhone: Ayarlar → Entegrasyonlar → AI Ajanları (MCP)
  • Web: app.telldone.app → Ayarlar → AI Ajanları

Adımlar:

  1. Etkinleştir'e dokun.
  2. Erişim modunu seç (yalnızca Ultra - Pro her zaman Read + Write'tır).
  3. Göz ve kopyala simgelerini kullanarak token'ını göster ve kopyala.
  4. Kurulum bölümünde aracını seç (Claude Code, Cursor, Windsurf veya Diğer).
  5. Parçacığı AI istemci yapılandırmana yapıştır.

OAuth ile bağlanma

OAuth, Claude Desktop, Claude.ai, Cowork ve Claude Code için önerilen yoldur - token'ı oradan oraya kopyalamak yerine TellDone hesabınla giriş yaparsın.

OAuth için MCP URL'si: https://api.telldone.app/mcp/user (sonunda /mcp yok - o farklı bir URL ve yalnızca aşağıdaki bearer token yolunda kullanılır)

Claude Desktop / Cowork

  1. İstemcide Add custom connector'ı seç.
  2. Sunucu URL'sini gir: https://api.telldone.app/mcp/user
  3. İstemci, tarayıcında TellDone'un onay sayfasını açar. Hangi uygulamanın erişim istediğini, tam olarak hangi izinleri istediğini ve bir giriş formunu görürsün.
  4. TellDone hesabının e-postası ve parolasıyla giriş yap, sonra Allow'a tıkla.
  5. İstemci erişim token'ını otomatik olarak alır ve bağlanır - kopyalanacak token yok.
not

Onay sayfasındaki giriş, TellDone hesabının e-postasını ve parolasını kullanır. Hesabında yalnızca Apple veya Google ile giriş varsa (parola ayarlanmamışsa), şimdilik aşağıdaki bearer token yöntemini kullan.

Claude Code

OAuth (tarayıcıda bir giriş sayfası açar):

claude mcp add --transport http telldone https://api.telldone.app/mcp/user

Claude Code OAuth akışını otomatik olarak keşfeder, ancak ilk çağrıda seni giriş yaptırmaz - Claude Code içinde /mcp çalıştır ve tarayıcı girişini açmak için Authenticate'i seç. Ondan sonra erişim token'ını senin için yeniler - bakım yapman gerekmez.

Bearer token (tarayıcı yok, başsız kurulumlar için iyi):

claude mcp add telldone --transport http \
https://api.telldone.app/mcp/user/mcp \
--header "Authorization: Bearer YOUR_TOKEN"

YOUR_TOKEN'ını uygulamadan al: Ayarlar → Entegrasyonlar → AI Ajanları → Token'ı kopyala (yukarıdaki Nasıl etkinleştirilir bölümüne bak).

Bearer token ile bağlanma

Yerleşik OAuth desteği olmayan istemciler için - Cursor, Windsurf ve diğerleri - kişisel erişim token'ını doğrudan istemcinin yapılandırmasına yapıştır. Aşağıdaki tüm örneklerde YOUR_TOKEN'ı ayarlarındaki token'la değiştir.

Cursor

.cursor/mcp.json'a ekle:

{
"mcpServers": {
"telldone": {
"url": "https://api.telldone.app/mcp/user/mcp",
"headers": { "Authorization": "Bearer YOUR_TOKEN" }
}
}
}

Windsurf

.codeium/windsurf/mcp_config.json'a ekle:

{
"mcpServers": {
"telldone": {
"serverUrl": "https://api.telldone.app/mcp/user/mcp",
"headers": { "Authorization": "Bearer YOUR_TOKEN" }
}
}
}

Diğer

Uygulama içi seçicinin Diğer altında grupladığı istemciler için bu parçacıkları kullan.

Codex

codex.json'a ekle:

{
"mcpServers": {
"telldone": {
"type": "http",
"url": "https://api.telldone.app/mcp/user/mcp",
"headers": { "Authorization": "Bearer YOUR_TOKEN" }
}
}
}

OpenClaw

Settings > MCP Servers > Add:

  • Name: TellDone
  • URL: https://api.telldone.app/mcp/user/mcp
  • Auth: Bearer YOUR_TOKEN

Diğer MCP istemcileri

HTTP üzerinden MCP'yi destekleyen herhangi bir araç bağlanabilir. Bearer YOUR_TOKEN yetkilendirme başlığıyla https://api.telldone.app/mcp/user/mcp uç noktasını kullan.

Alternatif auth header

İstemcin veya proxy'n Authorization başlığını rezerv ederse (örneğin, bazı Smithery tarzı geçitler), token'ı X-MCP-Token: YOUR_TOKEN olarak gönder. Her iki başlık da çalışır; ikisi de varsa, Authorization kazanır.

Bağlantını test etme

Token'ının çalıştığını basit bir cURL komutuyla doğrulayabilirsin:

curl -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'

Başarılı bir yanıt mevcut tüm araçları listeler.

İzinler (kapsamlar)

OAuth bağlantıları kapsamlıdır - giriş sırasında istemcinin tam olarak neyi istediğini görür ve açıkça onaylarsın.

KapsamUygulamanın şunu yapmasına izin verir...
notes:readNotlarını okuma, arama, tam not ayrıntılarını açma
notes:writeNot oluşturma, düzenleme, silme (ve sesli not sürecini çalıştırma)
tasks:read / tasks:writeGörevleri okuma / oluşturma, düzenleme, tamamlama ve silme
events:read / events:writeEtkinlikleri okuma / oluşturma, düzenleme ve silme
reports:readGünlük, haftalık, aylık ve yıllık raporlarını okuma
tags:read / tags:writeEtiketlerini listeleme / etiket oluşturma ve yeniden adlandırma
profile:readProfil ve abonelik bilgilerini okuma
offline_accessSen uzaktayken bağlı kalma (her oturumda giriş yapmak zorunda kalmaman için bir yenileme token'ı verir)

Kapsamlar bir tavandır, garanti değil - yalnızca notes:read verilmiş bir bağlantı, ne istersen iste bir yazma aracını çağıramaz. Planın, kapsamların üzerinde ikinci bir kapıdır.

Bearer token bağlantıları tek tek kapsamlandırılmaz - yalnızca planının okuma/yazma moduna tabidirler.

Neler yapabilirsin

Okuma araçları (10) - Pro ve Ultra

AraçNe yapar
get_notesFiltrelerle notları listele (etiketler, tarih aralığı, metin arama)
get_noteAlt görevleri, etkinlikleri ve tam transkriptiyle tek bir notu görüntüle
get_notes_fullTek çağrıda gömülü görevler ve etkinliklerle birden fazla notu al
get_tasksDuruma göre filtrelenmiş görevleri listele (yapılacak, bitti, tümü), etiketler veya tarihler
get_eventsTakvim etkinliklerini listele, tarih aralığına göre filtrele
get_reportsGünlük, haftalık, aylık ve yıllık raporlarını oku (tam markdown)
get_tagsTüm etiketlerini kullanıma göre sıralı görüntüle
get_profileHesap bilgilerini ve kullanım istatistiklerini gör
searchNotlar, görevler ve etkinlikler arasında ara (notlar için metin + semantik arama)
get_change_logBir notun, görevin veya etkinliğin düzenleme geçmişini ve her düzenlemenin geri alınıp alınmadığını gör
ipucu

search aracı notlar için semantik aramayı destekler - sonuçları yalnızca anahtar kelimelerle değil, anlama göre bulur. Örneğin, "bütçe hakkında toplantılar" araması, "bütçe" kelimesini içermese bile finansal tartışmalar hakkında notlar bulur.

Yazma araçları (17) - Pro ve Ultra

AraçNe yapar
process_noteTam AI süreci - metin veya ses gönder, görevler, etkinlikler ve etiketlerle bir not al
create_noteDüz metin not ekle (AI analizi yok)
create_taskÖncelik, son tarih, hatırlatıcı ve etiketlerle görev ekle
create_eventTarih, saat, konum, hatırlatıcılar, katılımcılar ve tekrar ile takvim etkinliği ekle
update_noteNot başlığını, özetini, türünü, etiketlerini, önceliğini veya durumunu değiştir
update_taskGörev başlığını, açıklamasını, önceliğini, son tarihini, hatırlatıcısını, etiketlerini veya durumunu değiştir
complete_taskBir görevi bitti olarak işaretle
update_eventEtkinlik ayrıntılarını, saati, konumu, hatırlatıcıları, katılımcıları, tekrarı, etiketleri veya durumu değiştir
delete_noteBir notu ve tüm bağlı görevlerini ve etkinliklerini sil
delete_taskBir görevi sil
delete_eventBir etkinliği sil
undo_change_log_entryİzlenen tek bir düzenlemeyi geri al - ister AI ister kendin yapmış ol - alanın önceki değerini geri getirir
restore_entitySilinmiş veya arşivlenmiş bir notu, görevi veya etkinliği geri getir
create_tagYeni bir etiket oluştur veya otomatik önerilen bir etiketi kalıcı hale getir
set_tag_pinnedBir etiketi en üste sıralanması için sabitle veya sabitlemesini kaldır
delete_tagBir etiketi kaldır (restore_tag ile geri getirilebilir)
restore_tagSilinmiş bir etiketi geri getir

Tüm yazma ve silme işlemleri, gerçek zamanlı senkron üzerinden bağlı cihazlarında (telefon, web uygulaması) anında görünür.

Araç referansı

get_notes

İsteğe bağlı filtrelemeyle notları listele. Tarih filtreleri created_at'i değil, recorded_at'i (sesli notu kaydettiğin zamanı) kullanır.

ParametreTürVarsayılanAçıklama
limitint20Döndürülecek not sayısı (maks 50)
offsetint0Bu kadar notu atla (sayfalama için, maks 10000)
tagsstring-Etiketlere göre filtrele, virgülle ayrılmış (herhangi biriyle eşleşir)
searchstring-Başlık ve özette metin araması
date_fromstring-Başlangıç tarihi, YYYY-MM-DD (dahil)
date_tostring-Bitiş tarihi, YYYY-MM-DD (hariç)
standalone_onlyboolfalsetrue olduğunda, takip notlarını (bir üst not, görev veya etkinliğe bağlı notlar) gizler ve yalnızca bağımsız notları döndürür

Döndürür: id, title, summary, type, tags, priority, status, recorded_at, created_at ile not listesi.

get_note

Tam transkripti ve tüm bağlı görevleri ve etkinlikleriyle tek bir not al.

ParametreTürAçıklama
note_idstringNotun UUID'si

Döndürür: title, summary, transcript, type, tags, priority, status, metadata, created_at ve tasks[] ve events[] dizileriyle not.

Ayrıca transcript_speakers (birden fazla konuşmacılı toplantılar için konuşmacı etiketli transkript bölümleri - aksi halde null), speaker_count (kayıt konuşmacıya göre bölünmediyse null) ve parent_note_id/parent_task_id/parent_event_id (bu not başka bir öğenin takip düzenlemesiyse ayarlanır) döndürür. Her tasks[]/events[] girişi ayrıca reminders_at/recurrence_rule (görevler) veya reminder_minutes/attendees/recurrence_rule (etkinlikler) içerir.

get_notes_full

Tek çağrıda görev ve etkinlikleriyle birden fazla not al. get_notes ile aynı filtreler, ancak her not gömülü tasks[] ve events[] içerir.

ParametreTürVarsayılanAçıklama
limitint10Not sayısı (maks 20)
offsetint0Bu kadar notu atla
tagsstring-Etiketlere göre filtrele
date_fromstring-Başlangıç tarihi, YYYY-MM-DD
date_tostring-Bitiş tarihi, YYYY-MM-DD
standalone_onlyboolfalsetrue olduğunda, takip notlarını (bir üst not, görev veya etkinliğe bağlı notlar) gizler ve yalnızca bağımsız notları döndürür

get_tasks

Filtrelemeyle görevleri listele.

ParametreTürVarsayılanAçıklama
statusstring"todo"Filtre: todo, done veya all
limitint30Görev sayısı (maks 100)
offsetint0Bu kadar görevi atla
tagsstring-Etiketlere göre filtrele, virgülle ayrılmış
date_fromstring-Başlangıç tarihi, YYYY-MM-DD (son tarihe göre filtreler; son tarihi olmayan görevler hariç tutulur)
date_tostring-Bitiş tarihi, YYYY-MM-DD (son tarihe göre filtreler; son tarihi olmayan görevler hariç tutulur)

Döndürür: id, title, description, status, priority, tags, deadline, reminder_at, reminders_at, completed_at, completed_by, source, created_at ile görev listesi. reminder_at, geriye dönük uyumluluk için reminders_at'in ilk girişini yansıtır - bir görevin tüm hatırlatıcılarını görmek için reminders_at kullan.

get_events

Tarih aralığı filtrelemesiyle takvim etkinliklerini listele.

ParametreTürVarsayılanAçıklama
limitint30Etkinlik sayısı (maks 100)
offsetint0Bu kadar etkinliği atla
date_fromstring-Başlangıç tarihi, YYYY-MM-DD (etkinlik başlangıç saatine göre filtreler)
date_tostring-Bitiş tarihi, YYYY-MM-DD

Döndürür: id, title, description, status, start_at, end_at, location, is_all_day, tags, note_id, reminder_minutes, attendees, recurrence_rule, created_at ile etkinlik listesi.

get_reports

AI ile oluşturulmuş raporlarını tam markdown içeriğiyle al.

ParametreTürVarsayılanAçıklama
report_typestring"daily"Tür: daily, weekly, monthly veya yearly
limitint5Rapor sayısı (maks 10)

Döndürür: id, type, period_start, period_end, content_md, created_at ile rapor listesi.

not

Aylık raporlar 3.000-5.000 kelime olabilir. AI aracının dar bir bağlam penceresi varsa limit=1 kullan.

get_tags

Tüm etiketlerini al, önce sabitlenmiş, sonra kullanım sayısına göre sıralı.

Parametre yok. tag, usage_count, is_pinned, is_manual ile en fazla 100 etiket döndürür.

get_profile

Hesap bilgilerini ve kullanım istatistiklerini al.

Parametre yok. email, display_name, locale, transcription_locale, timezone, subscription, mcp_mode, created_at ve stats (not/görev/etkinlik sayıları) döndürür.

Notlar, görevler ve etkinlikler arasında aynı anda ara. Notlar için hem metin araması hem de semantik aramayı destekler (AI gömme kullanarak anlama göre sonuçlar bulur).

ParametreTürVarsayılanAçıklama
querystringgerekliArama metni (maks 500 karakter)
limitint20Tür başına maks sonuç (maks 20)
semanticbooltrueNotlar için semantik aramayı etkinleştir

Sonuçları türe göre gruplandırılmış döndürür: notes[], tasks[], events[]. Her sonuç id, type, title, detail, created_at içerir.

Daha hızlı yalnızca metin araması için semantic=false olarak ayarla.

get_change_log

Bir notun, görevin veya etkinliğin düzenleme geçmişini gör - AI'ın yaptığı her takip düzenlemesi ve kendi yaptığın her manuel düzenleme, en yenisinden başlayarak.

ParametreTürVarsayılanAçıklama
entitystringgereklinotes, tasks veya events
entity_idstringgerekliÖğenin UUID'si
include_manualboolfalseYalnızca AI tarafından yapılan düzenlemeleri değil, kendi manuel düzenlemelerini de dahil et

Döndürür: id (geri alma için bunu entry_id olarak kullan), field_name, old_value, new_value, source (follow_up, smart_context veya manual), origin_note_id, edited_at ve reverted_at (geri alındığında ayarlanır) ile değişiklik girişlerinin listesi.

process_note (Pro ve Ultra)

Tam AI süreci - uygulamada kayıt etmekle aynı şekilde çalışır. Metin veya ses gönder, TellDone çevirir, AI ile analiz eder ve çıkarılan görevler, etkinlikler, etiketler ve gömme ile yapılandırılmış bir not oluşturur.

Bu araç asenkron'dur: hemen bir audio_id ile döner ve arka planda işler. Sonuçlar gerçek zamanlı senkron üzerinden bağlı cihazlarına gelir veya get_notes() ile yoklayabilirsin.

ParametreTürAçıklama
textstringAnaliz edilecek metin (ses sağlanmazsa transkripsiyonu atlar)
audio_base64stringBase64 kodlu ses dosyası (50MB'a kadar, transkripsiyonu tetikler)
audio_formatstringm4a, ogg, wav, mp3, aac veya webm (varsayılan: m4a)
parent_task_idstringBunun takip olduğu görevin UUID'si
parent_note_idstringBunun takip olduğu notun UUID'si
parent_event_idstringBunun takip olduğu etkinliğin UUID'si

text veya audio_base64'ten birini sağlamalısın (veya her ikisini - transkripsiyon için ses öncelikli).

Döndürür: {"audio_id": "...", "status": "processing", "mode": "text-only"} veya ses sağlandıysa "mode": "audio+stt".

not

process_note planının kotalarına tabidir (günlük yüklemeler, aylık notlar, maks metin uzunluğu). Mevcut kullanımını kontrol etmek için get_profile kullan.

create_note (Pro ve Ultra)

Anında düz metin not oluştur. AI analizi tetiklemez - görevler veya etkinlikler çıkarılmaz. Görev/etkinlik çıkarmalı tam AI analizi için bunun yerine process_note kullan.

ParametreTürLimitAçıklama
titlestring200 karakterGerekli
summarystring1000 karakterİsteğe bağlı. Kısa tanıtım (1-3 cümle). Rapor istemlerine dahildir, kısa tut
transcriptstringplana göreİsteğe bağlı. Not ayrıntısında gösterilen uzun gövde. Raporlara dahil değil. Limitler: Free 2.000 / Basic 8.000 / Pro 20.000 / Ultra 50.000 karakter
typestring-İsteğe bağlı. task, idea, info (varsayılan), status, meeting, event veya reflection
tagsstring20 etiketVirgülle ayrılmış, isteğe bağlı

create_task (Pro ve Ultra)

Yeni bir görev oluştur.

ParametreTürLimitAçıklama
titlestring200 karakterGerekli
descriptionstring2000 karakterİsteğe bağlı
prioritystring-low, medium (varsayılan) veya high
deadlinestring-YYYY-MM-DD, isteğe bağlı
reminder_atstring-ISO 8601 tarih saat (örneğin 2026-04-15T09:00:00Z), isteğe bağlı
tagsstring20 etiketVirgülle ayrılmış, isteğe bağlı
note_idstring-Görevi üst nota bağlamak için UUID, isteğe bağlı

create_event (Pro ve Ultra)

Bir takvim etkinliği oluştur.

ParametreTürLimitAçıklama
titlestring200 karakterGerekli
start_atstring-ISO 8601 tarih saat, gerekli
end_atstring-ISO 8601 tarih saat (varsayılan: başlangıç + 1 saat)
descriptionstring2000 karakterİsteğe bağlı
locationstring200 karakterİsteğe bağlı
is_all_daybool-Varsayılan: false
tagsstring20 etiketVirgülle ayrılmış, isteğe bağlı
reminder_minutesstring-Etkinlikten önce virgülle ayrılmış dakika (örneğin 15,60), isteğe bağlı
attendeesstring-Virgülle ayrılmış adlar veya e-postalar, isteğe bağlı
recurrence_rulestring-RRULE dizesi (örneğin FREQ=WEEKLY;BYDAY=MO,WE,FR), isteğe bağlı
note_idstring-Etkinliği üst nota bağlamak için UUID, isteğe bağlı

update_note (Pro ve Ultra)

Mevcut bir notta bir veya daha fazla alanı güncelle. Yalnızca sağladığın alanlar değiştirilir.

ParametreTürAçıklama
note_idstringGerekli, notun UUID'si
titlestringYeni başlık (maks 200 karakter)
summarystringYeni özet (maks 1000 karakter, temizlemek için bir boşluk " " geç)
transcriptstringYeni transkript (plan tabanlı limit, temizlemek için bir boşluk " " geç)
typestringtask, idea, info, status, meeting, event veya reflection
tagsstringVirgülle ayrılmış etiketler (mevcut tüm etiketleri değiştirir, maks 20)
prioritystringlow, medium veya high
statusstringactive veya archived
uyarı

Sesli not süreciyle oluşturulan notlar için, transcript orijinal konuşma-metin çıktısıdır. Üzerine yazmak kanonik kaynağı değiştirir - orijinali korumak istiyorsan onun yerine eklemeyi düşün.

update_task (Pro ve Ultra)

Mevcut bir görevde bir veya daha fazla alanı güncelle. Yalnızca sağladığın alanlar değiştirilir.

ParametreTürAçıklama
task_idstringGerekli, görevin UUID'si
titlestringYeni başlık
descriptionstringYeni açıklama (temizlemek için bir boşluk " " geç)
prioritystringlow, medium veya high
deadlinestringYYYY-MM-DD (temizlemek için bir boşluk geç)
statusstringtodo veya done
tagsstringVirgülle ayrılmış etiketler (mevcut tüm etiketleri değiştirir, maks 20)
reminder_atstringISO 8601 tarih saat (temizlemek için bir boşluk geç)

status'u done olarak ayarlamak ayrıca görevin ne zaman ve nasıl tamamlandığını da kaydeder.

complete_task (Pro ve Ultra)

Bir görevi bitti olarak işaretlemek için kısayol.

ParametreTürAçıklama
task_idstringGerekli, görevin UUID'si

Görev yoksa veya zaten tamamlanmışsa hata döndürür.

update_event (Pro ve Ultra)

Mevcut bir etkinlikte bir veya daha fazla alanı güncelle. Yalnızca sağladığın alanlar değiştirilir.

ParametreTürAçıklama
event_idstringGerekli, etkinliğin UUID'si
titlestringYeni başlık
descriptionstringYeni açıklama (temizlemek için bir boşluk geç)
start_atstringYeni başlangıç saati (ISO 8601)
end_atstringYeni bitiş saati (ISO 8601)
locationstringYeni konum (temizlemek için bir boşluk geç)
statusstringconfirmed, tentative veya cancelled
tagsstringVirgülle ayrılmış etiketler (mevcut tüm etiketleri değiştirir, maks 20)
is_all_daystring"true" veya "false"
reminder_minutesstringEtkinlikten önce virgülle ayrılmış dakika (örneğin 15,60)
attendeesstringVirgülle ayrılmış adlar veya e-postalar
recurrence_rulestringRRULE dizesi (temizlemek için bir boşluk geç)

delete_note (Pro ve Ultra)

Bir notu sil. Bu, bu nottan oluşturulan tüm görevleri ve etkinlikleri de siler.

ParametreTürAçıklama
note_idstringGerekli, notun UUID'si

delete_task (Pro ve Ultra)

Bir görevi sil.

ParametreTürAçıklama
task_idstringGerekli, görevin UUID'si

delete_event (Pro ve Ultra)

Bir etkinliği sil.

ParametreTürAçıklama
event_idstringGerekli, etkinliğin UUID'si

undo_change_log_entry (Pro ve Ultra)

İzlenen tek bir düzenlemeyi geri al - alanı, o düzenlemeden önceki değerine geri getirir; düzenleme ister AI tarafından (bir takip kaydından) ister doğrudan senin tarafından yapılmış olsun.

ParametreTürAçıklama
entitystringGerekli, notes, tasks veya events
entity_idstringGerekli, öğenin UUID'si
entry_idstringGerekli, get_change_log'dan gelen değişiklik girişinin id'si

Döndürür: {"entry_id", "entity_type", "entity_id", "field_name", "restored_value", "reverted_at"}. Aynı girişi iki kez geri almak bir hata döndürür - zaten geri alınmıştır.

restore_entity (Pro ve Ultra)

Silinmiş veya arşivlenmiş bir notu, görevi veya etkinliği geri getir.

ParametreTürAçıklama
entitystringGerekli, notes, tasks veya events
entity_idstringGerekli, öğenin UUID'si

Döndürür: geri getirilen öğeyi JSON olarak.

create_tag (Pro ve Ultra)

Yeni bir etiket oluştur veya mevcut otomatik önerilen bir etiketi kalıcı hale getir.

ParametreTürAçıklama
tagstringGerekli, 1-50 karakter (küçük harfle saklanır)
categorystringİsteğe bağlı

set_tag_pinned (Pro ve Ultra)

Bir etiketi, etiket listesinin en üstüne sıralanması için sabitle veya sabitlemesini kaldır.

ParametreTürAçıklama
tagstringGerekli
pinnedboolGerekli

/ karakteri içeren etiketler sabitlenemez.

delete_tag (Pro ve Ultra)

Bir etiketi kaldır. restore_tag ile geri getirilebilir.

ParametreTürAçıklama
tagstringGerekli

restore_tag (Pro ve Ultra)

Silinmiş bir etiketi geri getir.

ParametreTürAçıklama
tagstringGerekli

Giriş limitleri

AlanMaks uzunlukKullanıldığı yer
title200 karakternot, görev, etkinlik oluştur/güncelle
description2.000 karaktergörev, etkinlik oluştur/güncelle
summary1.000 karakter (sıkı)not oluştur/güncelle. Rapor istemlerine dahildir, token maliyetini kontrol etmek için kısa tutulur
transcriptplan tabanlı: Free 2.000 / Basic 8.000 / Pro 20.000 / Ultra 50.000not oluştur/güncelle. Uzun gövde, raporlarda değil
location200 karakteretkinlik oluştur/güncelle
tags20 etiketnot, görev, etkinlik oluştur/güncelle
arama sorgusu500 karaktersearch
audio_base64 (kod çözülmüş)50 MBprocess_note

Bir limiti aşarsan, araç "title too long (max 200 chars, got 250)" gibi bir hata mesajı döndürür.

Hata yönetimi

Tüm araçlar JSON döndürür. Hatalar bu biçimi kullanır:

{"error": "description of what went wrong"}

Yaygın hatalar:

HataNe zaman
"MCP access is read-only..."Sadece okuma modunda yazma aracı çağrıldı
"Invalid note_id format"Kimlik olarak UUID olmayan dize geçirildi
"Note not found"Kimlik yok veya başka bir kullanıcıya ait
"Task not found or already completed"Var olmayan veya zaten bitmiş bir görevde complete_task
"title too long (max 200 chars, got N)"Giriş limiti aşıldı
"Too many tags (max 20)"20'den fazla etiket sağlandı

HTTP düzeyinde hatalar:

KodAnlamı
401Geçersiz veya eksik Bearer token
403MCP devre dışı veya plan MCP'ye izin vermiyor
429Hız limiti aşıldı (5 req/s, 20'ye kadar ani artış)

Kullanım örnekleri

Tüm örnekler MCP JSON-RPC protokolüyle cURL kullanır. YOUR_TOKEN'ı bağlantı token'ınla değiştir.

Veri okuma

# Profilini ve istatistiklerini al
curl -s -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"get_profile"}}'

# Son notları listele (limit 5, Nisan 2026'dan)
curl -s -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call",
"params":{"name":"get_notes","arguments":{"limit":5,"date_from":"2026-04-01"}}}'

# Notları ara (hibrit metin + semantik)
curl -s -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call",
"params":{"name":"search","arguments":{"query":"project deadline","limit":5}}}'

Veri yazma (Pro ve Ultra)

# Tam AI sürecinden bir notu işle (görevler + etkinlikler çıkarır)
curl -s -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":10,"method":"tools/call",
"params":{"name":"process_note","arguments":{"text":"Need to buy groceries tomorrow. Meeting with Katie at 3pm at the cafe to discuss the project."}}}'

# Son tarih ve hatırlatıcılı bir görev oluştur
curl -s -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":11,"method":"tools/call",
"params":{"name":"create_task","arguments":{"title":"Review PR","priority":"high","deadline":"2026-04-15","reminder_at":"2026-04-15T09:00:00Z","tags":"dev"}}}'

# Hatırlatıcılar ve katılımcılarla tekrar eden bir etkinlik oluştur
curl -s -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":12,"method":"tools/call",
"params":{"name":"create_event","arguments":{"title":"Team standup","start_at":"2026-04-12T10:00:00Z","reminder_minutes":"15","attendees":"Katie,John","recurrence_rule":"FREQ=DAILY;BYDAY=MO,TU,WE,TH,FR","tags":"meeting"}}}'

# Bir görevi tamamla
curl -s -X POST https://api.telldone.app/mcp/user/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"jsonrpc":"2.0","id":13,"method":"tools/call",
"params":{"name":"complete_task","arguments":{"task_id":"<task-uuid>"}}}'

Başarılı bir yanıt şöyle görünür:

{
"jsonrpc": "2.0",
"id": 10,
"result": {
"content": [{"type": "text", "text": "{\"id\":\"...\",\"title\":\"Review PR\",\"status\":\"todo\"}"}]
}
}
not

Yazma ve güncelleme araçları yalnızca id, title ve status içeren minimal yanıtlar döndürür. Bir yazmadan sonra tam ayrıntıları almak için (etiketler, öncelik, son tarih vb.), get_tasks veya get_note gibi bir takip okuma çağrısı yap.

Token yönetimi

EylemNasıl
Token'ı görüntüleiPhone Ayarlar → Entegrasyonlar → AI Ajanları (veya web Ayarlar → AI Ajanları), göz simgesine dokun
Token'ı kopyalaToken'ın yanındaki kopyala simgesine dokun
Yeniden OluşturYeniden Oluştur'a dokun ve onayla. Eski token hemen çalışmayı durdurur ve aktif oturumlar bağlantıyı keser
Modu değiştirYalnızca Ultra - Read-only ve Read + Write arasında geçiş yap. Pro'da mod Read + Write'a sabittir
Devre Dışı BırakDevre Dışı Bırak'a dokun ve onayla. Token silinir ve tüm bağlantılar durur. Daha sonra yeniden etkinleştirebilirsin (yeni bir token verilir)

AI ajanına neler sorabilirsin

Bağlandıktan sonra, AI aracına şöyle şeyler sor:

Gününü incele:

  • "Bugün ne üzerinde çalıştım?"
  • "Bu haftadan notlarımı göster"
  • "Hangi görevler gecikmiş?"

Görevleri yönet:

  • "Bir görev oluştur: çeyrek raporunu incele, yüksek öncelik, son tarih Cuma"
  • "Figma görevini bitti olarak işaretle"
  • "Hangi görevler üzerinde çalışıyorum?"

Ara ve analiz et:

  • "Pazarlama stratejisi hakkında tüm notları bul"
  • "Önümüzdeki hafta hangi etkinliklerim var?"
  • "Geçen haftadan günlük raporlarımı özetle"

Önceden planla:

  • "Bir etkinlik oluştur: yarın saat 10'da ekip toplantısı"
  • "Bu hafta takvimimde ne var?"
  • "En çok kullanılan etiketlerimi göster - en çok zamanı neye harcıyorum?"

AI ajanı notlarına, görevlerine, etkinliklerine ve raporlarına tam erişime sahiptir. Veriyi okuyabilir, oluşturabilir, güncelleyebilir ve silebilir ve birden fazla araçtan bilgi birleştirerek karmaşık soruları yanıtlayabilir.

Önemli notlar

  • Not oluşturmanın iki yolu - create_note anında düz metin not oluşturur (AI analizi yok). process_note tam AI sürecini çalıştırır (uygulamada kayıt etmekle aynı) - metni analiz eder, görevler ve etkinlikler çıkarır, etiketler ve gömme oluşturur. TellDone'un düşünmesini istediğinde process_note kullan.
  • Entegrasyon senkronu yok - MCP üzerinden oluşturulan veya güncellenen öğeler webhook otomasyonlarını veya entegrasyon senkronlarını (Todoist, Notion) tetiklemez. Bir sonraki senkronda uygulamalarında görünürler.
  • Semantik arama araca bağlıdır - process_note ile oluşturulan notlar gömme alır ve semantik aramada görünür. create_note ile oluşturulan notlar gömme almaz, bu nedenle yalnızca metin aramasında görünür.
  • Yazma yanıtları minimaldir - oluşturma ve güncelleme araçları yalnızca id, title ve status döndürür. Bir yazmadan sonra tüm alanları almak için bir takip okuma çağrısı yap.
  • Tarih filtreleri UTC kullanır - date_from/date_to parametreleri UTC zaman damgaları olarak karşılaştırılır. UTC olmayan saat dilimlerindeki kullanıcılar için, sınır tarihleri komşu günlerden öğeleri dahil edebilir veya hariç tutabilir.
  • Hız limiti - saniyede 5 istek, 20'ye kadar ani artışlarla. Toplu işlemler için isteklerini ayarla.

Güvenlik

  • Her kullanıcı benzersiz bir 384-bit bağlantı token'ı alır
  • MCP'yi devre dışı bıraktığında veya yeniden oluşturduğunda token'ın anında iptal edilir
  • Tüm veriler hesabına sıkı bir şekilde izole edilir - ajanın yalnızca kendi verilerine erişebilir
  • Her istek kullanıcına ayarlanır - bir ajanın başka bir kullanıcının verilerine erişmesinin yolu yoktur
  • Bağlantı hız limitlemesiyle (5 req/s, 20'ye kadar ani artış) HTTPS kullanır
  • OAuth bağlantıları, tek kullanımlık yetkilendirme kodları ve kısa ömürlü erişim token'larıyla PKCE kullanır - bir bağlantıyı istediğin zaman uygulamadan iptal edebilirsin

Teknik ayrıntılar için - keşif uç noktaları, token ömürleri, tam OAuth akışı - github.com/exp78/telldone-mcp adresindeki açık kaynaklı konektör referansımıza bak veya doğrudan https://api.telldone.app/.well-known/oauth-protected-resource adresini sorgula.

Gizlilik ve veri akışı

Verilerin, bağlı bir AI aracına yalnızca ondan açıkça bir şey yapmasını istediğinde iletilir - örneğin, notlarını okumasını veya değiştirmesini istediğinde. Araç yalnızca yaptığı belirli çağrıların yanıtlarını alır ve bunlar da onayladığın izinlerle sınırlıdır. Kontrol sende: planının okuma/yazma modunu değiştir, girişte onayladığın OAuth kapsamlarını daralt ya da bearer token'ını yeniden oluştur ve devre dışı bırak - hepsi Ayarlar'dan. Tüm ayrıntılar için Gizlilik Politikası'na bak veya sorularınla support@telldone.app adresine ulaş.

Sorun giderme

BelirtiNedeni / çözümü
OAuth onay sayfası "Wrong email or password" diyorTellDone hesabının e-postasını ve parolasını kullan (uygulamaya giriş yaptığın bilgiler). Hesabında yalnızca Apple veya Google ile giriş varsa ve parola yoksa, bunun yerine bearer token yöntemini kullan.
Bağlandı, ama AI hiçbir şey oluşturamıyor veya düzenleyemiyorPlanın veya modun sadece okuma, ya da bağlantıya yazma kapsamları verilmemiş - yeniden bağlan ve onayla veya Ayarlar'dan modunu kontrol et.
Bir araçtan "Insufficient scope" hatasıOAuth bağlantısına o kapsam verilmemiş. Yeniden bağlan ve aracın ihtiyaç duyduğu izni onayla.
Araçlar hiç görünmüyorHesabında MCP etkin değil (Ayarlar → AI Ajanları) veya planın MCP içermiyor.
İstemcim yalnızca bir konektör listesinden seçim yapmama izin veriyor ve TellDone listede yokTellDone henüz hiçbir istemcinin konektör dizininde yok - MCP URL'siyle özel konektör olarak ekle veya bearer token yöntemini kullan.

Ayrıca bkz.