Türk Hukuku İçtihat

io.github.aydincanPublished by GitHub account aydincanv0.5.1Updated Oct 24, 2026

Türk yargı kararlarını (Yargıtay, Danıştay, AYM) resmî kaynaklardan yapay zekâya açan MCP sunucusu.

Overview

AI-generated overview

Local MCP server that lets an assistant search official Turkish court decisions (Yargıtay, Danıştay, AYM) and fetch their full texts with citations.

What you can do
Search decisions across Yargıtay, regional and first-instance courts, Danıştay, and the Constitutional Court, filtered by court type, result count and page, with quoted phrases, exclusions and OR terms supported. Retrieve the full official text of a decision by its ID and court, including header, reasoning and ruling. Return structured citation details (court, chamber, case and decision numbers, date) and a link to the decision's public page. Clean up the retrieved text into readable plain text.
When to use it
Useful when working with Turkish case law and you want citations taken from official sources rather than from the model's memory, for example researching Yargıtay precedents, administrative rulings or Constitutional Court decisions.
Requirements
Runs locally as a stdio process, launched with uvx from the PyPI package (or installed with pip); no account, API key or environment variable is declared. Needs network access to the official court sites it queries.
Before you install
Not legal advice: the README warns the model can still err and every citation should be verified via the provided source link, and that binding force and precedential value need separate legal analysis. Queries go to third-party official court sites, which may rate-limit or block access; the server stops rather than solving captchas. Decisions are cached in memory only for the session.

Installation

In SourceWeft

  1. Open Türk Hukuku İçtihat in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

turk-hukuku-ictihat-mcp

Türk yargı kararlarını resmî kaynaktan yapay zekâ araçlarına açan bir MCP sunucusu: Yargıtay (Adalet Bakanlığı Mevzuat ve İçtihat), Bölge Adliye ve ilk derece (UYAP Emsal), idari yargı (Danıştay) ve anayasa yargısı (AYM Kararlar Bilgi Bankası).

Amaç tek cümle: model bir karara atıf yaparken künyeyi (mahkeme, daire, esas/karar no, tarih) hafızasından değil resmî kaynaktan alsın. Künye yapısal döner ve her sonuç kararın resmî sayfasına bağlantı (kaynak) taşır. Model yine de yanılabilir; her künyeyi o bağlantıdan teyit edin.

Hukuki danışmanlık değildir. Bu araç içtihada erişimi kolaylaştırır; kararın güncelliğini, kesinleşme durumunu ve somut olaya uygunluğunu siz değerlendirin. Bir kararın bağlayıcılığı ve emsal değeri ayrı bir hukuki analiz gerektirir.

Ayrıntı: SORUMLULUK-REDDI.md · PRIVACY.md (veri toplama yok, telemetri yok; dış bağlantılar yalnızca resmî karar siteleri).

Belgeler ve kurulum rehberi: turk-hukuku.com/mcp · Terminal kullanmıyorsanız masaüstü uygulaması bu sunucuyu kendisi kurup çalıştırır (Mac ve Windows).


Ne yapar

Toolİşlev
ictihat_ara(ifade, mahkeme, adet, sayfa)Karar arar; künye + atıf + id döndürür
karar_getir(karar_id, mahkeme)Bir kararın resmî tam metni (künye + gerekçe + hüküm)

mahkeme şu değerleri alır:

DeğerKapsamKaynak
adli (varsayılan)Yargıtay + Bölge Adliye ve ilk derece, birlikteBedesten + UYAP Emsal
yargitayYargıtay daireleri ve kurullarıBedesten (mevzuat.adalet.gov.tr)
emsalBölge Adliye hukuk daireleri ve ilk dereceUYAP Emsal
idariDanıştaykarararama.danistay.gov.tr
anayasaAYM bireysel başvurukararlarbilgibankasi.anayasa.gov.tr
normAYM norm denetimi (iptal/itiraz)aynı kaynak

karar_getir'e aramada kullandığın mahkeme değerini aynen geçir (yargitay: önekli id her durumda Yargıtay'dan gelir). Sözcükler birlikte aranır, hepsi geçmeli; tam ifade için çift tırnak kullan ("ihtiyaç nedeniyle tahliye"). Yargıtay, emsal ve AYM aramasında başına eksi hariç tutar (-ceza), OR "veya" demektir. Kesme işaretinden sonraki ek atılır ("TMK'nın" → "TMK"). adli aramada adet en az 2'dir.

Tipik akış: ictihat_ara("ihtiyaç nedeniyle tahliye", mahkeme="yargitay") → sonuçtan bir id seç → karar_getir(id, mahkeme="yargitay") → kararın tam metni. Her sonuç hazır bir atif taşır: "Yargıtay 6. Hukuk Dairesi, E.2015/2565 K.2016/25, T.18.01.2016" · "Danıştay 6. Daire, E.2023/1084 K.2025/10046" · "AYM, B. No: 2020/36883, K.T. 16/12/2025". Her sonuç ayrıca kararın herkese açık sayfasını (kaynak) verir; Yargıtay ve UYAP Emsal kararları mevzuat.adalet.gov.tr/ictihat/<id> adresinde okunur biçimde açılır.

Kapsam

  • Yargıtay (mahkeme="yargitay"): hukuk ve ceza daireleri ile kurulların kararları; Adalet Bakanlığı'nın Mevzuat ve İçtihat Programı'nın arka ucu (bedesten.adalet.gov.tr). Her kararın herkese açık sayfası: https://mevzuat.adalet.gov.tr/ictihat/<id>.
  • Bölge Adliye ve ilk derece (mahkeme="emsal"): Bölge Adliye Mahkemeleri hukuk daireleri ve bazı ilk derece mahkemeleri (asliye ticaret, fikrî ve sınaî haklar); UYAP Emsal. Herkese açık UYAP Emsal Yargıtay kararı içermez.
  • Adli yargı birlikte (mahkeme="adli", varsayılan): iki kaynağı aynı anda arar; Yargıtay sonuçlarının id'si yargitay: önekini taşır.
  • İdari yargı (mahkeme="idari"): Danıştay kararları (karararama.danistay.gov.tr, 390.000+ doküman).
  • Anayasa yargısı (mahkeme="anayasa"): AYM bireysel başvuru kararları (kararlarbilgibankasi.anayasa.gov.tr).
  • Norm denetimi (mahkeme="norm"): AYM iptal/itiraz kararları; künye E./K. numaraları ve Resmî Gazete bilgisiyle döner (aynı kaynak).

Nasıl çalışır

Her kaynak bir arama + bir belge uç noktası sunar:

Bedesten   : POST /emsal-karar/searchDocuments       + POST /emsal-karar/getDocumentContentUYAP Emsal : POST /aramalist (aranan)               + GET /getDokuman?idDanıştay   : POST /aramalist (andKelimeler[])        + GET /getDokuman?id&arananKelimeAYM        : POST /api/core/public/search (JSON; arama da tam metin de aynı uçtan)

Sunucu aramayı yapar, künyeleri yapısal döndürür ve metni okunur düz metne çevirir (Danıştay iç içe HTML kodlamasından, AYM Word-export gövdesinden arındırılır). Tamamen yereldir; veri toplanmaz.

Resmî sitelere saygı

  • Kendini tanıtır. Her istekte kendi User-Agent'ını gönderir: turk-hukuku-ictihat-mcp/<sürüm> (+https://turk-hukuku.com/mcp/). Tarayıcı ya da resmî web uygulaması gibi davranmaz; bu amaçla başlık eklemez.
  • Site başına sınırlı istek. Aynı siteye aynı anda tek istek gider ve iki istek arasında en az bir saniye beklenir (site başına yaklaşık saniyede bir istek).
  • Oturum içi önbellek. Getirilen kararlar (en çok 256 karar) yalnızca oturum boyunca bellekte tutulur; aynısı yeniden istenince siteye tekrar gidilmez. Diske bir şey yazılmaz.
  • Captcha çözmez, atlamaz; sınırda durur. Site doğrulama (captcha) isterse, erişimi reddederse (HTTP 403), erişim sınırı bildirirse (HTTP 429), beklenen veri yerine başka bir sayfaya yönlendirirse ya da bir web sayfası döndürürse sunucu durur, isteği yinelemez ve sizi resmî siteye yönlendirir. O siteye bir süre (yaklaşık iki dakika ya da sitenin bildirdiği süre kadar) yeni istek göndermez. Doğrulama isteği yalnızca sayfadaki doğrulama kutusundan ya da sitenin doğrulama bayrağından anlaşılır; "ben robot değilim" sözünü aktaran bir karar sunucuyu durdurmaz.
  • Geçici hatalarda kısa bir ileti verir. Sitede geçici bir arıza (HTTP 5xx), "bulunamadı" yanıtı (HTTP 404) ya da ağ hatası olursa sunucu bunu kısa bir Türkçe iletiyle bildirir ve isteği yinelemez; bu durumda bekleme süresi uygulanmaz.

Kurulum

PyPI'de yayımlıdır; uv ile ayrı kurulum gerekmeden çalışır.

Claude Code

bash
claude mcp add turk-hukuku-ictihat -- uvx --from turk-hukuku-ictihat-mcp turk-hukuku-ictihat

OpenAI Codex

~/.codex/config.toml:

toml
[mcp_servers.turk-hukuku-ictihat]command = "uvx"args = ["--from", "turk-hukuku-ictihat-mcp", "turk-hukuku-ictihat"]

Gemini CLI

~/.gemini/settings.json içindeki mcpServers altına:

json
"turk-hukuku-ictihat": {  "command": "uvx",  "args": ["--from", "turk-hukuku-ictihat-mcp", "turk-hukuku-ictihat"]}

Alternatif: pip

bash
pip install turk-hukuku-ictihat-mcp# komut: turk-hukuku-ictihat   (ya da: python -m turk_hukuku_ictihat)

İlgili: kanun/mevzuat metni için turk-hukuku-mevzuat-mcp.

Lisans

MIT · © 2026 Aydın Can Polatkan

Veriler kaynak kurumlara aittir (Adalet Bakanlığı, UYAP Emsal, Danıştay, Anayasa Mahkemesi); bu proje yalnızca kamuya açık resmî karar metnine erişimi kolaylaştıran bağımsız bir istemcidir.


Bu çalışma, ömrünü Türk yargısına adamış babam Hâkim Vahit Polatkan'ın ebedi anısına ithaf edilmiştir.

Source: README.md at commit e6ce1d4

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

3
  1. v0.5.1LatestOct 15, 2026
  2. v0.5.0Oct 12, 2026
  3. v0.4.0Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts