MCP

Bağlanma

Claude, Claude Code ve diğer MCP istemcilerini Solk kurulumunuza adım adım bağlayın; OAuth keşfinin nasıl çalıştığını görün.

Claude

  1. 1

    Bağlayıcıyı ekleyin

    Claude'da (web, masaüstü ya da mobil) Customize → Connectors → + Add → Add custom connector'ı seçin. Ad: Solk, adres: https://<firma>.solk.app/mcp. Gelişmiş ayarlardaki istemci kimliği alanlarını boş bırakın — Claude kendini otomatik kaydeder.

  2. 2

    Bağlanın

    Bağlayıcının yanındaki Connect'e basın. Solk kurulumunuzun giriş sayfası açılır; giriş yaptıktan sonra onay ekranı Claude'un istediği izinleri gösterir:

    • Kayıtları okuma — firma, kişi, fırsat, aksiyon, e-posta yazışması, takvim ve panolar
    • Kayıt oluşturma ve güncelleme — firma, kişi, fırsat, görev, not ve görüşme kaydı; görev tamamlama; aşama değiştirme

    İzin ver'e basınca Claude'a dönersiniz.

  3. 3

    Kullanın

    Sohbette Solk'u açık tutun ve sorunuzu yazın. Claude bir aracı ilk kez kullanırken izin ister; okuma araçları için "her zaman izin ver" seçebilirsiniz.

Team / Enterprise: Bağlayıcıyı kuruluş sahibi Organization settings → Connectors → Add → Custom → Web ile ekler. Üyeler bağlayıcıyı kendi listelerinde görür ve Connect ile kendi Solk hesaplarıyla bağlanır — her üyenin yetkisi kendi Solk rolüyle sınırlıdır.

Claude Code

claude mcp add --transport http solk https://ornek.solk.app/mcp

Ardından Claude Code'da /mcp → solk → Authenticate. Claude Code yerel bir dönüş adresi (http://localhost:<kapı>/callback) kullanır; Solk yerel geri döngü adreslerinde kapı numarasını eşleşmede yok sayar.

Projede herkesin kullanması için kapsamı proje yapabilirsiniz (--scope project, .mcp.json'a yazılır); her geliştirici yine kendi hesabıyla izin verir.

ChatGPT, Cursor, VS Code ve diğerleri

Uzak MCP sunucusu (Streamable HTTP) destekleyen istemcilere aynı adresi girin. OAuth destekleyen istemciler keşfi kendileri yapar. Desteklemeyenlerde yönetici bir API anahtarı açıp Authorization: Bearer sk_… başlığıyla verebilir — bu durumda araçlar anahtarı açan yöneticinin yetkisiyle ve her iki kapsamla çalışır.

OAuth keşfi nasıl işler?

İstemciler için ek yapılandırma gerekmez; akış standartlara göredir (MCP Authorization, OAuth 2.1):

  1. İstemci belirteçsiz POST /mcp gönderir → 401 ve WWW-Authenticate: Bearer … resource_metadata="https://ornek.solk.app/.well-known/oauth-protected-resource/mcp".
  2. İstemci korunan kaynak bilgisini okur (RFC 9728) → yetkilendirme sunucusu https://ornek.solk.app.
  3. Yetkilendirme sunucusu bilgisini okur (RFC 8414).
  4. Kendini kaydeder (RFC 7591) ya da istemci bilgi belgesi (CIMD) adresini client_id olarak kullanır.
  5. Kullanıcıyı PKCE (S256) ile onay ekranına yönlendirir, kodu belirteçle değiştirir.
  6. Authorization: Bearer mcp_… ile MCP isteklerini gönderir; belirteç süresi dolunca yeniler.

Protokol ayrıntıları

Taşıma Streamable HTTP, JSON yanıt (SSE akışı yok)
Protokol sürümleri 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05
Yöntemler initialize, tools/list, tools/call, ping ve bildirimler
GET /mcp 405 (sunucudan istemciye akış yok)
Oturum Durumsuz; Mcp-Session-Id gerekmez
Yetersiz kapsam Yazma aracı crm.write olmadan çağrılırsa 403 + WWW-Authenticate: … error="insufficient_scope"
curl https://ornek.solk.app/mcp \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'