Bu proje, Yükseköğretim Kurumu'nun (YÖK) sunduğu YÖKATLAS platformundaki verilere ve arama fonksiyonlarına LLM'ler (Büyük Dil Modelleri) tarafından erişilebilmesini sağlayan bir Model Context Protocol (MCP) sunucusudur.
Proje Tanıtımı
YÖKATLAS, üniversite adayları ve ilgililer için lisans ve önlisans programları hakkında detaylı istatistiksel bilgiler sunan resmi bir kaynaktır. Bu MCP sunucusu, Python tabanlı 'yokatlas-py' kütüphanesini kullanarak YÖKATLAS verilerini çekme ve LLM'lerin bu bilgilere standart bir "araç" (tool) arayüzü üzerinden erişmesini mümkün kılar. Özellikle Claude Desktop gibi MCP destekleyen LLM istemcileriyle entegrasyon için tasarlanmıştır.
Başlıca Özellikler
- YÖKATLAS Veri Erişimi: Lisans ve önlisans programlarının detaylı bilgilerine program kodu ve yıl bazında erişim.
- Program Arama (Tercih Sihirbazı): Çeşitli kriterlere (üniversite adı, program adı, puan/başarı sırası aralığı, şehir, burs durumu vb.) göre lisans ve önlisans programlarını arama.
- LLM Araç Entegrasyonu: YÖKATLAS fonksiyonlarını, MCP protokolünü destekleyen LLM'lerin kullanabileceği araçlar olarak sunma.
- FastMCP Kullanımı: Sunucu altyapısı için 'FastMCP' çatısı kullanılarak hızlı ve standartlara uygun bir geliştirme.
Kurulum Adımları
Bu MCP sunucusunu kullanabilmek için Python'ın kurulu olması gerekmektedir. Entegre etmek istediğiniz MCP istemcisine bağlı olarak kurulum adımları değişebilir.
-
Proje Dosyalarını İndirin: Projeyi GitHub deposundan bilgisayarınıza klonlayın veya indirin:
git clone https://github.com/saidsurucu/yokatlas-mcp.git cd yokatlas-mcp -
'uv' ve 'fastmcp' CLI Kurulumu: 'uv' hızlı bir Python paket yöneticisidir ve 'fastmcp' CLI ise MCP sunucularını yönetmek için kullanılır. Bunları kurmanız önerilir (özellikle Claude Desktop gibi istemcilerle entegrasyon için):
- macOS/Linux: 'curl -LsSf https://astral.sh/uv/install.sh | sh'
- Windows (PowerShell): 'powershell -c "irm https://astral.sh/uv/install.ps1 | iex"'
- Alternatif (pip): 'pip install uv fastmcp' Kurulumdan sonra terminalinizi yeniden başlatmanız gerekebilir.
-
MCP İstemcisine Entegrasyon: MCP sunucusunu kullanacağınız LLM istemcisinin (örneğin Claude Desktop) ayarları üzerinden sunucuyu tanıtmanız gerekir.
-
Önerilen (Claude Desktop için 'fastmcp install'): Proje dizinindeyken aşağıdaki komutu çalıştırın. Bu komut gerekli bağımlılıkları otomatik kurar ve sunucuyu Claude Desktop'a ekler.
fastmcp install yokatlas_mcp_server.py --name "YOKATLAS API Servisi" --with yokatlas-py --with beautifulsoup4 --with setuptools -
Manuel (Çoğu MCP İstemcisi İçin): MCP istemcisinin yapılandırma dosyasına (genellikle bir JSON dosyası) sunucu tanımını eklemeniz gerekir. Bu tanım, istemcinin sunucuyu nasıl başlatacağını belirtir. Aşağıdaki gibi bir yapılandırma bloğu eklemeniz gerekebilir (dosya yolu ve diğer ayarlar istemciye göre değişir):
// MCP istemcisinin yapılandırma dosyasından bir bölüm (örneğin, claude_desktop_config.json'daki "mcpServers" objesi içinde) { "YOKATLAS API Servisi": { // MCP istemcisinde görünecek sunucu adı "command": "uv", // Sunucuyu başlatacak komut "args": [ // Komutun parametreleri "run", // uv'nin 'run' komutu "--with", "beautifulsoup4", // Sunucunun ihtiyaç duyduğu Python paketleri "--with", "fastmcp", "--with", "setuptools", "--with", "yokatlas-py", "fastmcp", "run", // fastmcp'nin 'run' komutu "/tam/proje/yolunuz/yokatlas-mcp/yokatlas_mcp_server.py" // Sunucu script'inin TAM SİSTEM YOLU // Windows'ta yol "C:\\Kullanicilar\\...\\yokatlas_mcp_server.py" gibi çift ters taksim \\ içerebilir. ] } }Önemli: '/tam/proje/yolunuz/yokatlas-mcp/yokatlas_mcp_server.py' kısmını, projeyi indirdiğiniz gerçek yolla değiştirin.
-
Sunucu Yapılandırması
MCP sunucusu, istemciden gelen istekleri dinlemek üzere başlatılır. Yapılandırma, MCP istemcisinin sunucuyu nasıl çalıştıracağını (hangi komutu ve hangi parametreleri kullanacağını) belirtmektir. Yukarıdaki manuel kurulum adımında gösterilen 'command' ve 'args' bilgisi, MCP istemcisinin sunucuyu başlatması için gereken temel yapılandırmadır. Sunucu başlatıldığında MCP protokolüne uygun şekilde istemciyle iletişim kurmaya hazırdır.
Temel Kullanım
Sunucu MCP istemcisine başarıyla entegre edildikten sonra, istemcinin arayüzünde (örneğin, Claude Desktop'ta araçlar listesi) "YOKATLAS API Servisi" gibi bir isimle görünmelidir.
Kullanım, entegre ettiğiniz LLM'e soru sormak şeklindedir. LLM, sorunuzun YÖKATLAS verileri gerektirdiğini anladığında, otomatik olarak bu sunucu üzerindeki ilgili araçları çağıracaktır.
Örneğin, LLM'e şunları sorabilirsiniz:
- "2023 yılında Hacettepe Üniversitesi Tıp Fakültesi'nin (program kodu 104810595) doluluk oranları, yerleşen son kişinin puanı ve başarı sırası gibi detaylarını getirir misin?" (Bu soru 'get_bachelor_degree_atlas_details' aracını tetikleyebilir).
- "Puan türü SAY olan, İstanbul'da yer alan ve başarı sırası 20000 ile 50000 arasında olan devlet üniversitelerindeki Bilgisayar Mühendisliği programlarını listeler misin?" (Bu soru 'search_bachelor_degree_programs' aracını tetikleyebilir).
- "Ankara'daki önlisans programlarını, puanım 300-350 arasındaysa hangi programlara girebileceğimi görmek için arama yapabilir misin?" (Bu soru 'search_associate_degree_programs' aracını tetikleyebilir).
LLM, araç çağrısının sonucunu alacak ve size anlamlı bir yanıt sunacaktır.
信息
分类
AI与计算