MCP Sunucusu - Yapay Zekâ Ajanlarından Bildirim ve Arama

Claude Code, Codex, Cursor, ChatGPT ve diğer yapay zekâ ajanlarını Echobell'in resmi MCP sunucusuna bağlayın; push bildirimi veya arama alın.


Echobell resmi bir Model Context Protocol (MCP) sunucusu çalıştırır. Bunu yapay zekâ ajanınıza bağlayın — Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude, ChatGPT ya da başka herhangi bir MCP istemcisi — ve ajan, Echobell kanallarınızdan biri üzerinden bildirim gönderen tek bir araç kazanır: notify.

Uzun bir yeniden düzenleme, bir test çalıştırması ya da bir dağıtım başlatın, bilgisayarın başından kalkın ve ajandan iş bitince size haber vermesini isteyin. İş bittiğinde telefonunuz titrer, ajanın size ihtiyacı olduğunda zaman duyarlı bir uyarı gösterir, bir şeyler ciddi biçimde ters gittiğinde ise bir telefon araması gibi çalar.

Nasıl Çalışır

  • Bu, https://mcp.echobell.one/mcp adresinde, Streamable HTTP taşıma katmanını kullanan uzak bir MCP sunucusudur. Kurulacak bir şey yoktur: npm paketi yok, npx yok, yerel süreç yok.
  • Her MCP URL'si tek bir kanala aittir. Ajan notify aracını çağırdığında, o kanala abone olan herkes bildirimi kendi seçtiği bildirim türüyle alır.
  • Kimlik bilgisi, kanalın tetikleyici belirtecidir — kanalın webhook URL'sinin sonundaki belirtecin aynısı. MCP sunucusu, kanalın webhook'u gibi çalışır; tek farkı, ajanın nasıl çağıracağını bildiği bir araç olmasıdır.

Ajanlarınız için "AI Agents" gibi ayrı bir kanal oluşturun ve bu kanala Arama türüyle abone olun. Böylece ajanlarınız aramaya kadar herhangi bir seviyeyi seçebilir; kanalı aynı uyarıları isteyen ekip arkadaşlarınızla da paylaşabilirsiniz.

MCP URL'nizi Alın

Uygulamadan

  1. Echobell uygulamasını açın ve ajanınızın kullanacağı kanala dokunun.
  2. Kanal ayrıntılarında Yapay Zekâ Ajanı Bağla bölümünü bulun.
  3. MCP Sunucu URL'sini ya da ajanınız için hazırlanmış kurulum parçacığını kopyalayın.

Webhook URL'sinden

MCP URL'si, kanalın webhook URL'siyle aynı belirteci kullanır. Belirteci webhook URL'sinin sonundan alın ve https://mcp.echobell.one/mcp/ adresinin arkasına ekleyin:

Webhook URL: https://hook.echobell.one/t/<channel-token>
MCP URL:     https://mcp.echobell.one/mcp/<channel-token>

MCP URL'si kanalınızın tetikleyici belirtecini içerir. Ona sahip olan herkes kanalın abonelerine bildirim gönderebilir; bu yüzden onu bir parola kadar gizli tutun. Bkz. Güvenlik.

Ajanınızı Kurun

Aşağıdaki tüm parçacıklar URL biçimini kullanır. <channel-token> yerine kanalınızın tetikleyici belirtecini yazın ya da belirteci zaten doldurulmuş olan, uygulamanın verdiği parçacığı yapıştırın.

Claude Code

claude mcp add --transport http echobell https://mcp.echobell.one/mcp/<channel-token>

Sunucuyu yalnızca mevcut projede değil, tüm projelerde kullanmak için --scope user ekleyin.

Codex

Şunu ~/.codex/config.toml dosyasına ekleyin:

[mcp_servers.echobell]
url = "https://mcp.echobell.one/mcp/<channel-token>"

Cursor

Şunu ~/.cursor/mcp.json dosyasına ya da bir projedeki .cursor/mcp.json dosyasına ekleyin:

{
  "mcpServers": {
    "echobell": {
      "url": "https://mcp.echobell.one/mcp/<channel-token>"
    }
  }
}

VS Code (GitHub Copilot)

Şunu çalışma alanınızdaki .vscode/mcp.json dosyasına ekleyin, ardından aracı Copilot Chat'te ajan modunda kullanın:

{
  "servers": {
    "echobell": {
      "type": "http",
      "url": "https://mcp.echobell.one/mcp/<channel-token>"
    }
  }
}

.vscode/mcp.json deponuza commit ediliyorsa, belirtecin dosyada yer almaması için bunun yerine girdi istemli başlık biçimini kullanın.

Windsurf

Şunu ~/.codeium/windsurf/mcp_config.json dosyasına ekleyin:

{
  "mcpServers": {
    "echobell": {
      "serverUrl": "https://mcp.echobell.one/mcp/<channel-token>"
    }
  }
}

Gemini CLI

Şunu ~/.gemini/settings.json dosyasına ekleyin:

{
  "mcpServers": {
    "echobell": {
      "httpUrl": "https://mcp.echobell.one/mcp/<channel-token>"
    }
  }
}

Claude Desktop ve claude.ai

  1. Settings → Connectors bölümünü açın.
  2. Add custom connector seçeneğini seçin.
  3. Ad olarak Echobell, URL olarak https://mcp.echobell.one/mcp/<channel-token> girin ve ekleyin.

Bağlayıcı hem web'deki Claude'da hem de masaüstü uygulamasında kullanılabilir.

ChatGPT

  1. ChatGPT ayarlarında geliştirici modunu açın.
  2. Settings → Connectors bölümünü açın ve Create seçeneğini seçin.
  3. URL olarak https://mcp.echobell.one/mcp/<channel-token> girin ve kimlik doğrulamayı No authentication olarak ayarlayın — kimlik bilgisi URL'deki belirteçtir.

Diğer MCP İstemcileri

Streamable HTTP taşıma katmanını destekleyen her istemci çalışır. İstemciye https://mcp.echobell.one/mcp/<channel-token> URL'sini verin ya da aşağıdaki başlık biçimini kullanın.

Başlık Biçimi

Belirteci URL'ye koymak yerine bir Authorization başlığında gönderebilirsiniz. İki biçim de birbirine denktir.

URL:            https://mcp.echobell.one/mcp
Authorization:  Bearer <channel-token>

Claude Code ile:

claude mcp add --transport http echobell https://mcp.echobell.one/mcp \
  --header "Authorization: Bearer <channel-token>"

VS Code'da bir girdi istemi belirteci .vscode/mcp.json dışında tutar, böylece dosyayı gönül rahatlığıyla commit edebilirsiniz. VS Code, sunucu ilk kez başladığında belirteci sorar ve güvenli biçimde saklar:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "echobell-token",
      "description": "Echobell channel trigger token",
      "password": true
    }
  ],
  "servers": {
    "echobell": {
      "type": "http",
      "url": "https://mcp.echobell.one/mcp",
      "headers": {
        "Authorization": "Bearer ${input:echobell-token}"
      }
    }
  }
}

notify Aracı

Sunucu tek bir araç sunar: notify. Ajanınız, isteminize göre bu aracı nasıl dolduracağına kendisi karar verir.

ArgümanTürZorunluAçıklama
titlestringEvetBildirim başlığı.
bodystringHayırBildirim metni.
linkstring (URL)HayırBildirime dokunduğunuzda açılan bağlantı; örneğin bir pull request, bir derleme günlüğü veya bir pano.
urgencystringHayırnormal, time-sensitive veya calling. Her abonenin kendi seviyesini kullanmak için boş bırakın. Bkz. Aciliyet.

Aciliyet

Bir kanala abone olan herkes uygulamada o kanal için bir bildirim türü seçer: Normal, Zaman Duyarlı veya Arama. Bu seçim, kanalın o kişiye ulaşabileceği en yüksek seviyedir.

  • Ajan urgency göndermediğinde her abone kendi seçtiği seviyeyi alır.
  • Ajan urgency gönderdiğinde, bir abonenin seviyesini yalnızca düşürebilir, asla yükseltemez. Arama türüyle abone olduysanız "urgency": "normal" normal bir bildirim olarak gelir. Normal türüyle abone olduysanız "urgency": "calling" yine normal bir bildirim olarak gelir.

Böylece tek bir kanal her şeyi karşılar. Arama türüyle abone olun, ardından ajana rutin güncellemeleri normal olarak göndermesini ve calling seviyesini yalnızca bir şey bozulduğunda kullanmasını söyleyin.

Webhook isteklerindeki notificationType alanının aksine urgency, özel şablon kullanan kanallarda da çalışır.

Arama için Echobell Premium Gerekir

Arama bildirimleri bir Echobell Premium özelliğidir. Ajan calling istediğinde, Premium'u olmayan bir abone bunun yerine zaman duyarlı bir bildirim alır — uygulamada ve webhook'larda olanın aynısı.

Kanal Başına Dakikada Bir Arama

Bir kanal her aboneyi dakikada en fazla bir kez arar. Ajan o dakika içinde başka bir arama isterse — örneğin bir yeniden deneme döngüsüne takılıp kaldığı için — abone bunun yerine zaman duyarlı bir bildirim alır; bu bildirim yine de odak modlarını aşar. Webhook ve e-posta tetikleyicileri de aynı kurala uyar.

Ajan her iki durumdan da haberdar edilir. Araç sonucu her geri düşüşü listeler; böylece ajan telefonun çalmadığını bilir ve sizi aradığını varsaymak yerine bunu söyleyebilir.

Ajana Ne Döner

Her notify çağrısı, ajan için kısa bir metin özeti ve yapılandırılmış veri döndürür:

{
  "notificationTriggered": true,
  "reason": null,
  "requestedUrgency": "calling",
  "recipients": 1,
  "deliveredUrgency": { "normal": 0, "time-sensitive": 1, "calling": 0 },
  "fallbacks": [
    {
      "from": "calling",
      "to": "time-sensitive",
      "reason": "premium-required",
      "recipients": 1
    }
  ]
}
AlanAnlamı
notificationTriggeredBir bildirim gönderildiğinde true.
reasonNeden hiçbir şey gönderilmediği: conditions-not-met (kanalın koşulları eşleşmedi) veya no-subscribers (kanala kimse abone değil). Bildirim gönderildiğinde null.
requestedUrgencyAjanın istediği urgency ya da boş bıraktıysa null.
recipientsKaç aboneye bildirim gönderildiği.
deliveredUrgencyHer seviyeyi kaç abonenin aldığı.
fallbacksİstenenden daha düşük bir seviye alan aboneler ve nedeni: premium-required (arama için Premium gerekir), subscriber-setting (abonenin bu kanal için kendi seviyesi daha düşük) veya call-cooldown (kanal bu aboneyi son bir dakika içinde zaten aradı).

Doğrudan Aktarım ve Şablonlu Kanallar

MCP sunucusu her iki kanal türüyle de çalışır:

  • Doğrudan aktarım kanalları (varsayılan), title ve body alanlarını ajanın gönderdiği haliyle gösterir.
  • Şablonlu kanallar (Gelişmiş Ayarlar altında Özel Şablon açık olanlar), bildirimi şablonlarınızdan oluşturur. title, body, link, externalLink ve urgency şablon değişkeni olarak kullanılabilir ve kanalın koşulları geçerliliğini korur. Koşullar eşleşmediğinde hiçbir şey gönderilmez ve ajan reason: "conditions-not-met" alır.

Örnek İstemler

Sunucu bağlandıktan sonra bildirimleri sade bir dille isteyin:

  • "Tüm test paketini çalıştır ve bitince bana Echobell ile bildirim gönder."
  • "Ödeme modülünü yeniden düzenle. Benden bir karar gerekirse bana zaman duyarlı bir Echobell uyarısı gönder."
  • "Staging'e dağıt. Dağıtım başarısız olursa beni ara, olmazsa URL'yi içeren normal bir bildirim gönder."
  • "Migration bitince bana bir özet ve pull request bağlantısıyla bildirim gönder."

Bunu alışkanlık haline getirmek için ajanınızın talimat dosyasına (CLAUDE.md, AGENTS.md, .cursorrules vb.) şuna benzer bir satır ekleyin:

When a task takes longer than a few minutes, call the Echobell notify tool when it finishes.
Use urgency "calling" only when something is broken and needs me right away.

Güvenlik

  • Belirteç, kimlik bilgisidir. MCP URL'sine (veya belirtece) sahip olan herkes kanalın abonelerine bildirim gönderebilir. Belirteçle hiçbir şey okunamaz, hesabınız değiştirilemez — yapabileceği tek şey bildirim göndermektir.
  • Paylaşılan dosyalara koymayın. URL biçimini içeren bir yapılandırma dosyasını commit etmeyin. Proje düzeyindeki yapılandırmalar için girdi istemi ya da ortam değişkeniyle birlikte başlık biçimini kullanın.
  • Erişimi tetikleyici belirteci sıfırlayarak iptal edin. Kanalı uygulamada açın ve tetikleyici belirtecini sıfırlayın. Eski MCP URL'si hemen çalışmayı bırakır (istekler 401 Unauthorized alır), eski webhook URL'si de öyle. Ajanlarınızı ve webhook çağıranlarınızı yeni belirteçle güncelleyin.

Sınırlar ve Hatalar

  • Hız sınırı: Her belirteç dakikada en fazla 120 MCP isteği kabul eder. MCP isteklerinin, kanalın webhook isteklerinden ayrı kendi kotası vardır.
  • 401 Unauthorized: Belirteç eksik, yanlış ya da sıfırlanmış.

İlgili Sayfalar