OpenAI Codex'te Shager: config.toml, bearer_token_env_var ve taslakları taslak olarak tutan bir araç listesi
Shager'ın uzak MCP sunucusunu config.toml veya codex mcp add ile Codex CLI'a ekleyin, anahtarı ortam değişkeninden okuyun, araçları sınırlayın, taslak açın.

Shager'ı OpenAI'ın Codex CLI aracına bağlamak için ~/.codex/config.toml dosyasına url = "https://app.shager.ai/api/mcp" ve bearer_token_env_var = "SHAGER_API_KEY" içeren bir [mcp_servers.shager] tablosu ekleyin, ardından shgr_live_ anahtarınızı bu değişkene dışa aktarın. Codex streamable HTTP'yi yerel olarak konuşur ve anahtarı bearer token olarak gönderir; ne bir köprüye ne de yerel bir sürece ihtiyaç vardır. Aynı işi codex mcp add shager --url ... --bearer-token-env-var SHAGER_API_KEY ile tek satırda da yapabilirsiniz.
Rehberin geri kalanı bunu sonradan pişman olmayacağınız şekilde yapmakla ilgili: anahtarı dosyanın dışında tutmak, Codex'in hangi Shager araçlarını çağırabileceğini sınırlamak ve bağlantının çalıştığını kanıtlayan bir ilk görev seçmek.
Codex uzak MCP sunucuları için neleri destekliyor?
OpenAI'ın Codex MCP dokümantasyonu, bir url ile yapılandırılan streamable HTTP sunucularını ve başlıklarla kimlik doğrulamanın üç yolunu anlatır. Yapılandırma referansı bunları şöyle tanımlar:
| Anahtar | Ne yapar |
|---|---|
bearer_token_env_var |
Değeri bearer token olarak gönderilen ortam değişkeninin adı |
http_headers |
Her isteğe eklenen sabit başlıklar |
env_http_headers |
Değerleri ortam değişkenlerinden okunan başlıklar |
Shager Authorization: Bearer shgr_live_... bekler ve bearer_token_env_var tam olarak bunu üretir. Kullanmanız gereken seçenek bu.

A seçeneği: config.toml dosyasını düzenleyin
~/.codex/config.toml dosyasını açın ve şunu ekleyin:
[mcp_servers.shager]
url = "https://app.shager.ai/api/mcp"
bearer_token_env_var = "SHAGER_API_KEY"
Ardından anahtarı TOML dosyasına değil, kabuk profilinize yazın:
export SHAGER_API_KEY="shgr_live_your_key_here"
Yapılandırmanın anahtarın kendisini değil, değişkenin adını tuttuğuna dikkat edin. Yani bu parçayı rahatça commit edebilir ya da paylaşabilirsiniz; her ekip arkadaşı kendi anahtarını sağlar. Kişi başına ayrı anahtar ileride kendini amorti eder, çünkü Shager'ın https://app.shager.ai/dashboard/agents adresindeki denetim kaydı her çağrıyı onu yapan anahtarla birlikte kaydeder.
B seçeneği: codex mcp add
Aynı tabloyu CLI sizin yerinize yazar. Codex'in codex mcp add kaynak kodu, streamable HTTP sunucuları için --url seçeneğini ve onu gerektiren bir --bearer-token-env-var bayrağını tanımlar (GitHub'da mcp_cmd.rs):
codex mcp add shager \
--url https://app.shager.ai/api/mcp \
--bearer-token-env-var SHAGER_API_KEY
Kurulu sürümünüz farklıysa esas alınacak kaynak codex mcp add --help çıktısıdır.
Sonucu kontrol edin:
codex mcp list
Codex TUI içinde /mcp, etkin sunucuları ve araçlarını gösterir.
Bunun yerine http_headers kullanmalı mısınız?
Kullanabilirsiniz ama kullanmamalısınız. http_headers = { "Authorization" = "Bearer shgr_live_..." } çalışır; ancak geçerli bir kimlik bilgisini, genellikle dotfile depolarına kopyalanıp giden düz bir metin dosyasına koyar. Bearer token dışında bir başlığa ihtiyacınız varsa env_http_headers, bir başlık adını bir ortam değişkeni adına eşler:
[mcp_servers.shager]
url = "https://app.shager.ai/api/mcp"
env_http_headers = { "Authorization" = "SHAGER_AUTH_HEADER" }
Bu biçimde değişken, şema dahil tam değeri içermelidir: export SHAGER_AUTH_HEADER="Bearer shgr_live_...". Shager için bearer_token_env_var daha basittir ve aynı işi görür.

Codex'in Shager'da neler yapabileceğini nasıl sınırlarsınız?
Kurulum rehberlerinin çoğunun atladığı kısım bu. Codex, bir sunucunun araçlarını enabled_tools (izin listesi) ve ondan sonra uygulanan disabled_tools (engel listesi) ile filtrelemenize olanak tanır; ikisi de yapılandırma referansında belgelenmiştir. Bunu Shager'ın anahtar kapsamlarıyla birleştirdiğinizde, şüphe durumunda kapalı kalan iki katman elde edersiniz.
Her şeyi okuyabilen ve taslak oluşturabilen, ancak planlama, iptal ya da bağlantı linki oluşturma yapamayan bir taslak profili:
[mcp_servers.shager]
url = "https://app.shager.ai/api/mcp"
bearer_token_env_var = "SHAGER_API_KEY"
enabled_tools = [
"whoami",
"list_workspaces",
"list_channels",
"list_groups",
"upload_media_from_url",
"create_post",
"get_post",
"list_posts",
"get_analytics",
]
tool_timeout_sec = 120
create_post listede kalıyor, çünkü schedule_at olmadan yalnızca taslak kaydeder. Anahtarda publish kapsamı da yoksa Shager, schedule_at içeren her create_post çağrısını 403 ile reddeder; böylece en yaratıcı model bile araya planlanmış bir gönderi sokamaz.
tool_timeout_sec değerini artırmamızın nedeni, upload_media_from_url aracının dosyayı sunucu tarafında indirmesi; büyük bir dikey video, referansta belirtilen varsayılan 60 saniyeden uzun sürebilir.
Çalıştırmaya değer ilk görev
Birkaç aracı kullanan ve geride yalnızca bir taslak bırakan bir komutla başlayın:
Use the shager MCP server.
1. whoami, then list_workspaces.
2. In workspace "Lakeside Realty", list_channels and list_groups.
3. upload_media_from_url https://example.com/media/open-house.jpg
4. create_post as a draft to group "All agents" with a different caption per
channel (per_channel), mentioning each agent's neighborhood from the channel
name. cta_url https://lakesiderealty.example/open-house, campaign
"open-house-oct", first_comment "Details and RSVP: " followed by the link.
5. get_post and print a table of channel, network, format and state.
Görmeniz gereken: DRAFT durumunda, her hesap için bir hedef içeren ve her hedefin formatı o platforma göre belirlenmiş bir gönderi. Shager'da her hesap, cta_url için kendi kısa linkini ve UTM etiketlerini alır; utm_content hesabın adını taşır. Hesap bazında ilişkilendirmeyi daha sonra mümkün kılan da budur. Ayrıntılar hesap bazında potansiyel müşteri ilişkilendirmesi yazısında.
Codex bunu klavyenin başında bir insan olmadan çalıştırabilir mi?
Codex'in betikler ve CI için etkileşimsiz bir codex exec modu var. Arayüzsüz bir çalıştırmada MCP araç onaylarının nasıl davrandığı sürümden sürüme değişti; bu yüzden bir zamanlayıcıya bağlamadan önce kurulu sürümünüzde deneme çalıştırması yapın. Her hafta gözetimsiz çalışması gereken bir iş için pek çok ekip sohbet katmanını atlayıp Shager'ın REST API'sini kısa bir betikten çağırır; böylece takılıp kalınacak bir onay istemi olmaz. Hangisini seçerseniz seçin, işe kendi anahtarını verin, araç izin listesini dar tutun ve o anahtarın publish taşıyıp taşımayacağına bilinçli olarak karar verin. Bu tercihler etrafında kurulmuş bir rutini haftalık dağıtım rutini yazısında bulabilirsiniz.
Sorun giderme
| Ne görüyorsunuz | Neden | Çözüm |
|---|---|---|
401 unauthorized |
Değişken, Codex'i başlatan kabukta dışa aktarılmamış | Aynı terminalde echo $SHAGER_API_KEY çalıştırın, sonra Codex'i yeniden başlatın |
Araçlar /mcp içinde görünmüyor |
Ad enabled_tools içinde değil ya da disabled_tools içinde |
Yazımı /en/agents sayfasındaki araç listesiyle karşılaştırın |
403 sandbox_unclaimed |
Anahtar ajanın kendi kendine kaydından geldi ve henüz bir insan sahiplenmedi | claim_url adresini bir insana gönderin |
Planlamada 403 forbidden |
Anahtarda publish yok |
Taslak anahtarı için beklenen davranış |
429 rate_limited |
Anahtar başına dakikada 120'den fazla istek | Hesap başına bir çağrı yerine grupları ve tek bir create_post kullanın |
SSS
Codex'in Shager ile konuşması için OAuth gerekir mi?
Hayır. Codex ortam değişkeninden gelen bearer token'ları destekler ve Shager API anahtarını bu şekilde kabul eder. Shager'ın MCP sunucusu OAuth ile girişi de destekliyor, Codex de OAuth sunucularını destekliyor; yani anahtar yönetmek istemiyorsanız giriş yapmak da bir seçenek.
Codex IDE eklentisinde Shager kurulumu farklı mı?
OpenAI'ın MCP dokümantasyonuna göre ChatGPT masaüstü uygulaması, Codex CLI ve IDE eklentisi bu yapılandırmayı paylaşır; yani aynı ~/.codex/config.toml tablosu hepsine hizmet eder. Ortam değişkeninin düzenleyici sürecine görünür olduğundan emin olun; macOS'ta bu, düzenleyiciyi bir terminalden başlatmak anlamına gelebilir.
Codex'i MCP yerine REST API'ye yönlendirebilir miyim?
Evet, sohbet etmek yerine kod yazıyorsanız. OpenAPI belgesi, MCP araçlarıyla aynı işlemleri aynı kapsamlar ve sınırlarla tanımlar.
Sonraki adım
Codex bağlandıktan sonra, bir şeyi otomatikleştirmeden önce işlemlerin kendisine alışın. REST API hızlı başlangıç rehberi, çalışma alanından takip linkli gönderiye kadar tüm sırayı curl ve Python ile adım adım gösterir; bu da Codex MCP araçlarını çağırırken ne yaptığını okumanıza yardımcı olur.


