Jupyter için Model Context Protocol (MCP) Sunucusu.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"datalayer-jupyter-mcp-server": {
"command": "python",
"args": [
"-m",
"jupyter_mcp_server"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/datalayer/jupyter-mcp-server.git ~/.mcp/jupyter-mcp-server
cd ~/.mcp/jupyter-mcp-server AI'nin Jupyter Notebook'larını gerçek zamanlı olarak bağlamak ve yönetmek için geliştirilmiş bir MCP sunucusu
Datalayer tarafından geliştirilmiştir

[!IMPORTANT] v1.0.0'da kırılan değişiklik: MCP istemci kurulumunuzda
MCP_TOKENyapılandırmanız gerekir.Kurulum ayrıntıları için: https://jupyter-mcp-server.datalayer.tech/providers/jupyter-streamable-http-standalone/#3-configure-your-mcp-client
v1.0.2'deki güncelleme:
pycrdtartık desteklenmektedir, bu nedenledatalayer_pycrdtyüklemesi artık gerekli değildir.
[!NOTE] Geri Bildiriminize İhtiyacımız Var!
JupyterHub ve Google Colab dağıtımları için aktif olarak destek geliştiriyoruz. Jupyter MCP Server'ı bu platformlarla kullanıyorsanız veya kullanmayı planlıyorsanız, sizi duyduğumuz için sevineceğiz!
- 🏢 JupyterHub kullanıcıları: Dağıtım kurulumunuzu ve gereksinimlerinizi paylaşın
- 🌐 Google Colab kullanıcıları: Kullanım durumlarınızı ve iş akışlarınızı anlamamıza yardımcı olun
Topluluk sayfamızda konuşmaya katılın - geri bildiriminiz özellikleri önceliklendirmemize ve bu entegrasyonların ihtiyaçlarınız için sorunsuz bir şekilde çalışmasını sağlamaya yardımcı olacaktır.
Herhangi bir Jupyter dağıtımı (yerel, JupyterHub, ...) ve Datalayer barındırılan Notebook'larla uyumludur.
Sunucu, Jupyter notebook'larıyla etkileşim kurmak için aşağıdaki şekilde kategorize edilen zengin bir araç seti sağlar. Her araç, parametreleri ve dönüş değerleri hakkında daha fazla bilgi için lütfen resmi Araçlar belgelerine bakın.
| Ad | Açıklama |
|---|---|
list_files |
Jupyter sunucusunun dosya sistemindeki dosyaları ve dizinleri listeleyin. |
list_kernels |
Jupyter sunucusundaki tüm kullanılabilir ve çalışan kernel oturumlarını listeleyin. |
connect_to_jupyter |
MCP sunucusunu yeniden başlatmadan bir Jupyter sunucusuna dinamik olarak bağlanın. Jupyter uzantısı olarak çalışırken mevcut değildir. Sunucuları dinamik olarak değiştirmek veya sabit kodlanmış yapılandırmayı önlemek için kullanışlıdır. Daha fazla bilgi |
| Ad | Açıklama |
|---|---|
use_notebook |
Bir notebook dosyasına bağlanın, yeni bir tane oluşturun veya notebook'lar arasında geçiş yapın. |
list_notebooks |
Jupyter sunucusundaki tüm kullanılabilir notebook'ları ve durumlarını listeleyin |
restart_notebook |
Belirli bir yönetilen notebook için kernel'i yeniden başlatın. |
unuse_notebook |
Belirli bir notebook'tan bağlantıyı kesin ve kaynaklarını serbest bırakın. |
read_notebook |
Notebook hücrelerinin kaynak içeriğini kısa veya ayrıntılı format seçenekleriyle okuyun. |
| Ad | Açıklama |
|---|---|
read_cell |
Tek bir hücrenin tam içeriğini (Meta veri, Kaynak ve Çıktılar) okuyun. |
insert_cell |
Belirtilen konuma yeni bir kod veya markdown hücresi ekleyin. |
delete_cell |
Belirtilen indeksteki bir hücreyi silin. |
move_cell |
Bir hücreyi notebook içinde bir konumdan diğerine taşıyın. |
overwrite_cell_source |
Mevcut bir hücrenin kaynak kodunu üzerine yazın. |
edit_cell_source |
Tam yeniden yazma olmaksızın bir hücrenin kaynağına cerrahi bul ve değiştir düzenlemeleri uygulayın. |
execute_cell |
Zaman aşımı ile bir hücreyi yürütün, görüntüler dahil çoklu mod çıktısını destekler. |
insert_execute_code_cell |
Yeni bir kod hücresi ekleyin ve tek adımda yürütün. |
execute_code |
Kernel'de doğrudan kod yürütün, magic komutları ve shell komutlarını destekler. |
Yalnızca JupyterLab modu etkinleştirildiğinde kullanılabilir. Varsayılan olarak etkindir.
JupyterLab modunda çalışırken, Jupyter MCP Server, ek JupyterLab komutlarını MCP araçları olarak göstermek için jupyter-mcp-tools ile entegre olur. Varsayılan olarak, aşağıdaki araçlar etkindir:
| Ad | Açıklama |
|---|---|
notebook_run-all-cells |
Geçerli notebook'taki tüm hücreleri sırayla yürütün |
notebook_get-selected-cell |
Şu anda seçili hücre hakkında bilgi alın |
Artık allowed_jupyter_mcp_tools yapılandırma parametresini kullanarak jupyter-mcp-tools'tan hangi araçların kullanılabilir olduğunu özelleştirebilirsiniz. Bu, ek notebook işlemleri, konsol komutları, dosya yönetimi araçları ve daha fazlasını etkinleştirmenizi sağlar.
# Örnek: Komut satırı aracılığıyla ek araçları etkinleştirin
jupyter lab --port 4040 --IdentityProvider.token MY_TOKEN --JupyterMCPServerExtensionApp.allowed_jupyter_mcp_tools="notebook_run-all-cells,notebook_get-selected-cell,notebook_append-execute,console_create"
Kullanılabilir araçların tam listesi ve ayrıntılı yapılandırma talimatları için lütfen Ek Araçlar belgelerine bakın.
Sunucu, MCP'nin istem özelliğini de destekler ve kullanıcıların Jupyter notebook'larıyla etkileşim kurması için kolay bir yol sağlar.
| Ad | Açıklama |
|---|---|
jupyter-cite |
Belirtilen notebook'tan belirli hücreleri alıntı yapın (Coding IDE veya CLI'da @ gibi) |
Her istem, giriş parametreleri ve dönüş içeriği hakkında daha fazla bilgi için lütfen resmi İstem belgelerine bakın.
Streamable HTTP taşıması, Jupyter Server uzantısı olarak çalıştırma ve gelişmiş yapılandırma dahil olmak üzere kapsamlı kurulum talimatları için belgelerimizi kontrol edin. Ya da JupyterLab ve STDIO taşıması ile burada hızlı bir şekilde başlayın.
pip install jupyterlab==4.4.1 jupyter-collaboration==4.0.2 jupyter-mcp-tools>=0.1.4 ipykernel pycrdt
[!TIP] Ortamınızın doğru şekilde yapılandırıldığını doğrulamak için:
- JupyterLab'de bir notebook açın
- Herhangi bir hücreye (kod veya markdown) bir miktar içerik yazın
- Sekme göstergesini gözlemleyin: notebook adının yanında bir "×" görünmelidir; bu kaydedilmemiş değişiklikleri gösterir
- Birkaç saniye bekleyin—"×", manuel olarak kaydetmeden otomatik olarak "●" olarak değişmelidir
Bu otomatik kaydetme davranışı, gerçek zamanlı işbirliği özelliklerinin düzgün çalıştığını doğrular; bu, MCP sunucusu entegrasyonu için gereklidir.
# JupyterLab'i 8888 portunda başlatın, herhangi bir IP'den erişime izin verin ve bir token ayarlayın
jupyter lab --port 8888 --IdentityProvider.token MY_TOKEN --ip 0.0.0.0
[!NOTE] Yukarıdaki JupyterLab yerine JupyterHub aracılığıyla notebook'ları çalıştırıyorsanız, JupyterHub kurulum kılavuzumuza başvurun.
Daha sonra, MCP istemcinizi sunucuya bağlanacak şekilde yapılandırın. İhtiyaçlarınıza en uygun olanı seçmek için iki ana yöntem sunuyoruz:
uvx Kullanarak (Hızlı Başlangıç için Önerilir): uv kullanan hafif ve hızlı bir yöntem. Yerel geliştirme ve ilk kez kullanıcılar için idealdir.Docker Kullanarak (Üretim için Önerilir): Tutarlı ve izole bir ortamı sağlayan konteynerleştirilmiş bir yaklaşım; üretim veya karmaşık kurulumlar için mükemmeldir.Önce uv yükleyin:
pip install uv
uv --version
# 0.6.14 veya daha yüksek olmalıdır
uv yüklemesi hakkında daha fazla ayrıntıya bakın.
Sonra, istemcinizi yapılandırın:
{
"mcpServers": {
"jupyter": {
"command": "uvx",
"args": ["jupyter-mcp-server@latest"],
"env": {
"JUPYTER_URL": "http://localhost:8888",
"JUPYTER_TOKEN": "MY_TOKEN",
"ALLOW_IMG_OUTPUT": "true"
}
}
}
}
macOS ve Windows'ta:
{
"mcpServers": {
"jupyter": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "JUPYTER_URL",
"-e", "JUPYTER_TOKEN",
"-e", "ALLOW_IMG_OUTPUT",
"datalayer/jupyter-mcp-server:latest"
],
"env": {
"JUPYTER_URL": "http://host.docker.internal:8888",
"JUPYTER_TOKEN": "MY_TOKEN",
"ALLOW_IMG_OUTPUT": "true"
}
}
}
}
Linux'ta:
{
"mcpServers": {
"jupyter": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "JUPYTER_URL",
"-e", "JUPYTER_TOKEN",
"-e", "ALLOW_IMG_OUTPUT",
"--network=host",
"datalayer/jupyter-mcp-server:latest"
],
"env": {
"JUPYTER_URL": "http://localhost:8888",
"JUPYTER_TOKEN": "MY_TOKEN",
"ALLOW_IMG_OUTPUT": "true"
}
}
}
}
[!TIP]
- Port Yapılandırması: Jupyter URL'lerinizde
port'unjupyter labkomutunda kullanılan ile eşleştiğinden emin olun. Basitleştirilmiş yapılandırma için bunuJUPYTER_URL'de ayarlayın.- Sunucu Ayrımı: Her iki hizmet de aynı sunucudayken
JUPYTER_URLkullanın, gelişmiş dağıtımlar için bireysel değişkenleri ayarlayın. Farklı URL değişkenleri, bazı dağıtımlar notebook depolamayı (DOCUMENT_URL) kernel yürütmesinden (RUNTIME_URL) ayırdığı için mevcuttur.- Kimlik Doğrulama: Çoğu durumda belge ve çalışma zamanı hizmetleri aynı kimlik doğrulama belirtecini kullanır. Basitleştirilmiş yapılandırma için
JUPYTER_TOKENkullanın veya farklı kimlik bilgileri içinDOCUMENT_TOKENveRUNTIME_TOKEN'ı bireysel olarak ayarlayın.- Notebook Yolu:
DOCUMENT_IDparametresi, MCP istemcisinin varsayılan olarak bağlanacağı notebook'a giden yolu belirtir. JupyterLab'in başlatıldığı dizine göre göreli olmalıdır.DOCUMENT_ID'yi atlarsanız, MCP istemcisi Jupyter sunucusundaki tüm kullanılabilir notebook'ları otomatik olarak listeleyebilir ve istemeriniz aracılığıyla etkileşimli olarak birini seçmenize izin verir.- Görüntü Çıktısı: LLM'niz çoklu mod desteği desteklemiyorsa
ALLOW_IMG_OUTPUT'ufalseolarak ayarlayın.
Çeşitli MCP istemcilerini yapılandırma hakkında ayrıntılı talimatlar için—Claude Desktop, VS Code, Cursor, Cline ve Windsurf dahil—İstemciler belgelerine bakın.
Her türlü katkıyı memnuniyetle karşılarız! İşte bazı örnekler:
Geliştirmeye nasıl başlayacağınız ve katkılarınızı nasıl sunacağınız hakkında ayrıntılı talimatlar için lütfen Katkı Kılavuzumuza bakın.
Jupyter MCP Server hakkında blog yazıları, videolar veya diğer materyalleri mi arıyorsunuz?
👉 Daha fazla bilgi için belgelerimizde Kaynaklar bölümünü ziyaret edin!
Bu proje sizin için yararlı ise, lütfen bize bir ⭐️ verin
Datalayer tarafından ❤️ ile yapılmıştır
Barındırılan bir dağıtım Fronteir AI'da mevcuttur.
Doğrulanmış ve bakımı kolay veri grafikleri ve gösterge panelleri oluşturmak için araçlar ve şablonlar.
Hemen hemen her dosya veya web içeriğini Markdown'a dönüştüren bir MCP sunucusu.
Dingo için MCP sunucusu: kapsamlı veri kalitesi değerlendirme aracı. Sunucu, Dingo'nun kural tabanlı ve LLM tabanlı değerlendirme yetenekleri ile kurallar ve promptlar listesine erişimi sağlar.
Chronulus AI tahmin ve prediction ajanlarıyla her şeyi öngörebilirsin.
Optuna ile hiperparametre arama ve diğer optimizasyon görevlerinin sorunsuz bir şekilde yönetilmesini sağlayan resmi MCP server.
Birden fazla veri kaynağını (SQL, CSV, Parquet, vb.) bağlayın ve AI'dan verilerinizi analiz etmesini isteyerek insights ve visualizasyonlar elde edin.