| title | Klinik MCP |
|---|---|
| emoji | 💊 |
| colorFrom | blue |
| colorTo | green |
| sdk | docker |
| app_port | 8080 |
| pinned | false |
Drug & clinical information MCP server for Turkish physicians and pharmacists.
TİTCK · SGK EK-4/A · openFDA · NLM RxClass · PubMed in a single tool set;
works with Claude and ChatGPT.
English · Türkçe
⚠️ Disclaimer: Everything this server returns is for educational purposes only and is not medical advice. Always consult a qualified healthcare professional for medical decisions.
Ask your assistant things like:
- "What is Parol's SGK equivalent (muadil) and reimbursement status?" →
find_drug_equivalents - "Is Glioscan under additional monitoring, or has its licence been cancelled?" →
get_drug_safety_status - "What warnings are on metformin's FDA label?" →
get_drug_label - "70 years old, 60 kg, creatinine 1.4, female — what is the creatinine clearance?" →
creatinine_clearance - "TİTCK record for amoxicillin: ATC, company, prescription type?" →
get_turkish_drug_info - "What is Parol's official patient leaflet (KÜB/KT)?" →
get_drug_leaflet - "Can amifampridine be supplied from abroad?" →
find_foreign_supply - "Can warfarin and aspirin be taken together?" →
check_drug_interactions
Answers come from official sources (TİTCK, SGK, openFDA, NLM, PubMed), not from the model's training data. Replies are written in Turkish.
One-click workflows (MCP Prompts): your client (Claude, Cursor and friends) shows these as ready-made commands:
ilac_bilgisi— TİTCK record + safety status + SGK equivalents in one summary.muadil_ve_geri_odeme— SGK reimbursement + equivalent (muadil) group.renal_doz_kontrol— creatinine clearance plus a renal-dosing reminder.
| User | Start with | Why |
|---|---|---|
| Physician | get_drug_label · creatinine_clearance · get_drug_safety_status |
Indication/dose/warning + renal dosing + safety flags |
| Pharmacist | find_drug_equivalents · get_reimbursement_status · get_drug_safety_status |
Equivalents + reimbursement + safety status |
| Researcher | search_medical_literature · get_drug_classes · find_drugs_for_condition |
PubMed + drug classes + reverse indication lookup |
This server is not a clinical decision tool. Confirming against the official source and applying clinical judgement is mandatory.
18 tools — click to expand the full list
| Tool | Description | Source |
|---|---|---|
get_drug_label |
Indications, dosage, warnings, contraindications, interactions, adverse reactions | openFDA |
get_drug_interactions |
The drug-interactions section of one label | openFDA |
check_drug_interactions |
Pairwise interaction severity (Major/Moderate/Minor) | DDInter |
get_drug_adverse_events |
Most frequently reported adverse events (FAERS) | openFDA |
find_drugs_for_condition |
Drugs indicated for a condition (reverse lookup) | openFDA |
get_drug_classes |
Therapeutic / ATC / mechanism-of-action classes | RxClass |
search_medical_literature |
Medical literature search on PubMed | PubMed |
creatinine_clearance |
Creatinine clearance (Cockcroft–Gault) | Formula |
body_surface_area |
Body surface area (Mosteller) | Formula |
pediatric_dose |
Weight-based pediatric dose arithmetic | Formula |
find_drug_equivalents |
Equivalent (muadil) group | SGK EK-4/A |
get_reimbursement_status |
Reimbursement status (is it on the list) | SGK EK-4/A |
search_turkish_drugs |
Search the Turkish drug registry by name | TİTCK SKRS |
get_turkish_drug_info |
Drug info: ATC, company, prescription type | TİTCK SKRS |
get_drug_leaflet |
Official KÜB/KT leaflet links (clinician + patient) | TİTCK |
find_drugs_by_active_ingredient |
Drugs sharing the same ATC (active substance) | TİTCK SKRS |
find_foreign_supply |
Active substances suppliable from abroad | TİTCK |
get_drug_safety_status |
Additional monitoring (▼) + licence cancellation | TİTCK |
The server is live (HuggingFace Spaces + Smithery), so most people need no setup at all. Pick your client:
- In ChatGPT, enable Settings → Connectors → Advanced → Developer mode.
- Choose Add connector and enter the MCP URL:
https://onatozmenn-klinik-mcp.hf.space/mcp - Save. You can now ask things like "Can warfarin and aspirin be taken together?"
Note: custom MCP tools only show up on accounts with Developer mode on.
Add this to claude_desktop_config.json (Windows:
%APPDATA%\Claude\claude_desktop_config.json · macOS:
~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"klinik": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://onatozmenn-klinik-mcp.hf.space/mcp"]
}
}
}Restart Claude Desktop and the tools appear in the 🔨 menu.
Remote MCP connects directly on Pro / Max plans (and Free, one connector):
- Customize → Connectors → "+" → Add custom connector.
- Enter the MCP URL (leave the OAuth fields empty, the server needs no key):
https://onatozmenn-klinik-mcp.hf.space/mcp - Click Add, then enable Klinik MCP from "+" → Connectors in the chat.
npx -y @smithery/cli install onatozmen44/klinik-mcp --client claude🛠️ Local development (run it on your own machine)
If you want to run it locally or contribute:
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e .
# stdio (for a local Claude Desktop):
.\.venv\Scripts\python.exe -m health_mcp
# HTTP (for ChatGPT / remote clients):
.\.venv\Scripts\python.exe -m health_mcp --transport http --port 8000Optional: copy .env.example to .env and set OPENFDA_API_KEY /
NCBI_API_KEY to raise the upstream rate limits (not required).
To point Claude at your local stdio server, set command to your own
.venv\Scripts\python.exe path and args to ["-m", "health_mcp"].
Run the tests:
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\python.exe -m pytest -qTry the tools in a browser (MCP Inspector):
npx @modelcontextprotocol/inspector .\.venv\Scripts\python.exe -m health_mcp📚 Data sources, updating & advanced usage
- openFDA — https://open.fda.gov/apis/ (drug labels, adverse events, recalls)
- NLM RxNorm / RxNav / RxClass — https://rxnav.nlm.nih.gov/ (drug terminology and classes)
- PubMed (NCBI E-utilities) — https://www.ncbi.nlm.nih.gov/books/NBK25500/ (medical literature)
- DDInter 2.0 — https://ddinter.scbdd.com/ (pairwise drug-drug interactions; CC BY-NC-SA 4.0, non-commercial use only)
find_drug_equivalents and get_reimbursement_status read SGK's complete
reimbursement list, "Bedeli Ödenecek İlaçlar Listesi (EK-4/A)" (~8,000 drugs:
equivalent group, barcode, public number, list-entry date, reimbursement)
(src/health_mcp/data/sgk_ek4a.json).
The full list is published publicly inside SGK's consolidated "İşlenmiş Güncel
SUT" zip (EK-4 LİSTELERİ/EK-4A BEDELİ ÖDENECEK İLAÇLAR LİSTESİ.xlsx).
scripts/update_data.py finds, downloads and processes it automatically.
Note on retail prices: EK-4/A carries barcodes, equivalents and reimbursement, but not the net retail price in TRY (the price columns are discount rates). TİTCK does not publish barcode-level retail prices either (
dinamikmodul/100is EUR reference pricing, without barcodes). A commercial drug database is needed for real TRY prices.
Manual update (with an EK-4/A file you extracted from the zip):
.\.venv\Scripts\python.exe scripts/build_sgk_snapshot.py "C:\path\EK-4A.xlsx" --version "2026"search_turkish_drugs, get_turkish_drug_info and
find_drugs_by_active_ingredient read every active product in the TİTCK
SKRS e-prescription list (~7,900 drugs: name, barcode, ATC, company,
prescription type, essential-medicines flag)
(src/health_mcp/data/titck_drugs.json).
To refresh it:
- Download the latest
.xlsx: titck.gov.tr → dinamikmodul/43 "SKRS E-Reçete İlaç ve Diğer Farmasötik Ürünler Listesi". - Build the snapshot:
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\python.exe scripts/build_titck_snapshot.py "C:\path\skrs.xlsx" --version 2026-06-23get_drug_safety_status, and the warning lines inside get_turkish_drug_info,
read two official TİTCK lists
(src/health_mcp/data/titck_safety.json):
- Drugs under additional monitoring (▼ black triangle) — TİTCK
dinamikmodul/57 - Licence cancellation list — TİTCK
dinamikmodul/76
Matching is by drug name / active substance (the barcode is empty in most
cancellation records), so product and presentation differences must be confirmed
against the official list. To refresh, download the latest .xlsx files and run:
.\.venv\Scripts\python.exe scripts/build_titck_safety_snapshot.py `
--monitoring "C:\path\ekizleme.xlsx" --cancellations "C:\path\ruhsatiptal.xlsx" `
--monitoring-version 2025-12-19 --cancellations-version 2026-06-19or let scripts/update_data.py below fetch them for you.
TİTCK republishes its lists regularly. Pull the latest data with one command:
.\.venv\Scripts\python.exe scripts/update_data.pyThe script locates and downloads the TİTCK SKRS list (titck_drugs.json),
the full SGK EK-4/A (sgk_ek4a.json, from the consolidated SUT zip) and the
TİTCK safety lists (titck_safety.json: additional monitoring + licence
cancellations), then rebuilds the snapshots.
To schedule it weekly (adjust the paths):
schtasks /Create /SC WEEKLY /D MON /ST 03:00 /TN "health-mcp-update" /TR "C:\path\.venv\Scripts\python.exe C:\path\scripts\update_data.py"
Türk hekim ve eczacılar için ilaç & klinik bilgi MCP sunucusu.
TİTCK · SGK EK-4/A · openFDA · NLM RxClass · PubMed — tek araç setinde;
Claude ve ChatGPT ile çalışır.
English · Türkçe
⚠️ Sorumluluk reddi: Bu sunucunun sağladığı bilgiler yalnızca eğitim amaçlıdır ve tıbbi tavsiye değildir. Tıbbi kararlar için mutlaka bir sağlık profesyoneline danışın.
Asistanına şöyle sor:
- “Parol'un SGK eşdeğeri (muadil) ve geri ödeme durumu nedir?” →
find_drug_equivalents - “Glioscan ek izlemede mi, ruhsatı iptal mi?” →
get_drug_safety_status - “Metformin'in FDA etiketinde uyarılar neler?” →
get_drug_label - “70 yaş, 60 kg, kreatinin 1.4, kadın — kreatinin klerensi kaç?” →
creatinine_clearance - “Amoksisilin için TİTCK kaydı: ATC, firma, reçete türü?” →
get_turkish_drug_info - “Parol'un resmi prospektüsü (KÜB/KT) nedir?” →
get_drug_leaflet - “Amifampridine yurt dışından temin edilebilir mi?” →
find_foreign_supply - “Warfarin ile aspirin birlikte verilebilir mi?” →
check_drug_interactions
Yanıtlar resmî kaynaklardan (TİTCK, SGK, openFDA, NLM, PubMed) gelir — eğitimden tahmin değil.
Tek tıkla iş akışları (MCP Prompts): istemcin (Claude / Cursor vb.) bunları hazır komut olarak gösterir:
ilac_bilgisi— TİTCK kaydı + güvenlik durumu + SGK eşdeğer, tek özette.muadil_ve_geri_odeme— SGK geri ödeme + eşdeğer (muadil) grubu.renal_doz_kontrol— kreatinin klerensi hesabı + böbrek dozu hatırlatması.
| Kullanıcı | Başla | Neden |
|---|---|---|
| Hekim | get_drug_label · creatinine_clearance · get_drug_safety_status |
Endikasyon/doz/uyarı + böbrek dozu + güvenlik bayrakları |
| Eczacı | find_drug_equivalents · get_reimbursement_status · get_drug_safety_status |
Muadil + geri ödeme + güvenlik durumu |
| Araştırmacı | search_medical_literature · get_drug_classes · find_drugs_for_condition |
PubMed + ilaç sınıfları + endikasyon ters arama |
Bu sunucu bir klinik karar aracı değildir; resmî kaynak teyidi ve hekim/eczacı muhakemesi şarttır.
18 araç — tam listeyi açmak için tıkla
| Araç | Açıklama | Kaynak |
|---|---|---|
get_drug_label |
Endikasyon, doz, uyarı, kontrendikasyon, etkileşim, yan etki | openFDA |
get_drug_interactions |
Etiketteki ilaç etkileşimleri bölümü | openFDA |
check_drug_interactions |
İki ilaç arası etkileşim şiddeti (Major/Moderate/Minor) | DDInter |
get_drug_adverse_events |
En sık bildirilen yan etkiler (FAERS) | openFDA |
find_drugs_for_condition |
Hastalığa göre ilaç bulma (ters arama) | openFDA |
get_drug_classes |
Terapötik / ATC / etki mekanizması sınıfları | RxClass |
search_medical_literature |
PubMed'de tıbbi literatür araması | PubMed |
creatinine_clearance |
Kreatinin klerensi (Cockcroft–Gault) | Formül |
body_surface_area |
Vücut yüzey alanı (Mosteller) | Formül |
pediatric_dose |
Kilo bazlı pediatrik doz hesabı | Formül |
find_drug_equivalents |
Eşdeğer (muadil) grup | SGK EK-4/A |
get_reimbursement_status |
Geri ödeme durumu (listede mi) | SGK EK-4/A |
search_turkish_drugs |
Türk ilaç kaydı arama (ad) | TİTCK SKRS |
get_turkish_drug_info |
İlaç bilgisi: ATC, firma, reçete türü | TİTCK SKRS |
get_drug_leaflet |
Resmi KÜB/KT prospektüs linkleri (hekim+hasta) | TİTCK |
find_drugs_by_active_ingredient |
Aynı ATC (etkin madde) ilaçlar | TİTCK SKRS |
find_foreign_supply |
Yurt dışından temin edilebilen etkin maddeler | TİTCK |
get_drug_safety_status |
Ek izleme (▼) + ruhsat iptali | TİTCK |
Sunucu yayında (HuggingFace Spaces + Smithery) — çoğu kullanıcı için hiçbir kurulum gerekmez. İstemcini seç:
- ChatGPT → Settings → Connectors → Advanced → Developer mode'u aç.
- Add connector de ve MCP URL'sini gir:
https://onatozmenn-klinik-mcp.hf.space/mcp - Kaydet. Artık sohbette “Warfarin ile aspirin birlikte verilebilir mi?” gibi sorabilirsin.
Not: Özel MCP araçları yalnızca Developer mode açık hesaplarda görünür.
claude_desktop_config.json dosyasına ekle (Windows:
%APPDATA%\Claude\claude_desktop_config.json · macOS:
~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"klinik": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://onatozmenn-klinik-mcp.hf.space/mcp"]
}
}
}Claude Desktop'ı kapat-aç; araçlar 🔨 menüsünde görünür.
Pro / Max (ve Free — tek connector) planlarında uzak MCP doğrudan bağlanır:
- Customize → Connectors → “+” → Add custom connector.
- MCP URL'sini gir (OAuth alanları boş — sunucu anahtarsız):
https://onatozmenn-klinik-mcp.hf.space/mcp - Add de; sohbette sol alttaki “+” → Connectors'tan Klinik MCP'yi aç.
npx -y @smithery/cli install onatozmen44/klinik-mcp --client claude🛠️ Yerel geliştirme (kendi makinende çalıştır)
Kendi makinende çalıştırmak veya katkıda bulunmak istersen:
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e .
# stdio (yerel Claude Desktop için):
.\.venv\Scripts\python.exe -m health_mcp
# HTTP (ChatGPT / uzak istemciler için):
.\.venv\Scripts\python.exe -m health_mcp --transport http --port 8000İsteğe bağlı: .env.example'ı .env'e kopyalayıp OPENFDA_API_KEY / NCBI_API_KEY
girerek API hız limitlerini yükseltebilirsin (gerekli değil).
Yereldeki stdio'yu Claude'a bağlamak istersen config'de command'i kendi
.venv\Scripts\python.exe yoluna, args'ı ["-m", "health_mcp"]'e ayarla.
Testleri çalıştır:
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\python.exe -m pytest -qAraçları tarayıcıda denemek (MCP Inspector):
npx @modelcontextprotocol/inspector .\.venv\Scripts\python.exe -m health_mcp📚 Veri kaynakları, güncelleme & gelişmiş kullanım
- openFDA — https://open.fda.gov/apis/ (ilaç etiketleri, yan etkiler, geri çağırmalar)
- NLM RxNorm / RxNav / RxClass — https://rxnav.nlm.nih.gov/ (ilaç terminolojisi ve sınıfları)
- PubMed (NCBI E-utilities) — https://www.ncbi.nlm.nih.gov/books/NBK25500/ (tıbbi literatür)
- DDInter 2.0 — https://ddinter.scbdd.com/ (ikili ilaç-ilaç etkileşim; CC BY-NC-SA 4.0, yalnızca ticari olmayan kullanım)
find_drug_equivalents ve get_reimbursement_status araçları, SGK'nın tam
"Bedeli Ödenecek İlaçlar Listesi (EK-4/A)"sını okur (~8.000 ilaç: eşdeğer grup,
barkod, kamu no, listeye giriş tarihi, geri ödeme)
(src/health_mcp/data/sgk_ek4a.json).
Tam liste, SGK'nın konsolide "İşlenmiş Güncel SUT" zip'i içinde public olarak
yayımlanır (EK-4 LİSTELERİ/EK-4A BEDELİ ÖDENECEK İLAÇLAR LİSTESİ.xlsx).
scripts/update_data.py bunu otomatik bulur, indirir ve işler.
TL fiyatı notu: EK-4/A barkod + eşdeğer + geri ödeme içerir ama net TL perakende fiyatı içermez (fiyat sütunları iskonto oranıdır). TİTCK de barkod bazlı retail TL fiyatını public yayımlamaz (
dinamikmodul/100yalnızca EUR referans, barkodsuz). Gerçek TL fiyatı için ticari bir ilaç DB'si gerekir.
Manuel güncelleme (zip'ten çıkardığın EK-4/A ile):
.\.venv\Scripts\python.exe scripts/build_sgk_snapshot.py "C:\yol\EK-4A.xlsx" --version "2026"search_turkish_drugs, get_turkish_drug_info ve
find_drugs_by_active_ingredient araçları, TITCK SKRS E-Reçete listesinin tüm
aktif ürünlerini (~7.900 ilaç: ad, barkod, ATC, firma, reçete türü, temel ilaç
listesi) okur
(src/health_mcp/data/titck_drugs.json).
Listeyi güncellemek için:
- En güncel
.xlsx'i indir: titck.gov.tr → dinamikmodul/43 "SKRS E-Reçete İlaç ve Diğer Farmasötik Ürünler Listesi". - Snapshot'ı üret:
.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\python.exe scripts/build_titck_snapshot.py "C:\yol\skrs.xlsx" --version 2026-06-23get_drug_safety_status aracı ve get_turkish_drug_info içindeki uyarı
satırları, iki resmî TİTCK listesini okur
(src/health_mcp/data/titck_safety.json):
- Ek İzlemeye Tabi İlaçlar (▼ kara üçgen) — TİTCK
dinamikmodul/57 - Ruhsat İptal Listesi — TİTCK
dinamikmodul/76
Eşleşme ilaç adı/etkin madde bazlıdır (ruhsat iptalinde barkod çoğu kayıtta
boştur), bu yüzden ürün/sunum farkları için resmî listeden teyit edilmelidir.
Listeyi güncellemek için en güncel .xlsx'leri indirip:
.\.venv\Scripts\python.exe scripts/build_titck_safety_snapshot.py `
--monitoring "C:\yol\ekizleme.xlsx" --cancellations "C:\yol\ruhsatiptal.xlsx" `
--monitoring-version 2025-12-19 --cancellations-version 2026-06-19veya tek komutla otomatik (aşağıdaki scripts/update_data.py bunu da çeker).
TİTCK listesi düzenli güncellenir. En güncel veriyi tek komutla çek:
.\.venv\Scripts\python.exe scripts/update_data.pyScript TİTCK SKRS listesini (titck_drugs.json), SGK tam EK-4/A'yı
(sgk_ek4a.json, konsolide SUT zip'inden) ve TİTCK güvenlik listelerini
(titck_safety.json: ek izleme + ruhsat iptali) kendi bulup indirir ve yeniden
üretir.
Haftalık zamanlamak için (yolları kendine göre düzenle):
schtasks /Create /SC WEEKLY /D MON /ST 03:00 /TN "health-mcp-update" /TR "C:\yol\.venv\Scripts\python.exe C:\yol\scripts\update_data.py"