Neon

resmi

Neon sunucusuz Postgres platformu ile etkileşim kurun

Neon MCP ile neler yapabilirsiniz?

  • Projeler ve dallar oluşturun — "my-database adında bir Postgres veritabanı oluştur" gibi yeni bir Neon projesi veya dalı başlatmak için create_project ve create_branch kullanın.
  • SQL sorguları ve işlemleri çalıştırınrun_sql veya run_sql_transaction ile bir veritabanına karşı tek veya çok deyimli SQL yürütün; salt okunur modda değilken yazma işlemleri dahil.
  • Şemaları ve tabloları inceleyinget_database_tables ile tabloları listeleyin veya describe_table_schema aracılığıyla bir tablonun tam sütun/kısıt tanımını alın.
  • Geçişleri güvenle planlayın ve uygulayın — Geçici bir dalda test etmek için prepare_database_migration ile bir geçiş başlatın, ardından complete_database_migration ile sonlandırın.
  • Yavaş sorguları ayarlayınlist_slow_queries ile darboğazları belirleyin veya explain_sql_statement ile yürütme planları alın, ardından prepare_query_tuning ile düzeltmeleri test edin.
  • Projeleri ve günlükleri keşfedinsearch ile kuruluşlar, projeler ve dallar arasında arama yapın veya query_logs ve list_log_fields kullanarak yapılandırılmış günlükleri filtreleyin.

Dokümantasyon

Neon Logo fallback

Neon MCP Sunucusu

Install MCP Server in Cursor Add to Kiro

Neon MCP Sunucusu, Neon'daki Lakebase Postgres veritabanlarınızla doğal dil kullanarak etkileşim kurmanızı sağlayan açık kaynaklı bir araçtır.

License: MIT

Model Context Protocol (MCP), büyük dil modelleri (LLM'ler) ile harici sistemler arasındaki bağlamı yönetmek için tasarlanmış standart bir protokoldür. Bu depo, Neon için uzaktan çalışan bir MCP Sunucusu sağlar.

Neon'un MCP sunucusu, doğal dil istekleri ile Neon API arasında bir köprü görevi görür. MCP üzerine inşa edilmiş olan bu sunucu, isteklerinizi gerekli API çağrılarına çevirerek proje ve dal oluşturma, sorgu çalıştırma ve veritabanı geçişlerini (migration) gerçekleştirme gibi görevleri sorunsuz bir şekilde yönetmenizi sağlar.

Neon MCP sunucusunun öne çıkan özelliklerinden bazıları şunlardır:

  • Doğal dil etkileşimi: Neon veritabanlarını sezgisel, konuşma tabanlı komutlarla yönetin.
  • Basitleştirilmiş veritabanı yönetimi: SQL yazmadan veya Neon API'yi doğrudan kullanmadan karmaşık işlemler gerçekleştirin.
  • Geliştirici olmayanlar için erişilebilirlik: Farklı teknik geçmişlere sahip kullanıcıların Neon veritabanlarıyla etkileşim kurmasını sağlayın.
  • Veritabanı geçiş (migration) desteği: Doğal dil ile başlatılan veritabanı şeması değişiklikleri için Neon'un dal (branching) özelliklerinden yararlanın.

Örneğin, Claude Code veya herhangi bir MCP İstemcisinde, Neon ile şu tür işleri gerçekleştirmek için doğal dili kullanabilirsiniz:

  • Let's create a new Postgres database, and call it "my-database". Let's then create a table called users with the following columns: id, name, email, and password.
  • I want to run a migration on my project called "my-project" that alters the users table to add a new column called "created_at".
  • Can you give me a summary of all of my Neon projects and what data is in each one?

[!WARNING]
Neon MCP Sunucusu Güvenlik Konuları
Neon MCP Sunucusu, doğal dil istekleri aracılığıyla güçlü veritabanı yönetimi yetenekleri sağlar. Yürütmeden önce LLM tarafından istenen işlemleri her zaman gözden geçirin ve onaylayın. Neon MCP Sunucusuna yalnızca yetkili kullanıcıların ve uygulamaların erişebildiğinden emin olun.

Neon MCP Sunucusu yalnızca yerel geliştirme ve IDE entegrasyonları için tasarlanmıştır. Neon MCP Sunucusunu üretim ortamlarında kullanmanızı önermiyoruz. Kazara veya yetkisiz değişikliklere yol açabilecek güçlü işlemler gerçekleştirebilir.

Daha fazla bilgi için bkz. MCP güvenlik rehberi →.

Neon MCP Sunucusunu Kurma

Neon MCP Sunucusunu kurmak için birkaç seçenek vardır:

  1. API Anahtarı ile Hızlı Kurulum (Cursor, VS Code ve Claude Code): Tek bir komutla Neon'un MCP Sunucusunu, ajan becerilerini ve VS Code uzantısını otomatik olarak yapılandırmak için neon@latest init komutunu çalıştırın.
  2. Uzaktan MCP Sunucusu (OAuth Tabanlı Kimlik Doğrulama): Kimlik doğrulama için OAuth kullanarak Neon'un yönetilen MCP sunucusuna bağlanın. Bu yöntem, API anahtarlarını yönetme ihtiyacını ortadan kaldırdığı için daha kullanışlıdır. Ayrıca, yeni özellikleri ve iyileştirmeleri yayınlandıkları anda otomatik olarak alırsınız.
  3. Uzaktan MCP Sunucusu (API Anahtarı Tabanlı Kimlik Doğrulama): Kimlik doğrulama için API anahtarı kullanarak Neon'un yönetilen MCP sunucusuna bağlanın. Bu yöntem, OAuth'un bulunmadığı durumlarda uzaktan bir ajanı Neon'a bağlamak istiyorsanız kullanışlıdır. Ayrıca, yeni özellikleri ve iyileştirmeleri yayınlandıkları anda otomatik olarak alırsınız.

Ön Koşullar

  • Bir MCP İstemci uygulaması.
  • Bir Neon hesabı.
  • Node.js (>= v18.0.0): nodejs.org adresinden indirin.
  • IP Allow etkinse, 34.192.103.46 ve 23.22.233.166 adreslerini beyaz listeye (allowlist) ekleyin (mcp.neon.tech statik IP'ler).

Geliştirme için Node.js 22+ gereklidir (pnpm, Corepack aracılığıyla sağlanır — etkinleştirmek için corepack enable komutunu çalıştırın).

Seçenek 1. API Anahtarı ile Hızlı Kurulum

API anahtarını elle oluşturmak istemiyor musunuz?

Neon'un MCP Sunucusunu tek bir komutla otomatik olarak yapılandırmak için neon@latest init komutunu çalıştırın:

npx neon@latest init

Bu işlem; Cursor, VS Code (GitHub Copilot) ve Claude Code ile çalışır. OAuth ile kimlik doğrulaması yapar, sizin için bir Neon API anahtarı oluşturur ve düzenleyicinizi otomatik olarak yapılandırır.

Seçenek 2. Uzaktan Barındırılan MCP Sunucusu (OAuth Tabanlı Kimlik Doğrulama)

Kimlik doğrulama için OAuth kullanarak Neon'un yönetilen MCP sunucusuna bağlanın. Bu en kolay kurulumdur; sunucunun yerel olarak kurulmasını gerektirmez ve istemcide bir Neon API anahtarının yapılandırılmasına ihtiyaç duymaz.

Çalışma alanınızdaki algılanan tüm ajanlar ve düzenleyiciler için Neon MCP Sunucusunu eklemek üzere aşağıdaki komutu çalıştırın:

npx add-mcp https://mcp.neon.tech/mcp

Neon MCP Sunucusunu proje kapsamlı yerine genel MCP sunucu listesine eklemek için -g bayrağını ekleyin.

Alternatif olarak, aşağıdaki "Neon" girdisini istemcinizin MCP sunucu yapılandırma dosyasına ekleyebilirsiniz (örn. mcp.json, mcp_config.json):

{
  "mcpServers": {
    "Neon": {
      "type": "http",
      "url": "https://mcp.neon.tech/mcp"
    }
  }
}

Kiro: Aşağıdakini Kiro MCP yapılandırma dosyanıza ekleyin (genel için ~/.kiro/settings/mcp.json veya proje kapsamlı için .kiro/settings/mcp.json):

{
  "mcpServers": {
    "Neon": {
      "url": "https://mcp.neon.tech/mcp"
    }
  }
}

Ya da bu README'nin üst kısmındaki tek tıklamayla kurulum düğmesini kullanın. Daha fazla bilgi için Kiro MCP belgelerine bakın.

  • MCP istemcinizi yeniden başlatın veya yenileyin.
  • Tarayıcınızda bir OAuth penceresi açılacaktır. MCP istemcinizin Neon hesabınıza erişimini yetkilendirmek için istemleri izleyin.

OAuth tabanlı kimlik doğrulamada, MCP sunucusu varsayılan olarak kişisel Neon hesabınızdaki projeler üzerinde çalışır. Bir kuruluşa ait projelere erişmek veya bu projeleri yönetmek için, MCP istemcisine verdiğiniz istemde açıkça org_id veya project_id bilgisini sağlamanız gerekir.

Seçenek 3. Uzaktan Barındırılan MCP Sunucusu (API Anahtarı Tabanlı Kimlik Doğrulama)

Uzaktan MCP Sunucusu, istemciniz destekliyorsa Authorization başlığında API anahtarı kullanarak kimlik doğrulamayı da destekler.

Neon Konsolu'nda bir Neon API anahtarı oluşturun. Ardından, çalışma alanınızdaki algılanan tüm ajanlar ve düzenleyiciler için Neon MCP Sunucusunu eklemek üzere aşağıdaki komutu çalıştırın:

npx add-mcp https://mcp.neon.tech/mcp --header "Authorization: Bearer <$NEON_API_KEY>"

Alternatif olarak, aşağıdaki "Neon" girdisini istemcinizin MCP sunucu yapılandırma dosyasına ekleyebilirsiniz (örn. mcp.json, mcp_config.json):

{
  "mcpServers": {
    "Neon": {
      "type": "http",
      "url": "https://mcp.neon.tech/mcp",
      "headers": {
        "Authorization": "Bearer <$NEON_API_KEY>"
      }
    }
  }
}

Erişimi yalnızca kuruluş altındaki projelerle sınırlamak için bir kuruluş API anahtarı sağlayın.

Kapsamlar ve Salt Okunur Mod

Neon MCP, read, write ve * OAuth kapsamlarını destekler (* her ikisi anlamına gelir). MCP istemciniz bu kapsamları doğrudan talep edebilir veya OAuth izinleri arayüzünde seçimi yapabilirsiniz.

Salt okunur mod, hangi araçların kullanılabilir olduğunu kısıtlar; proje oluşturma, dal oluşturma veya geçiş (migration) çalıştırma gibi yazma işlemlerini devre dışı bırakır. Salt okunur araçlar; projeleri listeleme, şemaları tanımlama, veri sorgulama ve performans metriklerini görüntülemeyi içerir.

Salt okunur modu iki şekilde ayarlayabilirsiniz:

  1. OAuth kapsam seçimi (önerilir): OAuth'ta, yetkilendirme arayüzünde Full access seçeneğinin işaretini kaldırarak salt okunur modu seçin.
  2. readonly sorgu parametresi: MCP sunucu URL'nize ?readonly=true ekleyin:
{
  "mcpServers": {
    "Neon": {
      "url": "https://mcp.neon.tech/mcp?readonly=true"
    }
  }
}

Sorgu parametresinin davranışı:

  • API anahtarı akışı: readonly=true, salt okunur modu etkinleştirmenin yoludur (bu akışta OAuth kapsam değişimi yoktur).
  • OAuth akışı: readonly=true, OAuth kapsamını geçersiz kılar. Bu olmadan, salt okunur mod, OAuth onay arayüzünde seçilen kapsama göre belirlenir.

Eski HTTP başlığı x-read-only da bir geri dönüş olarak desteklenir (sorgu parametresinden daha düşük önceliklidir).

Not: Salt okunur mod, hangi araçların kullanılabilir olduğunu kısıtlar. Ayrıca, run_sql aracı yalnızca salt okunur sorgular için kullanılabilir durumda kalır.

Erişim Kontrolü için URL Sorgu Parametreleri

Yetki bağlamı (kapsam kategorileri, proje kapsamlama, salt okunur mod), MCP sunucu URL'sindeki URL sorgu parametreleri aracılığıyla yapılandırılır. Yapılandırma her istekle birlikte taşınır ve anında etkili olur — yeniden kimlik doğrulama gerekmez.

ParametreAçıklamaÖrnek
readonlySalt okunur modu etkinleştir (true/false)?readonly=true
categoryBelirli araç kategorileriyle sınırla (tekrarlanan veya CSV)?category=querying&category=schema
projectIdTüm işlemleri tek bir projeye kapsamla?projectId=proj-123

Salt okunur + proje kapsamlı örnek:

{
  "mcpServers": {
    "Neon": {
      "url": "https://mcp.neon.tech/mcp?readonly=true&projectId=my-project-id"
    }
  }
}

Kategori filtreli örnek (yalnızca sorgulama ve şema araçları):

{
  "mcpServers": {
    "Neon": {
      "url": "https://mcp.neon.tech/mcp?category=querying&category=schema"
    }
  }
}

Herhangi bir yapılandırma için hangi araçların görünür olduğunu /api/list-tools uç noktasını kullanarak önizleyebilirsiniz (kimlik doğrulama gerekmez):

curl "https://mcp.neon.tech/api/list-tools?readonly=true&category=querying"
Salt okunur modda kullanılabilen araçlar
  • list_projects, list_shared_projects, describe_project, list_organizations
  • describe_branch, list_branch_computes, compare_database_schema
  • run_sql, run_sql_transaction, get_database_tables, describe_table_schema
  • list_slow_queries, explain_sql_statement
  • get_connection_string
  • get_neon_auth_config
  • query_logs, list_log_fields, list_log_field_values
  • search, fetch, list_docs_resources, get_doc_resource

Yazma erişimi gerektiren araçlar:

  • create_project, delete_project
  • create_branch, delete_branch, reset_from_parent
  • provision_neon_auth, configure_neon_auth, provision_neon_data_api
  • prepare_database_migration, complete_database_migration
  • prepare_query_tuning, complete_query_tuning

Sunucu Tarafından Gönderilen Olaylar (SSE) Aktarımı (Kullanımdan Kaldırıldı)

MCP, iki uzaktan sunucu aktarımını destekler: kullanımdan kaldırılan Sunucu Tarafından Gönderilen Olaylar (SSE) ve daha yeni, önerilen Streamable HTTP. LLM istemciniz henüz Streamable HTTP'yi desteklemiyorsa, SSE kullanmak için uç noktayı https://mcp.neon.tech/mcp adresinden https://mcp.neon.tech/sse adresine değiştirebilirsiniz.

SSE aktarımını kullanarak çalışma alanınızdaki algılanan tüm ajanlar ve düzenleyiciler için Neon MCP Sunucusunu eklemek üzere aşağıdaki komutu çalıştırın:

npx add-mcp https://mcp.neon.tech/sse --type sse

Uzaktan Sunucu Mimarisi

Uzaktan sunucu, Vercel'de mcp.neon.tech adresinde bir Next.js App Router uygulaması olarak çalışır.

[!NOTE] Kök / yolu Neon MCP Sunucusu belgelerine yönlendirir. Açılış sayfası yoktur.

Temel uygulama alanları:

  • app/api/[transport]/route.ts: Streamable HTTP (/mcp) ve SSE (/sse) için MCP aktarım uç noktası
  • app/api/authorize/, app/callback/, app/api/token/, app/api/revoke/: OAuth akış uç noktaları
  • app/.well-known/: OAuth keşif meta verileri uç noktaları
  • mcp/: MCP sunucusu, araçlar, işleyiciler, analitik ve Sentry entegrasyonu
  • lib/: Next.js uyumlu yardımcılar (OAuth, yapılandırma, hata işleme)
  • mcp/utils/read-only.ts: salt okunur mod ve kapsam işleme

Rehberler

Özellikler

Desteklenen Araçlar

Neon MCP Sunucusu, MCP İstemcilerine "araçlar" olarak sunulan aşağıdaki eylemleri sağlar. Bu araçları, doğal dil komutlarını kullanarak Neon projeleriniz ve veritabanlarınızla etkileşim kurmak için kullanabilirsiniz.

Araç Kapsamı Meta Verileri

Her araç tanımı, yetki tabanlı araç filtreleme ve onay kullanıcı deneyimi için kullanılan bir scope kategorisi içerir. Geçerli kategoriler şunlardır:

  • projects
  • branches
  • schema
  • querying
  • neon_auth
  • data_api
  • observability
  • docs
  • null (kapsam kategorisi olmayan araçlar)

Notlar:

  • compare_database_schema, schema kategorisi altında sınıflandırılmıştır.
  • provision_neon_data_api, data_api kategorisi altında sınıflandırılmıştır (neon_auth'ten ayrı olarak).
  • Salt okunur zorlaması hâlâ readOnlySafe ve sunucu tarafı salt okunur mantığına dayanır; scope kategori meta verisidir, bağımsız bir okuma/yazma anahtarı değildir.
  • Proje kapsamlı modda (?projectId=...), search ve fetch kullanılamaz.

Proje Yönetimi:

  • list_projects: Hesabınızdaki ilk 10 Neon projesini listeler ve her projenin özetini sağlar. Belirli bir projeyi bulamıyorsanız, limit parametresine daha yüksek bir değer ileterek limiti artırın.
  • list_shared_projects: Geçerli kullanıcıyla paylaşılan Neon projelerini listeler. Arama parametresini ve döndürülecek proje sayısını sınırlamayı destekler (varsayılan: 10).
  • describe_project: Belirli bir Neon projesi hakkında kimliği, adı ve ilişkili dallar ile veritabanları dahil ayrıntılı bilgi getirir.
  • create_project: Neon hesabınızda yeni bir Neon projesi oluşturur. Bir proje; dallar, veritabanları, roller ve compute'lar için bir kapsayıcı görevi görür.
  • delete_project: Mevcut bir Neon projesini ve ilişkili tüm kaynaklarını siler.
  • list_organizations: Geçerli kullanıcının erişebildiği tüm organizasyonları listeler. İsteğe bağlı olarak arama parametresini kullanarak organizasyon adına veya kimliğine göre filtreleyin.

Dal Yönetimi:

  • create_branch: Belirtilen bir Neon projesi içinde yeni bir dal oluşturur. Geliştirme, test veya geçişler için Neon'un dallandırma özelliğinden yararlanır.
  • delete_branch: Neon projesinden mevcut bir dalı siler.
  • describe_branch: Belirli bir dal hakkında adı, kimliği ve üst dal gibi ayrıntıları alır.
  • list_branch_computes: Bir proje veya belirli bir dal için compute uç noktalarını listeler; compute kimliği, türü, boyutu, son etkinlik zamanı ve otomatik ölçeklendirme bilgileri dahildir.
  • compare_database_schema: Alt dal ile üst dal arasındaki şema farkını gösterir.
  • reset_from_parent: Geçerli dalı üst dalının durumuna sıfırlar ve yerel değişiklikleri atar. Dalın alt dalları varsa otomatik olarak yedek korunur veya isteğe bağlı olarak özel bir adla yedek korunabilir.

SQL Sorgu Yürütme:

  • get_connection_string: Veritabanı bağlantı dizenizi döndürür.
  • run_sql: Belirtilen bir Neon veritabanına karşı tek bir SQL sorgusu yürütür. Hem okuma hem yazma işlemlerini destekler.
  • run_sql_transaction: Bir Neon veritabanına karşı tek bir işlem içinde bir dizi SQL sorgusu yürütür.
  • get_database_tables: Belirtilen bir Neon veritabanındaki tüm tabloları listeler.
  • describe_table_schema: Belirli bir tablonun şema tanımını alır; sütunları, veri türlerini ve kısıtlamaları ayrıntılandırır.

Veritabanı Geçişleri (Şema Değişiklikleri):

  • prepare_database_migration: Bir veritabanı geçiş süreci başlatır. Kritik olarak, ana dalı etkilemeden geçişi güvenli şekilde uygulamak ve test etmek için geçici bir dal oluşturur.
  • complete_database_migration: Hazırlanmış bir veritabanı geçişini ana dala uygular ve sonuçlandırır. Bu işlem, geçici geçiş dalındaki değişiklikleri birleştirir ve geçici kaynakları temizler.

SQL Sorgulama ve Optimizasyon:

  • list_slow_queries: Bir veritabanındaki en yavaş sorguları bularak performans darboğazlarını belirler. pg_stat_statements uzantısını gerektirir.
  • explain_sql_statement: Performans darboğazlarını belirlemeye yardımcı olmak için SQL sorguları için ayrıntılı yürütme planları sağlar.
  • prepare_query_tuning: Sorgu performansını analiz eder ve dizin oluşturma gibi optimizasyonlar önerir. Bu optimizasyonları güvenle test etmek için geçici bir dal oluşturur.
  • complete_query_tuning: Optimizasyonları ana dala uygulayarak veya atarak sorgu ayarını sonuçlandırır. Geçici ayar dalını temizler.

Neon Auth:

  • provision_neon_auth: Bir Neon projesi için Neon Auth sağlar. Geliştiricilerin bir Auth sağlayıcısıyla entegrasyon oluşturarak kimlik doğrulama altyapısını kolayca kurmasını sağlar.
  • configure_neon_auth: Bir dal için mevcut bir Neon Auth entegrasyonunu yapılandırır; güvenilir kaynakları, localhost erişimini, kimlik doğrulama yöntemlerini, OAuth sağlayıcılarını ve işlemsel e-posta sağlayıcısını yönetir.
  • get_neon_auth_config: Bir dal için entegrasyon meta verileri ve yapılandırılabilir ayarlar dahil tam Neon Auth yapılandırmasını okur (sırlar gizlenir).

Neon Data API:

  • provision_neon_data_api: HTTP tabanlı veritabanı erişimi için Neon Data API sağlar; Neon Auth veya harici JWKS sağlayıcıları aracılığıyla isteğe bağlı JWT kimlik doğrulaması içerir.

Arama ve Keşif:

  • search: Bir sorguyla eşleşen organizasyonlar, projeler ve dallar arasında arama yapar. Kimlikleri, başlıkları ve Neon Konsolu'na doğrudan bağlantıları döndürür.
  • fetch: Bir kimlik kullanarak belirli bir organizasyon, proje veya dal hakkında ayrıntılı bilgi getirir (genellikle arama aracından).

Gözlemlenebilirlik:

  • query_logs: Neon sunucusuz işlevleriniz ve diğer hizmetler tarafından yayılan günlükleri yapılandırılmış filtrelerle (kaynak, hizmet adı, önem düzeyi, zaman penceresi) sorgular. Günlükler OpenTelemetry tabanlıdır.
  • list_log_fields: Bir dal için filtreleyebileceğiniz günlük alanlarını (etiketleri) listeler; örneğin service_name, severity_text ve scope_name. query_logs'dan önce kullanın.
  • list_log_field_values: Bir dal ve zaman penceresi içindeki bir günlük alanının farklı değerlerini listeler; böylece query_logs parametresine aktarılacak somut değerleri keşfedebilirsiniz.

Dokümantasyon ve Kaynaklar:

  • list_docs_resources: Dizini https://neon.com/docs/llms.txt adresinden getirerek kullanılabilir tüm Neon dokümantasyon sayfalarını listeler. Sayfa URL'lerini ve başlıklarını döndürür; bunlar get_doc_resource aracı kullanılarak tek tek getirilebilir.
  • get_doc_resource: Belirli bir Neon dokümantasyon sayfasını markdown içeriği olarak getirir. Önce list_docs_resources aracını kullanarak kullanılabilir sayfa slug'larını keşfedin, ardından slug'ı bu araca iletin.

Geçişler

Geçişler, veritabanı şemanızda zaman içinde yapılan değişiklikleri yönetmenin bir yoludur. Neon MCP sunucusuyla, LLM'ler ayrı "Başlat" (prepare_database_migration) ve "İşle" (complete_database_migration) komutlarıyla geçişleri güvenle yapabilir.

"Başlat" komutu bir geçişi kabul eder ve yeni bir geçici dalda çalıştırır. Döndüğünde, bu komut LLM'ye geçişi bu dalda test etmesi gerektiğini ima eder. LLM daha sonra geçişi orijinal dala uygulamak için "İşle" komutunu çalıştırabilir.

Geliştirme

Bu proje, Corepack ile sabitlenen pnpm paket yöneticisini kullanır.

Proje Yapısı

MCP sunucu kodu, mcp.neon.tech adresinde Vercel'e dağıtılan bir Next.js uygulaması olan depo kökünde bulunur.

corepack enable
pnpm install

Yerel Geliştirme

# Start the Next.js dev server (for the remote MCP server)
pnpm dev

Lint ve Tip Kontrolü

pnpm lint
pnpm typecheck

Ortam Değişkenleri

Uzak sunucu çalışma zamanı için gerekli:

DeğişkenAçıklama
SERVER_HOSTSunucu URL'si (varsayılan: VERCEL_URL)
UPSTREAM_OAUTH_HOSTNeon OAuth sağlayıcı URL'si
CLIENT_IDOAuth istemci kimliği
CLIENT_SECRETOAuth istemci sırrı
COOKIE_SECRETİmzalı çerezler için sır
KV_URLVercel KV (Upstash Redis) URL'si
OAUTH_DATABASE_URLToken depolama için Postgres URL'si

İsteğe bağlı:

DeğişkenAçıklama
LOG_LEVELWinston günlük düzeyi: error, warn, info (varsayılan), debug, verbose, silly

Test Piramidi

Tüm testler depo kökünden çalıştırılır.

# Unit tests
pnpm test:unit

# Integration tests
pnpm test:integration

# MCP protocol end-to-end tests (real MCP client/server tool calls)
pnpm test:e2e:mcp

# Website end-to-end tests (Playwright; provisions/validates ephemeral DB first)
pnpm test:e2e:web

# Full end-to-end suite
pnpm test:e2e

# Full test pyramid (unit + integration + e2e; used in CI)
pnpm test

Test stratejisi:

  • Taşıma/protokol ve kullanıcı tarafından görülebilir davranış için E2E'yi tercih edin.
  • Belirleyici araç sözleşmeleri ve iş akışı davranışı için entegrasyon testlerini kullanın.
  • Saf mantık ve uç durumlar için birim testlerini kullanın.
  • Birleştirme kapısı testlerinde üçüncü taraf çalışma süresine güvenmekten kaçının; entegrasyon/birim katmanlarında harici bağımlılıkları mock'layın.

Dağıtım

Vercel, uzak sunucuyu otomatik olarak depo dal yapılandırmasından dağıtır. Önizleme ortamları, çekme istekleri için kullanılabilir.