Octopus Deploy Official MCP Server
resmiOctopus MCP Sunucusu, yapay zeka asistanınıza Octopus örneğinizdeki sorunları inceleme, sorgulama ve teşhis etme olanağı tanıyan güçlü araçlar sağlayarak onu nihai DevOps yardımcınıza dönüştürür.
Octopus Deploy Official MCP ile neler yapabilirsiniz?
- URL'den dağıtımları incele — Octopus URL'sini yapıştırarak bir dağıtımı araştırmasını isteyin;
get_deployment_from_urlbağlam ve takip için bir görev kimliği döndürür. - Dağıtım görev günlüklerini ara — Çok megabaytlık gövdenin tamamını indirmeden bir görevin etkinlik günlüğünde hata veya başarısızlık desenlerini bulmak için
grep_task_logkullanın. - Sürümler oluştur ve dağıt — Bir proje için
create_releaseyapmasını isteyin, ardından belirli ortamlara, kiracılı dağıtımlar dahil,deploy_releaseile dağıtın. - Runbook'ları ortamlar arasında çalıştır — Bir runbook'u bir veya daha fazla ortamda çalıştırmak için
run_runbookkullanın; kiracılı çalıştırmaları ve istemli değişkenleri destekler. - Eksik kiracı değişkenlerini bul ve düzelt — Değeri olmayan kiracı değişkenlerini belirlemek için
get_missing_tenant_variableskullanın, ardından bunlarıget_tenant_variablesile inceleyin. - Kubernetes canlı durumunu kontrol et — Dağıtım sorunlarını teşhis etmek için bir proje ve ortam için kaynakların
get_kubernetes_live_statusdurumunu isteyin.
Dokümantasyon
[!WARNING] Kullanımdan kaldırıldı: Bu MCP sunucusu kullanımdan kaldırılmıştır. Remote MCP Sunucusu, Octopus Server 2026.3 ve sonraki sürümlerde kullanılabilir. Remote MCP Sunucusu belgelerine bakın.
Octopus Deploy Official MCP Server
Octopus, yazılımı Kubernetes, çoklu bulut, şirket içi altyapı ve başka her yere teslim etmeyi kolaylaştırır. Yazılımınızın ve yapay zeka iş yüklerinizin sürüm, dağıtım ve operasyonlarını, başka hiçbir aracın yapamayacağı şekilde ölçekte CD'yi yönetebilen bir araçla otomatikleştirin.
Model Context Protocol (MCP), Claude Code veya ChatGPT gibi günlük işlerinizde kullandığınız yapay zeka asistanlarının, sahip olduğunuz sistemlere ve hizmetlere standart bir şekilde bağlanmasını sağlar; böylece bu sistemlerden ve hizmetlerden bilgi çekerek soruları yanıtlayabilir ve görevleri yerine getirebilirler.
Octopus MCP Sunucusu, yapay zeka asistanınıza Octopus örneğinizdeki sorunları inceleme, sorgulama ve teşhis etme olanağı sağlayan güçlü araçlar sunar ve onu nihai DevOps yardımcınıza dönüştürür. Desteklenen kullanım senaryoları ve örnek istemler listesi için belgelerimize bakın.
Octopus Server Uyumluluğu
MCP Sunucusu tarafından sunulan araçların çoğu, Octopus Server'ın en az 2021.1 sürümünden beri kullanılabilen kararlı API'leri kullanır. Daha yeni araçlar, belgelerde minimum desteklenen sürümü belirtir. Alternatif olarak, belirli araçların Octopus sürümleriyle nasıl ilişkili olduğunu kontrol etmek için --list-tools-by-version komut satırı bağımsız değişkenini kullanabilirsiniz.
🚀 Kurulum
Docker ile Kurulum
Kimlik bilgileri, ana bilgisayar işlem listesinde açığa çıkmamaları için ortam değişkenleri aracılığıyla sağlanmalıdır (ps aux / /proc/<pid>/cmdline). Octopus sunucu URL'si yine de --server-url bayrağı aracılığıyla sağlanabilir.
docker run -i --rm -e OCTOPUS_API_KEY=your-key -e OCTOPUS_SERVER_URL=https://your-octopus.com octopusdeploy/mcp-server
Tam örnek yapılandırma (Claude Desktop, Claude Code ve Cursor için):
{
"mcpServers": {
"octopus-deploy": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OCTOPUS_SERVER_URL",
"-e",
"OCTOPUS_API_KEY",
"octopusdeploy/mcp-server"
],
"env": {
"OCTOPUS_SERVER_URL": "https://your-octopus.com",
"OCTOPUS_API_KEY": "YOUR_API_KEY"
}
},
}
}
Apple Mac kullanıcıları için, Docker'ı Linux platformunu kullanmaya zorlamak amacıyla yapılandırmaya aşağıdaki bağımsız değişkenleri eklemeniz gerekebilir:
"--platform",
"linux/amd64",
Yakında bu bağımsız değişkenlerin artık gerekmeyeceği yerel bir ARM derlemesi yayınlamayı planlıyoruz.
Node ile Kurulum
Gereksinimler
- Node.js >= v20.0.0
- MCP sunucusu tarafından HTTPS üzerinden erişilebilen Octopus Deploy örneği
- Octopus Deploy API Anahtarı veya Erişim Belirteci (aşağıdaki Kimlik Doğrulama bölümüne bakın)
Yapılandırma
Tam örnek yapılandırma (Claude Desktop, Claude Code ve Cursor için):
Yazma araçları etkin (varsayılan):
{
"mcpServers": {
"octopusdeploy": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@octopusdeploy/mcp-server"],
"env": {
"OCTOPUS_SERVER_URL": "https://your-octopus.com",
"OCTOPUS_API_KEY": "YOUR_API_KEY"
}
}
}
}
Salt okunur mod (üretim için önerilir):
{
"mcpServers": {
"octopusdeploy": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@octopusdeploy/mcp-server", "--read-only"],
"env": {
"OCTOPUS_SERVER_URL": "https://your-octopus.com",
"OCTOPUS_API_KEY": "YOUR_API_KEY"
}
}
}
}
Octopus MCP Sunucusu genellikle tercih ettiğiniz Yapay Zeka İstemcinizde yapılandırılır.
Bir npm paketi olarak paketlenir ve Node'un npx komutuyla çalıştırılır. Kimlik bilgileri (API anahtarı veya erişim belirteci) ortam değişkenleri aracılığıyla sağlanmalıdır — sırların işlem listesinde açığa çıkmaması için komut satırı bağımsız değişkenleri olarak kabul edilmezler. Octopus sunucu URL'si OCTOPUS_SERVER_URL ortam değişkeni veya --server-url bayrağı aracılığıyla sağlanabilir.
OCTOPUS_API_KEY=API-KEY \
OCTOPUS_SERVER_URL=https://your-octopus.com \
npx -y @octopusdeploy/mcp-server
Veya sunucu URL'si komut satırında:
OCTOPUS_API_KEY=API-KEY \
npx -y @octopusdeploy/mcp-server --server-url https://your-octopus.com
Kimlik Doğrulama
MCP sunucusu iki kimlik doğrulama yöntemini destekler. Her ikisi de ortam değişkenleri aracılığıyla sağlanır — kimlik bilgileri komut satırında kabul edilmez çünkü bayraklar ana bilgisayar işlem listesinde herhangi bir yerel kullanıcı tarafından görülebilir.
API Anahtarı (etkileşimli kullanım için önerilir)
API anahtarları, Octopus Deploy için standart kimlik doğrulama yöntemidir. Octopus Deploy kullanıcı profilinizden bir tane oluşturabilirsiniz.
OCTOPUS_API_KEY=API-XXXXXXXXXXXXXXXXXXXXXXXXXX \
OCTOPUS_SERVER_URL=https://your-octopus.com \
npx -y @octopusdeploy/mcp-server
Erişim Belirteci / Taşıyıcı Belirteç (yalnızca otomatik senaryolar)
Sunucu ayrıca API anahtarlarına alternatif olarak kısa ömürlü erişim belirteçlerini (Taşıyıcı belirteçler) destekler. Bu kimlik doğrulama yöntemi yalnızca otomatik senaryolar için tasarlanmıştır; burada harici bir sistem MCP sunucusuna kısa ömürlü bir belirteç verir (ör. CI/CD boru hatları, otomatik orkestrasyon veya makineden makineye iş akışları). Uzun ömürlü Taşıyıcı belirteçler kullanmayın — etkileşimli veya uzun süreli oturumlar için API anahtarlarını kullanın.
OCTOPUS_ACCESS_TOKEN=your-short-lived-token \
OCTOPUS_SERVER_URL=https://your-octopus.com \
npx -y @octopusdeploy/mcp-server
Erişim belirteciyle tam örnek yapılandırma:
{
"mcpServers": {
"octopusdeploy": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@octopusdeploy/mcp-server"],
"env": {
"OCTOPUS_SERVER_URL": "https://your-octopus.com",
"OCTOPUS_ACCESS_TOKEN": "YOUR_TOKEN"
}
}
}
}
Hem API anahtarı hem de erişim belirteci sağlanırsa, erişim belirteci önceliklidir. Etkin kimlik doğrulama yöntemi, operatörlerin hangi kimlik bilgisinin kullanıldığını doğrulayabilmesi için günlük dosyasına kaydedilir (--log-file ile yapılandırılabilir).
Yapılandırma Seçenekleri
Octopus MCP Sunucusu, hangi araçların kullanılabilir olduğunu özelleştirmek için birkaç komut satırı seçeneğini destekler.
Hangi araçlara ihtiyacınız olduğundan emin değilseniz, ek komut satırı seçenekleri olmadan çalıştırmanızı ve sağlanan varsayılanları kullanmanızı öneririz.
Araç Setleri
Belirli araç gruplarını etkinleştirmek için --toolsets parametresini kullanın:
# Enable all toolsets (default)
npx -y @octopusdeploy/mcp-server
# Enable only specific toolsets
npx -y @octopusdeploy/mcp-server --toolsets projects,deployments
# Enable all toolsets explicitly
npx -y @octopusdeploy/mcp-server --toolsets all
Kullanılabilir araç setleri:
- core - Temel işlemler (her zaman etkin)
- projects - Proje işlemleri
- deployments - Dağıtım işlemleri
- releases - Sürüm yönetimi
- runbooks - Runbook keşfi ve yürütme
- tasks - Görev işlemleri
- tenants - Çok kiracılı işlemler
- kubernetes - Kubernetes işlemleri
- machines - Dağıtım hedefi işlemleri
- certificates - Sertifika işlemleri
- accounts - Hesap işlemleri
- interruptions - Manuel müdahale ve onay işlemleri
- featureToggles - Müşteri özellik anahtarlarını inceleme ve ayarlama
- context - Kimliği doğrulanmış kullanıcı ve proje bağlamı (geçerli kullanıcı, Git dalları)
Salt Okunur Mod
Sunucu varsayılan olarak yazma araçları etkin şekilde çalışır. Tüm yazma araçlarını devre dışı bırakmak ve execute geri durdurucusu aracılığıyla POST/PUT/PATCH/DELETE'i engellemek için --read-only değerini iletin. Hazırlanmış araçların çoğu zaten salt okunurdur; yalnızca küçük bir set yazma işlemi gerçekleştirir.
Yazma etkin araçlar (her zaman yazar):
create_release- Yeni sürümler oluştururdeploy_release- Sürümleri ortamlara ve kiracılara dağıtırrun_runbook- Bir runbook'u bir veya daha fazla ortama (ve isteğe bağlı kiracılara) karşı çalıştırırupdate_feature_toggle- Mevcut bir özellik anahtarında ortam başına durumu ve dağıtım yüzdelerini ayarlar
Koşullu yazan araç: execute, katmanı (okuma / yazma / silme) kendisine iletilen HTTP yöntemi tarafından belirlenen yapılandırılmış bir REST geri durdurucusudur. Ayrıntılar için API Kataloğu ve Geri Durdurucu bölümüne bakın.
Yazma araçları bir MCP istem istemiyle korunur: istem desteği olan istemcilerden, çağrı devam etmeden önce onay istenir. İstem desteği olmayan istemciler, araç bağımsız değişkenlerinde confirm: true değerini iletmelidir — aksi takdirde araç bir hatayla sonlandırılır. Kapıyı tamamen atlamak için OCTOPUS_SKIP_ELICITATION=true değerini ayarlayın (gözetimsiz otomasyon için tasarlanmıştır).
Sunucu, sunucu tarafında HTTP yöntemine göre uygulanan üç katmanlı bir okuma/yazma/silme sınıflandırması kullanır (ajan, niyet hakkında yalan söyleyerek bunu atlatamaz):
- okuma — her zaman izin verilir.
executearacılığıyla GET istekleri ve tümfind_*/get_*/list_*araçları. - yazma —
executearacılığıyla POST/PUT/PATCH ve yukarıdaki her zaman yazan araçlar.--read-onlyayarlandığında engellenir. - silme —
executearacılığıyla DELETE.--allow-deletesgerektirir ve--read-onlyayarlandığında engellenir. Küçük bir yıkıcı silme yolu seti (ör.DELETE /api/spaces/{id},DELETE /api/users/{id}) ve API anahtarı uç noktaları, her iki bayrağı da yok sayan sabit bir hassas engellenenler listesindedir.
# Default - write tools enabled (POST/PUT/PATCH)
npx -y @octopusdeploy/mcp-server
# Additionally permit DELETE requests through the execute tool
npx -y @octopusdeploy/mcp-server --allow-deletes
# Read-only mode - write/delete tools disabled
npx -y @octopusdeploy/mcp-server --read-only
Güvenlik Notu: Uygun, en az ayrıcalıklı izinlere sahip bir API anahtarı kullanın — yazma işlemleri Octopus örneğinizde sürümler oluşturabilir ve dağıtımları tetikleyebilir. Üretim için, yazmalar için belirli ve kontrollü bir kullanım durumunuz yoksa --read-only değerini iletmeyi düşünün. --allow-deletes varsayılan olarak kapalıdır; yalnızca ajanın execute aracılığıyla DELETE istekleri göndermesi gerektiğinde etkinleştirin. --allow-deletes ile birlikte --read-only değerini iletirseniz, sunucu stderr'e bir başlangıç uyarısı yazdırır — DELETE istekleri salt okunur kapı tarafından engellenmeye devam eder.
Tam Örnekler
Aşağıdaki tüm örnekler, ortamda OCTOPUS_API_KEY değerinin ayarlandığını varsayar. --server-url bayrağı netlik için gösterilmiştir ancak OCTOPUS_SERVER_URL aracılığıyla da sağlanabilir.
# Development setup with only core and project tools
npx -y @octopusdeploy/mcp-server --toolsets core,projects --server-url https://your-octopus.com
# Production setup with all tools and read-only enforcement
npx -y @octopusdeploy/mcp-server --toolsets all --read-only --server-url https://your-octopus.com
# Default invocation - all tools and writes enabled
npx -y @octopusdeploy/mcp-server --server-url https://your-octopus.com
Diğer komut satırı bağımsız değişkenleri
--read-only- Salt okunur modu etkinleştir: hazırlanmış tüm yazma araçlarını devre dışı bırakır veexecutearacılığıyla POST/PUT/PATCH/DELETE'i engeller. Yazmalar varsayılan olarak etkindir; bu bayrak onları kapatır. Salt Okunur Mod bölümüne bakın.--allow-deletes-executearacılığıyla DELETE isteklerine izin ver.--read-onlyayarlandığında yok sayılır (başlangıç uyarısıyla). Varsayılanfalse.--log-level <level>- Minimum günlük düzeyi (info, error)--log-file <path>- Günlük dosyası yolu veya dosya adı. Belirtilmezse, günlükler yalnızca konsola yazılır-q, --quiet- Dosya günlüğünü devre dışı bırakır, yalnızca hataları konsola kaydeder--list-tools-by-version- Kayıtlı tüm araçları desteklenen Octopus Server sürümlerine göre listeler ve çıkar
🔨 Araçlar
URL Tabanlı Araçlar
Hızlı başlangıç: Manuel kimlik çıkarma olmadan sorunları araştırmak için Octopus URL'lerini doğrudan yapıştırın.
get_deployment_from_url: Dağıtım URL'sinden dağıtım ayrıntılarını alır (takip için taskId döndürür)get_task_from_url: Görev URL'sinden görev ayrıntılarını ve günlüklerini alır
Dağıtım araştırma iş akışı:
1. get_deployment_from_url with deployment URL
→ Returns deployment context + taskResourceUri + grepTaskLogHint
2a. Fetch the structured activity tree via resources/read (or read_resource)
octopus://spaces/{spaceName}/tasks/{taskId}/details
2b. Or call grep_task_log with the taskId to search the raw log without
fetching the full body:
grep_task_log({ spaceName, taskId, pattern: "error|fail", caseInsensitive: true })
Görev araştırması (doğrudan görev URL'si):
get_task_from_url with task URL
→ Returns task details and logs immediately
Bu araçlar, manuel kimlik çıkarmayı şu şekilde ortadan kaldırır:
- URL'leri otomatik ayrıştırma
- Alan kimliklerini alan adlarına çözümleme
- Kimlik biçimlerini doğrulama
- Net hata mesajları sağlama
Örnek URL'ler:
- Dağıtım:
https://your-octopus.com/app#/Spaces-1/projects/my-app/deployments/Deployments-123 - Görev:
https://your-octopus.com/app#/Spaces-1/tasks/ServerTasks-456
Ayrıntılı iş akışları, örnekler ve en iyi uygulamalar için URL'lerle Çalışma bölümüne bakın.
Temel Araçlar
list_spaces: Octopus Deploy örneğindeki tüm alanları listelerlist_environments: Belirli bir alandaki tüm ortamları listeler
API Kataloğu ve Geri Durdurucu
Bu araçlar ve kaynaklar, ajanın adanmış hazırlanmış bir aracı olmayan Octopus REST uç noktalarına ulaşmasını sağlar; okuma, yazma ve silme işlemleri arasında sunucu tarafında sıkı kapı kontrolü uygulanır.
grep_llms_txt: Octopus API kataloğunu (octopus://api/llms.txt) grep tarzı semantiklerle arayın (minimum desteklenen Octopus sürümü:2026.2.3916). Katalog gövdesi büyüktür (genellikle 300+ KB) — kaynak gövdesini doğrudan okumak yerine bunu çağırın. Parametreler GNU grep'i yansıtır (pattern,caseInsensitive,invertMatch,fixedString,beforeContext,afterContext,maxCount). Uç noktaları keşfetmek (POST /releases), silme uç noktalarını listelemek (DELETE) veya bir yazma işlemi için gövde türünü bulmak (Body: Create.*Command) için kullanışlıdır.execute: Yapılandırılmış REST güvenlik ağı./apialtındaki herhangi bir Octopus REST uç noktasına ulaşır. HTTP yöntemi, yetkili okuma/yazma/silme sınıflandırıcısıdır — asla LLM'nin ayarlayabileceği birisWritebayrağı değildir. Yöntem kapısı sunucu tarafında sabit kodlanmıştır:GETher zaman izinlidir (yol şekli kontrolü + hassas kara listeye tabidir).POST/PUT/PATCH,--read-onlyayarlandığında engellenir; aksi takdirde kullanıcı onayı gerektirir (elicitation yoluyla).DELETE,--allow-deletesgerektirir (ve--read-onlyayarlandığında engellenir) ayrıca daha güçlü bir "GERİ DÖNDÜRÜLEMEZ" elicitation mesajı gerektirir.- Hassas kara liste (API anahtarı uç noktaları,
DELETE /api/spaces/{id},DELETE /api/users/{id}) her iki bayrak açık olsa bile uygulanır. - Yolun
/apiolması veya/api/ile başlaması zorunludur — mutlak URL'ler, SDK'ya göreli~/api/...yolları ve/apidışındaki ana bilgisayara göreli yollar (ör./octopus/portal/...) baştan reddedilir, böyleceexecuteOctopus REST API yüzeyiyle sınırlı kalır. - Araç seti başına yol izin listesi yalnızca
--toolsetsdaraltıldığında geçerlidir. Tüm araç setleri etkinleştirildiğinde (varsayılan veya açık--toolsets all) izin listesi atlanır ve/apialtındaki herhangi bir yol yukarıdaki kapılara tabi olarak erişilebilir.--toolsetsdaraltıldığında izin listesi kapatma anahtarı haline gelir: yollar yalnızca sahip oldukları araç seti etkinse çözümlenir; bu nedenle bir araç setini devre dışı bırakmak (ör.certificates) yollarınıexecuteüzerindenGETüzerinde bile erişilemez hale getirir.
Katalog verileri ayrıca MCP Kaynakları olarak da sunulur:
octopus://api/llms.txt— her Octopus REST uç noktasının (HTTP yöntemi, yol, sorgu parametreleri, istek/yanıt türleri) markdown kataloğu. Octopus Server2026.2.3916veya sonrasını gerektirir. Yapılandırılmış sunucu URL'sine göre 5 dakikalık bellek içi önbellek. Gövdeyi doğrudan okumak yerinegrep_llms_txttercih edin.octopus://api/capabilities— çalışan oturumu açıklayan JSON: sunucu sürümü, etkin araç setleri, kullanılabilir araçlar (minimumOctopusVersionile) ve--read-only/--allow-deletesaçık olup olmadığı. Ajanın bu oturumda neye erişilebilir olduğunu keşfetmesi için kullanışlıdır.
Projeler
list_projects: Belirli bir alandaki tüm projeleri listele
Dağıtımlar
deploy_release: Bir sürümü ortamlara dağıtın (kiracılı ve kiracısız dağıtımları destekler)list_deployments: İsteğe bağlı filtrelemeyle bir alandaki dağıtımları listele
Sürümler
create_release: Bir proje için yeni bir sürüm oluşturunfind_releases: Bir alandaki sürümleri bulun (kimliğe göre belirli bir sürümü alabilir veya projeye göre sürümleri listeleyebilir/filtreleyebilir)
Sürüm ayrıntıları ayrıca octopus://spaces/{spaceName}/releases/{releaseId} adresinde bir MCP Kaynağı olarak mevcuttur — sürüm notları ve seçilen paketler dahil tam sürüm gövdesini almak için resources/read (veya read_resource güvenlik ağı aracı) ile getirin.
Runbook'lar
find_runbooks: Bir projedeki runbook'ları bulun (kimliğe göre belirli bir runbook'u alabilir veya kısmi ada göre runbook'ları listeleyebilir/filtreleyebilir). Her özet, yayınlanmış anlık görüntü kimliğini, çok kiracılı modu ve ortam kapsamını içerir; böylece çağıranlar çalıştırmadan önce geçerli hedefleri seçebilir.run_runbook: Bir runbook'u bir veya daha fazla ortamda çalıştırın. Kiracılı çalıştırmaları (kiracı adına veya kiracı etiketine göre), istemli değişkenleri, kılavuzlu hata modunu, zamanlanmış çalıştırma pencerelerini ve adım veya makine dahil etme/hariç tutmayı destekler.runbookSnapshotIdatlanırsa runbook'un yayınlanmış anlık görüntüsünü varsayılan olarak kullanır.
Tam runbook gövdesi (çalışma zamanı ilkesi alanları dahil) octopus://spaces/{spaceName}/runbooks/{runbookId} adresinde bir MCP Kaynağı olarak mevcuttur.
Görevler
Görev verileri öncelikle MCP Kaynakları olarak sunulur. Aşağıdakilerden biriyle resources/read (veya read_resource güvenlik ağı aracı) kullanın:
octopus://spaces/{spaceName}/tasks/{taskId}— hafif meta veriler (durum, zamanlama, tamamlanma bayrakları)octopus://spaces/{spaceName}/tasks/{taskId}/details— tam ServerTaskDetails (İlerleme, ActivityLogs ağacı vb.)
Günlük araması için grep_task_log aracını bir /log kaynağı yerine kullanın:
grep_task_log: Tam gövdeyi getirmeden bir görevin etkinlik günlüğünü arayın. Parametreler GNU grep'i yansıtır (pattern,caseInsensitive,invertMatch,fixedString,beforeContext,afterContext,maxCount). 1 tabanlılineNumberile eşleşen satırları, isteğe bağlı önce/sonra bağlam dizilerini ve tüm günlük boyunca birtotalMatchessayısını döndürür.
Kasıtlı olarak /log kaynağı yoktur: etkinlik günlükleri birkaç megabayt olabilir ve adreslenebilir bir kaynak, grep neredeyse her zaman doğru ilkel olduğunda çağıranları tüm gövdeyi getirmeye teşvik eder.
Kiracılar
find_tenants: Bir alandaki kiracıları bulun (kimliğe göre belirli bir kiracıyı alabilir veya filtrelerle kiracıları listeleyebilir/arayabilir)get_tenant_variables: Kiracı değişkenlerini türe göre alın (tümü, ortak veya proje)get_missing_tenant_variables: Değerleri eksik olan kiracı değişkenlerini alın
Kubernetes
get_kubernetes_live_status: Bir proje ve ortam için Kubernetes kaynaklarının canlı durumunu alın (minimum desteklenen sürüm:2025.3)
Makineler (Dağıtım Hedefleri)
find_deployment_targets: Bir alandaki dağıtım hedeflerini bulun (kimliğe göre belirli bir hedefi alabilir veya filtrelerle hedefleri listeleyebilir/arayabilir)
Sertifikalar
find_certificates: Bir alandaki sertifikaları bulun (kimliğe göre belirli bir sertifikayı alabilir veya filtrelerle sertifikaları listeleyebilir/arayabilir)
Hesaplar
find_accounts: Bir alandaki hesapları bulun (kimliğe göre belirli bir hesabı alabilir veya filtrelerle hesapları listeleyebilir/arayabilir)
Kesintiler
find_interruptions: Bir alandaki bekleyen veya geçmiş kesintileri (manuel müdahaleler, onaylar, kılavuzlu hata istemleri) bulun; isteğe bağlı olarak göreve, projeye, ortama, ilgili belgeye, sorumluluğa veya bekleyen duruma göre filtrelenir. Özet özetler döndürür; tam Form tanımı içinoctopus://spaces/{spaceName}/interruptions/{interruptionId}kaynağını referans alın (kontrol türleri, Markdown talimatları, düğme seçenekleri, gönderilen Form.Values).
Özellik Anahtarları
find_feature_toggles: Bir projedeki müşteri özellik anahtarlarını listeleyin. Her özet, ortam başına durumu (isEnabled,rolloutPercentage,clientRolloutPercentage) ve birresourceUriiçerir; böylece "X nerede açık" sorusu liste yanıtından yanıtlanabilir.update_feature_toggle: Mevcut bir anahtarı ayarlayın. Dar yüzey — bir ortamı açın/kapatın, dağıtım yüzdelerini değiştirin veya anahtar düzeyindeki açıklamayı / varsayılan durumu güncelleyin. Dahili olarak geçerli anahtarı getirir, yamalarınızı bellekte uygular ve birleştirilmiş gövdeyi PUT eder; böylece bahsedilmeyen ortamlar ve bahsedilmeyen alanlar korunur. Anahtarda zaten yapılandırılmamış bir ortama başvuran yamalar reddedilir.
Tam anahtar gövdesi (açıklama, kiracılar, segmentler, minimum sürümler) octopus://spaces/{spaceName}/projects/{projectId}/featuretoggles/{slug} adresinde bir MCP Kaynağı olarak mevcuttur. Dağıtım grubu gövdeleri, salt okunur inceleme için octopus://spaces/{spaceName}/projects/{projectId}/rolloutgroups/{rolloutGroupId} adresinde adreslenebilir.
Kapsam dışı (Octopus UI kullanın): yeni özellik anahtarları oluşturma, anahtarları silme, yeniden adlandırma veya yeniden etiketleme, dağıtım gruplarını ekleme/çıkarma, kiracı hedefleme, segmentler, minimum sürüm filtreleri ve dağıtım grubu / SDK istemci tanımlayıcı yönetimi.
Ek Araçlar
get_deployment_process: Projeler veya sürümler için kimliğe göre dağıtım sürecini alınget_variables: Bir proje için tüm proje değişkenlerini ve kitaplık değişken seti değişkenlerini alın (config-as-code projelerinigitRefile destekler)get_branches: Sürüm kontrollü bir proje için Git dallarını alın (minimum desteklenen sürüm:2021.2)get_current_user: Geçerli kimliği doğrulanmış kullanıcı hakkında bilgi alın
🔒 Güvenlik Hususları
Octopus MCP Sunucusu hem okuma hem de yazma işlemlerini içerir. Önemli güvenlik hususları:
Okuma İşlemleri
- Sır olarak işaretlenmemişlerse üretim sırlarını içerebilecek tam dağıtım günlüklerini okuyabilir
- Hassas yapılandırma verilerine ve değişkenlere erişim
- Tam olarak güvenmediğiniz araçlara ve modellere bağlanırken dikkatli olun
Yazma İşlemleri
Varsayılan olarak aşağıdaki yazma işlemleri mevcuttur:
- Sürüm oluşturma: Projeler için yeni sürümler oluşturabilir
- Sürüm dağıtma: Ortamlara (üretim dahil) dağıtımları tetikleyebilir
- Runbook çalıştırma: Runbook'ları ortamlara ve kiracılara karşı yürütebilir
- Özellik anahtarlarını güncelleme: Ortam başına durumu değiştirebilir ve mevcut anahtarlardaki dağıtım yüzdelerini değiştirebilir
executegüvenlik ağı aracılığıyla rastgele POST/PUT/PATCH:/apialtındaki yollarla sınırlıdır, her zaman açık hassas kara listeyle. Araç seti başına yol izin listesi yalnızca--toolsetsdaraltıldığında geçerlidir; tüm araç setleri etkinleştirildiğinde (varsayılan) tek yol kapıları/apisınırı ve hassas kara listedir.
Yukarıdakilerin tümünü devre dışı bırakmak için --read-only iletin. execute aracılığıyla DELETE istekleri ek bir --allow-deletes bayrağı gerektirir — geri döndürülemez işlemler için kasıtlı bir opt-in — ve --read-only ayarlandığında engellenmiş kalır.
Kritik Güvenlik Önlemleri:
- En Az Ayrıcalık: Kullanım durumunuz için gereken minimum izinlere sahip API anahtarları kullanın
- Salt Okunur Moda Opt-in: Yazmalar varsayılan olarak etkindir. Üretim için, yazma işlemleri için belirli, kontrollü bir kullanım durumunuz yoksa
--read-onlyiletin. DELETE her zaman ek--allow-deletesopt-in gerektirir. - Yöntem kapısı sunucu tarafındadır ve sabit kodlanmıştır:
executeöğesine iletilen HTTP yöntemi yetkili sınıflandırıcıdır. Ajan, çağrının ne yaptığını yanlış tanıtarak kapıyı atlayamaz — POST/PUT/PATCH/DELETE istekleri, istek gövdesindeki düzyazıdan bağımsız olarak katman özel kapılandırma alır. - Araç seti filtreleme bir kapatma anahtarı görevi görür:
--toolsetsdaraltmak, devre dışı bırakılan araç setlerinin seçilmiş araçlarını ve yollarınıexecuteizin listesinden kaldırır. (İzin listesi yalnızca araç setleri daraltıldığında danışılır; tüm araç setleri etkinleştirildiğindeexecutebunun yerine/apişekil kontrolü ve hassas kara listeyle sınırlandırılır.) - Prompt Enjeksiyon Riski: Ajanları tam otomatik modda çalıştırmak sizi prompt enjeksiyon saldırılarına karşı savunmasız bırakabilir
Öneri: Üretim ortamları için, yazma işlemleri için belirli, kontrollü bir kullanım durumunuz yoksa --read-only iletin. --allow-deletes öğesini, execute aracılığıyla DELETE semantiklerine özel olarak ihtiyaç duymadıkça kapalı bırakın.
⚠️ Sınırlamalar
Veri Analizi
Mevcut AI sohbet araçlarının ve MCP protokolünün doğası, büyük miktarda veriyi analiz etmeyi pratik değil kılar. Çoğu MCP istemcisi şu anda araç çağrılarını zincirlemeyi (bir aracın çıktısını sonrakine girdi olarak kullanmayı) desteklemez ve bunun yerine sonuçları belirteç belirteç kopyalamaya geri döner; bu da sıklıkla halüsinasyonlara yol açar. Octopus örneğinizden analiz amacıyla geçmiş verileri işlemek istiyorsanız, API'yi doğrudan kullanmanızı veya araç çağrısı sonuçlarını programlı olarak işleyebilen kendi MCP istemcinizi yazmanızı öneririz.
Performans
MCP Sunucusu teknik olarak mevcut Octopus Sunucu API'sinin üzerinde ince bir katmandır. Bu nedenle büyük miktarda veri alabilir (örneğin, binlerce dağıtım isteme). Bu tür sorgular örneğinizin performansı üzerinde önemli bir etkiye sahip olabilir. Modellerinize yalnızca ihtiyaç duyduğu minimum veri kümesini almasını söyleyin (çoğu model bunu kutudan çıktığı gibi çok iyi yapar).
🤝 Katkılar
Contributions are welcome! :heart: Please read our Contributing Guide for information about how to get involved in this project.
We are eager to hear how you plan to use Octopus MCP Server and what features you would like to see included in future version.
Please use Issues to provide feedback, or request features.
If you are a current Octopus customer, please report any issues you experience using our MCP server to our support team. This will ensure you get a timely response within our standard support guarantees.
🙋 SSS
Uzaktan bir MCP sunucusu yayınlama planınız var mı?
Octopus Server'a doğrudan bir MCP sunucusu entegre etmek üzerinde çalışıyoruz. Bu, daha karmaşık MCP araçları oluşturmamızın kapısını açacak ve ayrıca:
- Octopus Yöneticilerine MCP istemcileri üzerinde daha ayrıntılı kontrol sağlama
- İstemci kimlik doğrulaması için OAuth'u yerel olarak destekleme
- Güvenlik tarama araçlarını MCP çıktısına entegre etme
Eğer bu ilginizi çekiyorsa, lütfen yol haritamızdaki öğeye ilginizi kaydedin.
Lisans
Bu proje, Mozilla Public License 2.0 açık kaynak lisansı koşulları altında lisanslanmıştır.