Ana sayfa

Geliştirici Dokümanları

Bu API rehberi, Doç. Dr. Ediz Yeşilkaya'nın kişisel sitesindeki herkese açık kaynak hizmetlerini açıklar. MCP ve A2A ile site rehberlerini alabilir, blog arama bağlantısı oluşturabilir veya yayımlanmış SSS içeriğinde arama yapabilirsiniz. Bu hizmetler yeni ya da kişiye özel tıbbi cevap, tanı, tedavi, hasta kaydı veya randevu işlemi sunmaz.

Hangi hizmeti kullanmalıyım?

İhtiyaçHizmetAdres
Herkese açık rehberi okumak veya blog arama bağlantısı oluşturmakMCPPOST /mcp/
Konuya göre site kaynaklarına yönlenmekA2APOST /a2a/
Mevcut SSS sorularını ve yanıtlarını aramakSınırlı NLWeb list adaptörüGET /ask
Terminalden kaynak hizmetlerini kullanmakPython CLIKurulum ve komutlar

Temel adres https://www.edizyesilkaya.com.tr şeklindedir. POST adreslerinde sondaki eğik çizgiyi koruyun; apex veya eğik çizgisiz adrese yönlendirme üzerinden bağlanmayın. Makine tarafından okunabilir sözleşme: OpenAPI / API documentation. Örnekleri çalıştırmadan önce dosyaları bilgisayarınıza indirin; aşağıdaki curl komutları Windows Komut İstemi içindir. Linux/macOS için curl.exe yerine curl kullanın.

API anahtarı veya oturum gerekiyor mu?

Bu sınırlı, herkese açık hizmetler için API anahtarı, ödeme, çerez veya kullanıcı oturumu gerekmez. Özel hasta bilgilerine erişim yoktur. İstemcinin kullanıcı aracını tanımlaması önerilir. İsteklere kişisel veya hasta bilgisi eklemeyin; GET sorguları sunucu erişim kayıtlarında görünebilir.

MCP ile ilk çağrıyı nasıl yaparım?

Sunucu stateless Streamable HTTP üzerinden JSON yanıt verir. Önce initialize, sonra initialized bildirimi, ardından araç/kaynak çağrısı gönderin. Sunucunun seçtiği protokol sürümünü sonraki çağrıların MCP-Protocol-Version başlığında kullanın. Şu sürümler desteklenir: 2025-11-25, 2025-06-18 ve 2025-03-26. Oturum kimliği veya SSE akışı kullanılmaz.

mcp-initialize.json dosyasını indir ve mcp-tool.json dosyasını indir.

curl.exe "https://www.edizyesilkaya.com.tr/mcp/" -H "Content-Type: application/json" --data-binary "@mcp-initialize.json"

Initialize yanıtında result.protocolVersion ve result.capabilities bulunur. İstemciniz, kimlik alanı olmayan {"jsonrpc":"2.0","method":"notifications/initialized"} bildirimini gönderir; sunucu boş gövdeyle 202 döndürür. Ardından arama aracı çağrılır:

curl.exe "https://www.edizyesilkaya.com.tr/mcp/" -H "Content-Type: application/json" -H "MCP-Protocol-Version: 2025-11-25" --data-binary "@mcp-tool.json"

build_blog_search_url aracı, 1–160 karakterlik query argümanını alır. Yanıttaki result.content[0].text, searchUrl içeren JSON metnidir. Araç yazıları indirmez veya okuyup cevaplamaz. resources/list mevcut rehberleri listeler; resources/read yalnız https://www.edizyesilkaya.com.tr/llms.txt ve https://www.edizyesilkaya.com.tr/AGENTS.md adreslerini kabul eder. Ayrıntılı MCP kullanım belgesi.

A2A ile kaynak bağlantılarını nasıl alırım?

a2a-message.json dosyasını indirin. İstek SendMessage yöntemi, ROLE_USER mesajı ve metin parçaları içerir. A2A-Version: 1.0 başlığı zorunludur.

curl.exe "https://www.edizyesilkaya.com.tr/a2a/" -H "Content-Type: application/json" -H "A2A-Version: 1.0" --data-binary "@a2a-message.json"

Yanıt result.message içinde ROLE_AGENT rolü, messageId, contextId ve metin parçaları taşır. İçerik, blog arama bağlantısı ile varsa site rehberidir; tıbbi cevap değildir. Görev, konuşma geçmişi, streaming veya push bildirimi sunulmaz. Konu 1–160 karakter olabilir. Ayrıntılı A2A belgesi · Agent Card.

Yayımlanmış SSS yanıtlarını nasıl ararım?

curl.exe -G "https://www.edizyesilkaya.com.tr/ask" --data-urlencode "query=boy kısalığı" --data-urlencode "streaming=false"

JSON yanıtı query_id ve results içerir. Her sonuçta kaynak URL'si ve schema.org Question/Answer nesnesi bulunur. Bu, yayımlanmış SSS kopyasında anahtar kelime aramasıdır; LLM veya anlamsal arama değildir. Eşleşme yoksa 200 ve boş results dizisi döner. Query 1–300 karakter, num_results 1–10 olabilir. Yalnız mode=list ve streaming=false desteklenir. indexed_at, indeksin oluşturulma zamanını gösterir; tıbbi içerik güncelleme tarihi değildir. SSS arama parametreleri ve indeks güncelleme açıklaması.

CLI nasıl kurulur?

Aracı çalıştıran bilgisayarda Python 3.9+ gerekir. Sunucuya Python kurulmaz; ek Python paketi veya API anahtarı gerekmez. CLI doğrudan siteden dosya olarak dağıtılır; npm/PyPI paketi değildir.

curl.exe -fL https://www.edizyesilkaya.com.tr/tools/ediz-cli.txt -o ediz-cli.py
py -3 ediz-cli.py search "boy kısalığı"
py -3 ediz-cli.py read llms
py -3 ediz-cli.py a2a "erken ergenlik"

Linux/macOS için py -3 yerine python3 kullanın. Başarıda JSON standart çıktıya ve çıkış kodu 0; bağlantı/protokol hatasında JSON standart hataya ve kod 1 döner. Komut biçimi hatası kod 2'dir. Tüm CLI komutları ve sınırlar.

Hata aldığımda neyi kontrol etmeliyim?

JSON-RPC hizmetlerinde HTTP 200 yanında error nesnesi bulunabilir; yalnız HTTP koduna bakmayın. A2A sürüm hatası -32009, bilinmeyen JSON-RPC yöntem hatası -32601 olabilir. MCP result.isError alanını da kontrol edin. Sabit bir dakika kotası ilan edilmiyor; 429 alırsanız varsa Retry-After süresini bekleyin. Otomatik ve sınırsız tekrar yapmayın.

Keşif ve durum adresleri

Durum adresleri yalnız yerel dosyaların varlığını kontrol eder; uçtan uca protokol testi değildir. Bu doküman hizmetleri kendisi kurmaz; ilgili uç noktaların sunucuda kurulu olması gerekir.