> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP Sunucusu

> Kubernetes dağıtımında yapay zekâ istemcilerini bir projeye MCP sunucusu üzerinden bağlayın.

Her projenin MCP sunucusu, her Ayakaleaf Pro pod'unun **web** hizmetinde (`mcp-server` modülü) çalışır. [Git entegrasyonu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/git-integration.md) ile birlikte gelir ve kendine ait bir ayarı yoktur. Claude Code, Codex ve diğer istemcilerin nasıl bağlanacağı [MCP Sunucusu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/overleaf-toolkit/integrations/mcp-server.md) sayfasında açıklanmıştır.

| | |
| - | - |
| Hizmet | web, her Ayakaleaf Pro pod'unda |
| Etkinleştiren | `GIT_BRIDGE_ENABLED: "true"` ve git-bridge StatefulSet'i, bkz. [Git entegrasyonu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/git-integration.md) |
| Dışarısı → Overleaf | Yapay zekâ istemcileri bir Git kimlik doğrulama token'ı ile `POST ${OVERLEAF_SITE_URL}/project/<id>/mcp` gönderir; PDF indirme bağlantıları `${OVERLEAF_SITE_URL}/project/<id>/mcp/download/` altındadır |
| Pod → dışarısı | yok |
| Durum | istekler arasında yok; derleme çıktısı derlemeyi yapan pod'da kalır |
| Periyodik işler | yok |

### Yapılandırma

[Git entegrasyonunu](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/integrations/git-integration.md) kurun. MCP sunucusu bundan sonra `${OVERLEAF_SITE_URL}/project/<project id>/mcp` adresinde bulunur ve bu adrese yapay zekâ istemcisinin çalıştığı yerden erişilebilmelidir.

### Birden fazla replika

MCP üzerinden yapılan bir derleme, isteği alan replikada çalışır ve günlüğü ile PDF'i yalnızca orada bulunur. Yapay zekâ istemcileri çerez göndermez; bu nedenle yük dengeleyici bir sonraki isteği, yani `get_compile_log` veya PDF indirme bağlantısını, başka bir replikaya gönderebilir ve o replika "failed to fetch output file from CLSI" ya da 404 yanıtı verir. Üç replikalı ve ek kural olmadan yaptığımız testte, 6 günlük isteğinden 5'i ve 4 indirmeden 3'ü bu şekilde başarısız oldu.

`/git/` için olduğu gibi, bir projenin her MCP isteğini tek bir replikaya yönlendirin. [Yatay ölçeklendirme](https://ayakaleaf-pro.mintlify.site/tr/on-premises/configuration/kubernetes/horizontal-scaling.md) sayfasındaki HAProxy ile:

```text theme={null}
      use-server overleaf-0 if { path_reg ^/project/[0-9a-f]{24}/mcp(/|$) }
```

Bu durumda tüm MCP derlemeleri `overleaf-0`'ın düğümünde çalışır. Başka bir ingress denetleyicisiyle, `/project/<id>/mcp` yolunu ve altındaki her şeyi tek bir replikanın kendi adına (`overleaf-0.overleaf-hl`) yönlendirin.

Bu kuralla aynı test (bir derleme, 6 günlük isteği ve 4 PDF indirmesi, hepsi çerezsiz) her seferinde başarılı oldu.

### Kubernetes üzerinde test edildi

HAProxy arkasında üç replikalı Kubernetes 1.37 üzerinde, MCP sunucusu için uçtan uca testlerimiz başarılı oldu (37 vaka): araçları listeleme, yanlış, silinmiş veya erişimi olmayan token'ların reddedilmesi, derleme ve günlüğü okuma, kelime sayımı, proje ayarları ve geçmişi, PDF indirme bağlantıları, değişiklikleri açık düzenleyicide canlı olarak gösterilen ve bir Git klonuna çekilen dosya düzenleme, yorumlar, role göre erişim, derleme ve ayar hız sınırları ve askıya alınmış hesaplar. Bu istekler bir tarayıcı oturumundan geldiği için yük dengeleyici onları tek bir replikada tuttu; çerezsiz istemciler için bkz. [Birden fazla replika](#several-replicas).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.