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
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っている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がつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
NINOVA_USERNAME envNINOVA_MAIL_USERNAME envNINOVA_LIBRARY_NAME envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月9日にチェック
レジストリ名は、リポジトリを所有する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, arr-mcp
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況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.
One server, 40 tools, the whole media stack: *arrs, Jellyfin, Plex, Seerr, Cleanuparr, downloaders
作者のリポジトリから書かれたとおりにコピーしたものです。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
冒頭だけを表示しています。続きはリポジトリで読めます