Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
İTÜ Ninova, OBS, Portal, kampüs servisleri ve kütüphane için MCP sunucusu
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
NINOVA_USERNAME, NINOVA_PASSWORD, NINOVA_MAIL_USERNAME, NINOVA_MAIL_PASSWORD, NINOVA_LIBRARY_NAME, NINOVA_LIBRARY_ID, NINOVA_LIBRARY_PIN비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"itu": {
"command": "uvx",
"args": [
"itu-mcp"
],
"env": {
"NINOVA_USERNAME": "your-value",
"NINOVA_PASSWORD": "your-value",
"NINOVA_MAIL_USERNAME": "your-value",
"NINOVA_MAIL_PASSWORD": "your-value",
"NINOVA_LIBRARY_NAME": "your-value",
"NINOVA_LIBRARY_ID": "your-value",
"NINOVA_LIBRARY_PIN": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add itu --env NINOVA_USERNAME=your-value --env NINOVA_PASSWORD=your-value --env NINOVA_MAIL_USERNAME=your-value --env NINOVA_MAIL_PASSWORD=your-value --env NINOVA_LIBRARY_NAME=your-value --env NINOVA_LIBRARY_ID=your-value --env NINOVA_LIBRARY_PIN=your-value -- uvx itu-mcp실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"itu": {
"command": "uvx",
"args": [
"itu-mcp"
],
"env": {
"NINOVA_USERNAME": "your-value",
"NINOVA_PASSWORD": "your-value",
"NINOVA_MAIL_USERNAME": "your-value",
"NINOVA_MAIL_PASSWORD": "your-value",
"NINOVA_LIBRARY_NAME": "your-value",
"NINOVA_LIBRARY_ID": "your-value",
"NINOVA_LIBRARY_PIN": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"itu": {
"type": "stdio",
"command": "uvx",
"args": [
"itu-mcp"
],
"env": {
"NINOVA_USERNAME": "your-value",
"NINOVA_PASSWORD": "your-value",
"NINOVA_MAIL_USERNAME": "your-value",
"NINOVA_MAIL_PASSWORD": "your-value",
"NINOVA_LIBRARY_NAME": "your-value",
"NINOVA_LIBRARY_ID": "your-value",
"NINOVA_LIBRARY_PIN": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
NINOVA_USERNAME envNINOVA_MAIL_USERNAME envNINOVA_LIBRARY_NAME env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 8일 점검
레지스트리 이름이 GitHub 계정 yatuk 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: NINOVA_PASSWORD, NINOVA_MAIL_PASSWORD, NINOVA_LIBRARY_ID, NINOVA_LIBRARY_PIN
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.4.0)은 12일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv)도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, MIDAS Gen NX / Civil NX
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:↓ 주간 다운로드i★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Read and carefully change the model open in MIDAS Gen NX or Civil NX on this PC.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
İTÜ MCP
Ninova, OBS, Portal, kütüphane ve ders arşivini yapay zeka asistanına bağla. Sonra sadece sor.
Kur · Örnekler · Sık sorulanlar · Tüm araçlar
Sesli ve tam çözünürlüklü hali: docs/demo.mp4
İTÜ MCP is an unofficial, open source Model Context Protocol server for students of Istanbul Technical University (İTÜ). It runs on your own computer and lets an AI assistant such as Claude, ChatGPT, Cursor or Codex read İTÜ's systems for you: the Ninova LMS (courses, assignments, files, announcements), İTÜ Moodle and the physics, chemistry and math pool course sites (syllabi, guides, announcements), OBS (grades, schedule, registration status, transcript, graduation progress), the student Portal, the library catalog and a public archive of past course offerings.
pipx install itu-mcp, or add it to Claude Code as a plugin: claude plugin marketplace add yatuk/itu-mcp.The rest of this page is in Turkish. Setup: 3 adımda kur. Full tool list: docs/advanced.md. Security model: docs/security.md. This project is not affiliated with İTÜ.
Ödev için Ninova'ya, not için OBS'ye, yemek için Portal'a girmek yerine asistanına yazıyorsun, o da gerçek veriyi çekip cevaplıyor.
İTÜ MCP bilgisayarında çalışan küçük bir programdır. Claude, Cursor veya Codex gibi bir asistana İTÜ sistemlerini okuma yeteneği kazandırır. Kod yazmayı bilmen gerekmez, kurup soru sorman yeterli.
| Sen yazarsın | O bakar |
|---|---|
| "Bu hafta hangi ödevlerim var?" | Ninova |
| "Vize notlarım açıklandı mı?" | OBS |
| "Bugün yemekte ne var?" | Portal |
| "Bu dersi geçen yıl kim verdi, kaç kişi AA aldı?" | Ders arşivi |
| "Kütüphanede bu kitap var mı?" | Kütüphane kataloğu |
| "Ödevim için uyku ve akademik başarı üzerine makale bul" | Makale indeksi, kütüphane veritabanları |
| "Okunmamış maillerimi özetle" | İTÜ Mail |
| "FIZ 102E izlencesini ve duyurularını oku" | Moodle ve havuz siteleri |
| "Bu şubede yer açılınca haberim olsun" | Kontenjan takibi |
| "Ders programımı telefonumun takvimine ekle" | Takvim dosyası (.ics) |
Şifren bilgisayarından çıkmaz. Program yalnızca İTÜ'nün kendi sunucularıyla konuşur.
İstanbul Teknik Üniversitesi ile resmi bir bağlantısı yoktur.
Python 3.11 veya üstü gerekir. Yüklü değilse python.org adresinden kurabilirsin.
1. Programı kur
pipx install "itu-mcp[keyring]"
pipx yoksa pip install --user "itu-mcp[keyring]" da olur.
2. Giriş bilgilerini kaydet ve asistanına bağla
itu-mcp setup
itu-mcp connect
itu-mcp setup İTÜ e-postanı ve şifreni sorar. Şifre yazarken ekranda görünmez ve hiçbir dosyaya yazılmaz, işletim sisteminin anahtar zincirine kaydedilir (Windows Kimlik Bilgileri Yöneticisi, macOS Anahtar Zinciri, Linux'ta GNOME Keyring ya da KWallet).
itu-mcp connect sunucuyu Claude Desktop, Claude Code ve Cursor ayarlarına şifresiz olarak ekler. Diğer ayarlarına dokunmaz, dosyanın yedeğini alır. Ne yapacağını önce görmek istersen itu-mcp connect --dry-run yaz. Tek bir asistan için: itu-mcp connect claude-desktop (ya da claude-code, cursor).
Anahtar zinciri istemiyorum ya da Codex kullanıyorum
Şifreyi asistanın ayarına elle de yazabilirsin.
Claude Code
claude mcp add itu itu-mcp -e NINOVA_USERNAME=ad.soyad@itu.edu.tr -e NINOVA_PASSWORD=sifren
Codex CLI
codex mcp add itu --env NINOVA_USERNAME=ad.soyad@itu.edu.tr --env NINOVA_PASSWORD=sifren -- itu-mcp
Claude Desktop ve Cursor için hazır ayar dosyaları examples/ klasöründe. Adım adım anlatım: docs/installation.md.
3. Sor
Asistanı yeniden başlat ve yaz:
Ninova'daki derslerimi listele
Bir liste geldiyse kurulum tamam.
Çalışmadı, ne yapmalıyım?
Önce şunu çalıştır:
itu-mcp doctor
Her satır OK, UYARI ya da HATA ile başlar ve OK olmayan satırın altında çözümü yazar. Girişi de denemesi için itu-mcp doctor --online yaz.
ad.soyad@itu.edu.tr, yalnızca ad.soyad değil).pipx kurulumdan sonra yeni bir terminal ister.Şifre vermek istemiyor musun? Ders programı, final tarihleri, not dağılımları, ders arşivi, mekik saatleri ve kütüphane kataloğu gibi herkese açık bilgiler şifresiz de çalışır.
itu-mcp setupadımını atlayıp yalnızcaitu-mcp connectçalıştırman yeterli.
Aşağıdakiler Claude Code'a yazılmış örnek sorular. Sen kendi cümlelerinle sorabilirsin, hangi aracın çağrılacağını asistan seçer. Çıktılar örnektir, sende kendi verin görünür.
Ödev takibi
> Bu hafta hangi ödevlerimin teslimi var?
● itu · get_upcoming_deadlines
Bu hafta 2 teslimin var:
BLG 223E Ödev 3 Perşembe 23:59, 2 gün kaldı Henüz yüklenmemiş
MAT 210E Proje raporu Pazar 23:59, 5 gün kaldı Yüklendi
Dersi kim verdi, nasıl geçti?
> BLG 223E geçen güz nasıl geçmiş?
● itu · archive_grade_distribution
2025-2026 Güz, 176 öğrenci:
AA 9 CC+ 19 BA+ 12 CC 21 BB+ 18 FF 38
En kalabalık not FF (38 kişi). AA alan 9 kişi var.
Kayıt haftası
> 12469, 12554 ve 12583 CRN'leri
çakışıyor mu?
● itu · check_course_conflicts
1 çakışma buldum:
Salı 08:30-10:29 BLG 223E ile BLG 345E üst üste
12583 (BLG 422E) sorunsuz. BLG 345E için başka şube arayayım mı?
Ön şart kontrolü
> BLG 335E'yi bu dönem alabilir miyim?
● itu · explain_course_eligibility
Henüz alamazsın.
Gereken: BLG 223E (en az DD) Durumun: BLG 223E bu dönem kayıtlı, notu açıklanmamış
BLG 223E'yi geçersen gelecek dönem açılıyor.
Günlük işler
> Bugün yemekte ne var, mekik kaçta?
● itu · get_cafeteria_menu ● itu · get_shuttle_schedule
Öğle yemeği: Mercimek çorbası, tavuk sote, pirinç pilavı, sütlaç
Ayazağa'dan sonraki mekik 13:30.
Not ve ortalama
> Bu dönem hepsinden BB alırsam
ortalamam kaç olur?
● itu · obs_simulate_cumulative_gpa
Şu anki GANO: 2.08 Dönem tahmini: 3.00 Dönem sonu GANO: 2.74
Tekrar aldığın 2 ders eski notun yerine sayıldı, 1 ders yeni eklendi.
Bu bir tahmin, resmi ortalama OBS'de açıklanır.
Daha fazla fikir:
Asistanın / menüsünde hazır akışlar da var: weekly_briefing (haftalık özet), plan_next_term (gelecek dönem planı), registration_week (kayıt haftası kontrolü), check_course_eligibility, research_course ve gpa_scenario.
Şifrem nereye gidiyor?
Hiçbir yere. Program senin bilgisayarında çalışır ve şifreni yalnızca İTÜ'nün kendi giriş sayfasına gönderir, tıpkı tarayıcının yaptığı gibi. Arada bizim ya da başkasının bir sunucusu yoktur. Kod açık, istersen kendin bakabilirsin.
Bu resmi bir İTÜ uygulaması mı?
Hayır. Öğrenciler tarafından yazılmış açık kaynak bir projedir, İTÜ ile resmi bağlantısı yoktur. Yalnızca kendi hesabınla kullan.
Hesabımda bir şeyi değiştirebilir mi?
Neredeyse her şey yalnızca okur. İki istisna var ve ikisi de senin açık onayın olmadan çalışmaz:
İkisinde de, asistanın destekliyorsa, program göndermeden hemen önce sana doğrudan bir onay penceresi açar: hangi dosya, hangi ödev, hangi CRN'ler yazılacak, hangileri taslaktan çıkacak. Asistanın kendi kendine "onaylıyorum" demesi bu pencereyi atlatamaz. Onaylamazsan hiçbir şey gönderilmez.
Ders kaydı yapmaz, ders bırakmaz, mail göndermez.
Verdiği cevaba güvenebilir miyim?
Veriyi doğrudan İTÜ sistemlerinden çeker, uydurmaz. Yine de OBS bazı bilgileri hesaba göre farklı döndürebiliyor. Bir veri eksikse araç bunu açıkça söyler. Kayıt, mezuniyet ve not gibi önemli kararlarda son sözü her zaman OBS'nin kendi sayfası söyler.
Hangi asistanlarla çalışıyor?
MCP destekleyen her istemciyle: Claude Code, Claude Desktop, Cursor, Codex ve benzerleri. ChatGPT ya da Claude.ai gibi web arayüzleri için uzak sunucu kurulumu gerekir, anlatımı docs/advanced.md içinde.
Yer açılınca haber verebilir mi?
Kısmen. Dolu bir şubenin CRN'ini izleme listesine ekleyebilirsin (watch_course_sections), sonra "izlediğim şubelerde yer açıldı mı" diye sorduğunda son kontrolden bu yana ne değiştiğini söyler. Giriş gerektirmez.
Ama program arka planda çalışmaz ve kendiliğinden bildirim göndermez. Kontenjan yalnızca sen sorduğunda okunur. Düzenli takip istiyorsan asistanında birkaç dakikada bir bu soruyu soran zamanlanmış bir görev kurman gerekir.
Araç sayısı çok fazla, azaltabilir miyim?
Evet. Araçlar gruplara ayrılmış durumda
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요