Next.js kod tabanları için MCP sunucusu

Agent’ınız kodun nerede olduğunu tahmin etmeyi bıraksın.

Next.js projenizi bir kez okur, kodunuzun zaten uyduğu kuralları öğrenir ve “bu işi hangi dosya sahipleniyor” sorusunu tek çağrıda yanıtlar — altı grep ve her prompt’ta yüklenen 11.000 token’lık talimat dosyası yerine.

.mcp.json
{
  "mcpServers": {
    "nextjs-mcp-architecture": {
      "command": "npx",
      "args": ["-y", "nextjs-mcp-architecture@latest"]
    }
  }
}
ya da projeye ekleyin
npm i -D nextjs-mcp-architecture

cwd, ortam değişkeni yokSüresiz ücretsiz paketNode 20+

modül bağımlılıkları
çift yönlüdöngü
drag a module · click to inspect
0 ms
soğuk indeks, 2.100 dosya
0 ms
sıcak başlangıç
0.0 ms
arama sorgusu
0
kurulan paket
Tahmin değil, ölçüm

Tek bir dosyayı bulmak 16.372 token tutuyor. 293 tutmalı.

Bir geliştiricinin gerçekten yazacağı sekiz prompt, dub üzerinde çalıştırıldı — herkesin klonlayabileceği, 3.593 dosyalık açık kaynak bir Next.js ürünü. Bir kez bugün bir agent’ın aradığı gibi, bir kez bu sunucu üzerinden. Aynı depo, aynı görevler, aynı puanlama.

16.372
arayarak bulmanın token maliyeti
293
ücretsiz pakette token
56×
görev başına daha az context
6/8
Ücretsiz pakette doğru dosya — arama 8’de 6 buldu
Tek prompt, iki yol
sen

Görevi yaz…

arayarak bulmak0token
  • glob *button*+755
  • grep "upgrade plan button" + "billing upgrade"eşleşme yok
  • kelimeleri tek tek grep (cümle bulunamadı)+25.496
  • 3 dosya okundu+8.921
bu sunucuya sormak0token
  • resolve_task_context+294
Aynı cevap. 120× daha az context.

Görevler ölçümde İngilizce yazıldı — kod tabanı İngilizce. Burada okunabilirlik için çevrildi; rakamlar ölçülen koşunun kendisi.

Geliştirici ne sorduAramaÜcretsizPro
Kısa bağlantıyı kopyalayan butonu nereden değiştiriyorum?3.120307240
QR kod penceresinin yanlış boyutta indirdiği hatayı düzelt21.197267224
Sekme değiştirince analiz tarih aralığı seçimi sıfırlanıyor30.706287241
Bağlantılar tablosuna bir sütun ekle27.782313248
Özel alan adı doğrulama akışı nerede uygulanmış?4.156286234
Faturalandırma sayfasındaki paket yükseltme butonu hiçbir şey yapmıyor35.172294241
Bir etiketin alabileceği renkleri nereden düzenliyorum?4.621301240
Ekip davet formu, e-posta zaten davet edilmişken hata göstermiyor4.221286230
görevi sahiplenen dosyayı döndürdüdöndürmediÇubuk uzunluğu, aramanın harcadığı miktar — en geniş satıra göre.

Görevler ölçümde İngilizce yazıldı — kod tabanı İngilizce. Burada okunabilirlik için çevrildi; rakamlar ölçülen koşunun kendisi.

token nereye gidiyor

Faturalandırma sayfasındaki paket yükseltme butonu hiçbir şey yapmıyor

  • glob *button*755
  • grep "upgrade plan button" + "billing upgrade"0
  • kelimeleri tek tek grep (cümle bulunamadı)25.496
  • 3 dosya okundu8.921
  • resolve_task_context294

Geliştiricinin kendi cümlesiyle arama hiçbir şey döndürmüyor — insanlar davranışı tarif eder, kod ise şeylere isim verir. Bunun üzerine agent kelimeleri tek tek aramaya düşüyor ve bunun gibi sıradan kelimeler kod tabanının büyük bir bölümüyle eşleşiyor. Context işte bu geri düşüşte harcanıyor.

iki paket neyi değiştiriyor

ölçülen projede 3.593 kaynak dosya

Her dosya, her pakette adı ve yolu ile indekste bulunur — indeksin hiç duymadığı bir dosya hiçbir fiyata döndürülemez, dolayısıyla ücretli paketlerin sattığı şey bu değildir.

Paketin yükselttiği şey kaç dosyanın içinin okunduğudur: ücretsiz paket bunlardan 1.500’ünü, ağacın tamamına yayarak okur ve bunu cevabında açıkça söyler. Bu projede fark 8 görevde bir görev ediyor — ücretsiz 6, Pro 7 buluyor — ve Pro, dosyanın yalnızca adını bilmek yerine içini okuduğu için 293 yerine 237 token’da yanıtlıyor.

Günde 12 agent görevi, yirmi bir iş günü

Yalnızca keşif. Model fiyatları değişir ve sizinki farklı olabilir — ölçüm token sayılarıdır; dolar tutarı ise o ölçümün çalıştığı gün Claude Opus 5 girdi fiyatıyla (milyon token başına $5.00) okunmuş hâlidir. Büyük bir talimat dosyası olan proje bunu her prompt’ta üstüne öder.

$20.63
$0.37

Karşılaştırma tarafı nasıl kuruldu. İstekteki isimlerle glob, geliştiricinin kendi cümlesiyle grep, cümle tutmadığında kelimeleri tek tek grep, sonra en umut verici üç dosyayı oku — her adım gerçekten çalıştırıldı ve gerçek çıktısı ölçüldü; adaylar da bir insanın neyi açacağına karar verdiği gibi sıralandı. Bir karşılaştırma ancak karşı tarafa en iyi şansı verildiyse yayımlanmaya değer; bu yüzden isabet burada berabere: her iki tarafta da 8 görevin 6 tanesi, üstelik kısmen farklı görevlerde. Değişen şey sormanın maliyeti.

Ölçülen şey, soruyu yanıtlamak için gereken context — herhangi bir agent’ın herhangi bir gün harcadığı miktar değil; o tekrarlanabilir olmazdı. Tüm yöntem, her görev ve çekincelerya da kendi projenizde npm run benchmark komutunu çalıştırın.

Ekran görüntüsü değil

Öğrendiği her şey, tek bir yerel sayfada.

Pano sizin makinenizde çalışır ve agent’ınızın sorguladığı indeksin aynısını okur. Yukarıdaki grafik, canlı çalışan o görüntüleyicinin kendisi.

Aşağıdaki proje uydurma, raporladığı her şey de öyle — gerçek bir müşterinin modül adlarını ve bağımlılıklarını yayımlamak bize düşmez. Alacağınız bulgulara benzesin diye orta ölçekli bir ticaret uygulaması gibi şekillendirildi.

bulgular
  • errorsrc/components/PriceTag.tsx:14

    process.env.STRIPE_SECRET_KEY tarayıcıda tanımsız. İstemci koduna yalnızca NEXT_PUBLIC_* değişkenleri ulaşır.

  • warningsrc/app/account/OrderList.tsx:22

    useState için 'use client' gerekiyor. Bu dosyayı import eden hiçbir dosya direktifi tanımlamıyor, dolayısıyla bir Server Component gibi görünüyor.

kurallar
  • uygulananpage ve layout dosyalarının %97’si (61 dosya) server component.
    istisna: src/app/blog/preview/page.tsx
  • uygulananhook dosyalarının %94’ü (49 dosya) use* olarak adlandırılmış.
    istisna: src/hooks/cartStore.ts
  • gözlenenBileşen dosyalarının %71’i (218 dosya) PascalCase, Button.tsx gibi.
kopyaya yakın dosyalar
  • 89% benzer
    src/app/shop/_components/ProductFilterBar.tsx
    src/app/admin/_components/CatalogFilterBar.tsx
Nasıl çalışır

Sizin projenizi öğrenir. Bizimkini dayatmaz.

Genel amaçlı linter’lar başkasının kurallarını taşır ve hiç görmedikleri bir kod tabanı hakkında aşağı yukarı tesadüf kadar sık haklı çıkar. Bir kuralı söylemeye değer kılan şey, kendi deponuzdan gelen kanıttır — üstelik doğrulayabilmeniz için sayısı da yanında.

01

Projeyi bulur

Sırayla dokuz sinyal, her biri gerçek bir Next.js uygulaması kanıtına karşı puanlanır. Monorepo’lar doğru uygulamaya çözülür; next’i peer olarak listeleyen bir UI kütüphanesi ise doğru şekilde uygulama sayılmaz.

02

Bir kez okur

Alan ağırlıklı BM25 ile saf TypeScript indeks — native bağımlılık yok, yani npx bir derleme adımında patlayamaz. Ayrıca alan sözlüğünüzü kendi çeviri dosyalarınızdan öğrenir; “invoice” aramasının fin/ar adlı bir modülü bulması bu sayede olur.

03

Yalnızca kanıtlayabildiğini söyler

Kurallar Wilson güven sınırına tabidir. Framework doğruluk kuralları ise her zaman geçerlidir, çünkü onlar sizin tarzınız hakkında görüş değil Next.js hakkında olgulardır.

Bir bulgu şöyle görünür

Bu projedeki hook dosyalarının %94’ü (50’de 47) şu adlandırmayı kullanıyor: use*.ts ve şurada duruyor: src/hooks. src/utils/fetchUser.ts bir hook tanımlıyor ve bu desenden sapıyor. Uyumlu örnek: src/hooks/useOrders.ts

Sayı, iddiayı doğrulanabilir kılar. Uyumlu örnek ise agent’ın kuralla tartışmak yerine deseni kopyalamasını sağlar.

Yapıştırdıktan sonra ne oluyor

Tek bir gezinti, ve projeyi tanıyor.

Kodun çalıştırdığı sırayla altı adım — rakamlar, ölçülen projenin soğuk indeksinden gerçekten çıkanlar. Burada hiçbir şey arka planda çalışmıyor ve makinenizden hiçbir şey çıkmıyor.

Kurulumdan indekse
01

npx paketi indiriyor

$
3 paket · native derleme yok
02

Hangi projeye baktığını çözüyor

9 sinyal, gerçek bir Next.js uygulaması kanıtına karşı puanlanır

  • agent yapılandırması0
  • çalışma dizini0
  • npm ön eki0
  • andığınız yol0
03

Ağacı bir kez dolaşıyor

0
kaynak dosya
0
atlandı
yalnızca stat — henüz dosya açılmadı
04

Bulduğunu okuyup ağırlıklandırıyor

BillingDetailPanel
billingdetailpanel
ad ×5 · yol ×5 · gövde ×1
05

Bu projenin ne yaptığını öğreniyor

alan sözcükleri, kendi i18n’inizden
“invoice” → app/fin/ar
kurallar, kanıt yettiği yerde
hook’ların %94’ü use*.ts (50’de 47)
uygulanır · Wilson ≥ 0,80
06

Hazır

697 ms
soğuk kurulum
83 ms
sonraki her başlangıç
0,22 ms
sorgu başına

Hepsi yerelde. Makineden hiçbir şey çıkmadı.

0 kaynak dosyaad ×5 · yol ×5 · gövde ×1“invoice” → app/fin/ar
İkinci yapıştırma

Agent’ınıza artık aramasına gerek olmadığını söyleyin.

Sunucuyu kurmak bir agent’ın alışkanlıklarını değiştirmez. grep yapmayı zaten bilen bir agent, talimatları ona daha iyi bir yol olduğunu söylemedikçe grep yapmaya devam eder — keşif maliyetini bir kez ödemekle her prompt’ta ödemek arasındaki fark budur.

AGENTS.md
## Kodu bulma

Herhangi bir şey okumadan ya da aramadan **önce** `resolve_task_context` aracını
görevi sade bir dille yazarak çağır. Görevi sahiplenen dosyaları, onlara uygulanan
kuralları ve değişikliği doğrulayan komutu döndürür.

- Bir özelliği bulmak için glob ya da grep kullanma. Bu sunucunun ortadan
  kaldırmak için var olduğu maliyet tam olarak budur.
- Bir şeyin nerede tanımlandığını bulmak için dosya açmak yerine
  `find_symbol` kullan.
- URL ile adreslenen her şey için `get_route_context` kullan.
- İşi bitirdim demeden önce değiştirdiğin dosyalarda `check_conventions` çağır.

grep'e yalnızca bir aracın cevabında indeksin kısmi olduğunu söyleyen
`degradations` alanı varsa ya da dosyayı zaten kesin olarak biliyorsan dön.

Bunu kurulum bloğunun yanına yapıştırın; yukarıdaki benchmark o zaman gerçekten aldığınız davranış olur.

Bilerek kısa: bu dosyalar her prompt’ta yüklenir, dolayısıyla buraya konacak bir sayfa dolusu metin sunucunun kazandırdığından fazlasını harcardı.

AGENTS.md, CLAUDE.md ya da .github/copilot-instructions.md dosyanıza koyun.

Tüm dokümantasyonu okuyun
Ne kazandırıyor

Kendi rakamlarınızı girin.

Kaydırıcılar benchmark’ın çıktığı yerden başlıyor. Kendi projenize göre oynatın — sonuç bir tahmindir ve öyle etiketlenmiştir.

onsuz, aylık
6,141,744
onunla
174,636
yaklaşık 5,967,108 token daha az

3.593 dosyalık bir projede ölçüldü, sizinkine uygulandı — yani bu, kod tabanınız için bir tahmindir, ölçüm değil. Talimat dosyası burada tam olarak sayılıyor; pratikte prompt cache bunun bir kısmını geri kazandırır.

Fiyatlar

Ücretsiz paket tek başına gerçekten işe yarıyor.

Ödediğiniz şey dosya bulmak değil, mimariyi ölçmek ve yönetmek. Tek istediğiniz tahmin etmeyi bırakan bir agent’sa Ücretsiz pakette kalın.

Ücretsiz

$0süresiz

Agent’ın tahmin etmeyi bırakması için gereken her şey.

  • Sıfır konfigürasyonla proje tanıma
  • Kanıtıyla birlikte öğrenilmiş kurallar
  • Dokuz keşif ve doğrulama aracı
  • Next.js doğruluk denetimleri
  • Her dosya indekslenir, 1.500’ü baştan sona okunur
Kur

Basic

En çok seçilen
$5aylık

ya da yılda $50

Mimariyi sorgulamakla kalmayın, görün.

  • Ücretsiz paketteki her şey
  • Yerel bağımlılık panosu
  • Markdown ve HTML raporlar
  • 15.000 dosya baştan sona okunur
  • Kurallar yalnızca gözlenmez, uygulanır
Başla

Pro

$10aylık

ya da yılda $100

Ölçün ve yönetin.

  • Basic paketteki her şey
  • Ortak kodu değiştirmeden önce etki analizi
  • Bağımlılık döngüsü ve bağlılık denetimi
  • Neredeyse birebir kopya tespiti
  • Okuma tavanı yok, CI kullanımı dahil
Başla
Sorular

Kurmadan önce, cevaplar.

Agent’ımı yavaşlatır mı?+

Sıcak başlangıç 53 ms, bir sorgu ise milisaniyenin küçük bir kesri. İndeksleme MCP el sıkışması sırasında hiç çalışmaz — ihtiyaç duyan ilk araç çağrısında olur, böylece büyük bir proje istemcinizin açılışını kilitleyemez. Sonrasında indeks artımlıdır: yalnızca stat yapan bir yürüyüş hiçbir şeyin değişmediğine karar verir ve sadece mtime, boyut ve içerik hash’i birlikte değişen dosyalar yeniden okunur.

İlk indeksleme ne kadar sürüyor, ne kadar yer kaplıyor?+

3.593 dosyalık bir projede ölçüldü: soğuk başlangıç yaklaşık 1,4 saniye, tamamı okunduğunda diskte 3,3 MB. 2.100 dosyalık bir proje 412 ms’de indeksleniyor. Arka planda çalışan bir servis yok — iş, bir araç istediğinde yapılır ve biter.

İndeksi nerede saklıyor?+

Deponuzda değil, işletim sisteminizin önbellek dizininde: macOS’ta ~/Library/Caches/nextjs-mcp-architecture, Windows’ta %LOCALAPPDATA%\nextjs-mcp-architecture, Linux’ta $XDG_CACHE_HOME/nextjs-mcp-architecture (genelde ~/.cache). Her proje, mutlak yolunun hash’iyle adlandırılmış bir alt dizin alır; böylece aynı makinedeki iki proje birbirinin indeksini okuyamaz ve hiçbir şey git status’unuzda ya da Docker build bağlamınızda görünmez. O dizini silmek güvenlidir; bir sonraki araç çağrısı yeniden oluşturur.

Arkasını topluyor mu?+

Evet. 30 gündür açmadığınız projelerin önbellek dizinleri silinir, en yeni 50 tanesi tutulur. Temizlik, ilk araç çağrısının hemen ardından değil birkaç saniye sonra planlanır; yani beklediğiniz bir cevabın önüne asla geçmez.

Ücretsiz pakette projemin tamamı aranabilir mi?+

Evet. Her dosya, her pakette adı ve yolu ile indekse girer — indeksin hiç duymadığı bir dosya hiçbir fiyata döndürülemez ve ücretli paketlerin sattığı şey bu değildir. Paketin yükselttiği şey kaç dosyanın içinin okunduğudur: ücretsiz pakette 1.500 dosya, ilk bulunanlar değil ağacın tamamına yayılarak seçilir ve her cevap bunu açıkça söyler.

Aboneliğim biterse indeksime ne olur?+

Size ait hiçbir şeye dokunulmaz ve hiçbir şey ortada kalmaz. İndeks deponuzda değil işletim sistemi önbelleğinizde durur, yani kaynak kodunuz hiç işin içinde değildir. Bir sonraki araç çağrısında ücretsiz bütçeyle yeniden kurulur: her dosya adı ve yoluyla bulunabilir kalır, fazla dosya içerikleri düşer ve önbellek dosyası büyümek yerine küçülür — 3.593 dosyalık bir projede 3,3 MB’den 1,7 MB’ye iniyor. Aboneliği yenilemek derin indeksi aynı şekilde geri getirir.

Gerçekten hiç konfigürasyon istemiyor mu?+

cwd yok, ortam değişkeni yok, konfigürasyon dosyası yok. Projeyi dokuz sinyalden sırayla çözer — sizin andığınız bir yol, MCP istemcisinin kökleri, npm’in kendi ön eki, çalışma dizini — ve ilkini almak yerine her birini gerçek bir Next.js uygulaması kanıtına karşı puanlar. Gerçekten ayırt edemediğinde yanlış proje hakkında cevap vermek yerine bunu söyler ve çözümü önerir.

Bende olmayan kuralları dayatır mı?+

Bir kuralı yalnızca kendi kodunuz destekliyorsa söyler: Wilson skoru alt sınırının 0,80’e ulaşması gerekir, bu da kabaca hiç istisnasız 16 uyumlu dosya ya da en fazla bir istisnayla 25 dosya demektir. Daha zayıf desenler gözlem olarak bildirilir ve asla bulgu üretmez. Kural oluşturamayacak kadar yeni bir projeye kural uydurulmaz.

Dışarıya ne gönderiyor?+

Hiçbir şey. İndeksleme, öğrenme ve denetim tamamen yerelde çalışır. Lisans doğrulaması, pakete gömülü bir anahtara karşı çevrimdışı yapılan bir imza kontrolüdür; yani ağ hiç olmadan da çalışır.

Hangi editör ve agent’larla çalışıyor?+

stdio üzerinden MCP konuşan her şeyle: Claude Code, Cursor, VS Code, Windsurf ve Zed. Kurulum bloğu hepsinde birebir aynıdır.

Tek yapıştırma, ve agent’ınız kod tabanını tanıyor.

Süresiz ücretsiz, hesap yok, yapılandırılacak bir şey yok. Mimariyi sorgulamakla kalmayıp görmek isterseniz sonradan ücretli bir paket ekleyin.

shell
npx -y nextjs-mcp-architecture@latest