Ocean MCP sunucusu, REST API ile aynı veriyi şunun üzerinden sunar: Model Context Protocol, böylece yapay zeka ajanları ve MCP destekli istemciler (Claude Code, Claude.ai, Cursor) REST çağrılarını elle yazmadan taranan kullanıcıları, risk skorlarını ve hileci veritabanı kayıtlarını sorgulayabilir.
Uç nokta: https://api.anticheat.ac/mcp
Taşıma: Streamable HTTP (POST yalnızca, JSON yanıtlar)
Kimlik doğrulama: PKCE'li OAuth 2.1
Sunucu Streamable HTTP konuşur, bu yüzden bu taşımayı destekleyen her MCP istemcisi bağlanabilir. Aşağıdaki her istemci OAuth girişini kendisi yönetir; ilk bağlantı denemesi tarayıcını Ocean'ın yetkilendirme sayfasında açar (https://api.anticheat.ac/oauth/authorize, seni onay ekranına gönderir), orada giriş yapıp hangi kapsamları vereceğini seçersin.
Sunucuyu ekle, sonra şununla kimlik doğrula: /mcp Claude Code içinde:
claude mcp add --transport http ocean https://api.anticheat.ac/mcp
Ya da şuraya ekle: .mcp.json projenin içinde:
{
"mcpServers": {
"ocean": {
"type": "http",
"url": "https://api.anticheat.ac/mcp"
}
}
}Ayarlar → Bağlayıcılar → Özel bağlayıcı ekle. Adını Ocean koy, URL'yi https://api.anticheat.ac/mcp yap, sonra Bağlan ve Ocean girişini tamamla. JSON yapılandırması gerekmez.
Şuraya ekle: ~/.cursor/mcp.json (genel) veya .cursor/mcp.json (proje):
{
"mcpServers": {
"ocean": {
"url": "https://api.anticheat.ac/mcp"
}
}
}Sonra Cursor Ayarları → MCP içinde Giriş düğmesine bas, sunucu “Needs login” gösterdiğinde.
Şuraya ekle: .vscode/mcp.json:
{
"servers": {
"ocean": {
"type": "http",
"url": "https://api.anticheat.ac/mcp"
}
}
}Sunucuyu editörden başlat; VS Code OAuth girişini ister.
Şuraya ekle: ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"ocean": {
"serverUrl": "https://api.anticheat.ac/mcp"
}
}
}Şuraya ekle: ~/.gemini/settings.json:
{
"mcpServers": {
"ocean": {
"httpUrl": "https://api.anticheat.ac/mcp"
}
}
}Şunu hedefle: https://api.anticheat.ac/mcp. İstemcinin Streamable HTTP ve PKCE'li OAuth 2.1 desteği olmalı ve Dynamic Client Registration ya da Client ID Metadata Documents desteklemeli. Keşif şuradan başlar: https://api.anticheat.ac/.well-known/oauth-protected-resource/mcp. Bir bağlantıyı elle ayıklamak için MCP Inspector kullan:
npx @modelcontextprotocol/inspector
Sonra taşıma olarak Streamable HTTP seç ve yukarıdaki URL'yi gir.
Her araç, REST uç noktasıyla aynı izin kapsamını kullanır. Bağlantının arkasındaki hesap eşleşen kapsamı vermediyse çağrı başarısız olur.
| Araç | Kapsam | Açıklama |
|---|---|---|
| lookup_scanned_user | scanned-users:lookup | Bir Discord kullanıcısının tarama geçmişini, tespitlerini, ban veya uyarı durumunu ve ilişkili hesaplarını sorgula |
| get_user_risk_score | user:risk-score | Bir Discord kullanıcısının hesaplanan risk skorunu ve seviyesini al |
| create_scan_pin | pins:create | Tarama PIN'lerini programatik oluştur. Yalnızca Enterprise sahipleri, bir enterpriseId argümanı |
| get_scan_pin_status | pins:status | PIN'lerinin anlık tarama ilerlemesini, yüzdeyi ve sonuç özetini al |
| get_scan_pin_results | pins:results | Kendi PIN'lerinin tarama sonuçlarını getir |
| query_cheater_database | db:query (DB erişimi) | Hileci veritabanını Discord ID ile ara: topluluk profili, ağ sorgusu ve Ocean tarama eşleşmeleri |
| get_client_version | yok | Aktif Ocean istemci sürümünü oku |
OAuth onay ekranında bir kapsam vermek, alttaki lisans kontrolünü atlatmaz. db:query yalnızca aktif bir DB Access planı, bir Enterprise veritabanı koltuğu veya bir staff rolü olan hesaplara verilebilir ve pins:create yalnızca aktif bir Enterprise'ın sahibi olan hesaplara verilebilir ve her çağrıda bir enterpriseId argümanı gerekir.
| Sınır | Değer |
|---|---|
| Hız sınırı | Hesap başına saatte 1.000 istek (şuraya yapılan her POST sayılır: /mcp dahil initialize ve tools/list; 429 aşılınca) |
Bir MCP bağlantısını istediğin zaman şuradan iptal edebilirsin: Ayarlar → Bağlı uygulamalar Ocean panelinde.
| Belirti | Anlamı |
|---|---|
401 üst bilgisiyle: WWW-Authenticate | Erişim tokenı eksik veya süresi dolmuş. Sunucuyu yeniden bağla (çoğu istemci otomatik yeniler; yenilemezse kaldırıp tekrar ekle) |
Araç çağrısı isError döndürür ve bir kapsam adı verir | Bağlantı o kapsam olmadan yetkilendirildi. Bağlantıyı kesip yeniden bağlan ve izni onay ekranında ver |
create_scan_pin bir izin hatasıyla başarısız olur | Şu argümanı ister: enterpriseId ve yalnızca o aktif Enterprise'ın sahibi olan hesaplarda çalışır |
429 | Hesap başına saatte 1.000 istek sınırına ulaşıldı; pencere sıfırlanana kadar bekle |
Ocean'a karşı kendi MCP istemcini mi yazıyorsun? Sunucu zorunlu PKCE (S256) ile OAuth 2.1 uygular ve MCP yetkilendirme belirtimini izler.
| Ayrıntı | Değer |
|---|---|
| Yetkilendirme sunucusu üst verisi | https://api.anticheat.ac/.well-known/oauth-authorization-server |
| Korunan kaynak üst verisi | https://api.anticheat.ac/.well-known/oauth-protected-resource/mcp |
| İstemci kaydı | Herkese açık istemciler için Dynamic Client Registration veya Client ID Metadata Documents |
| PKCE | Zorunlu, S256 |
| Erişim tokenı ömrü | 15 dakika |
| Yenileme tokenları | Her kullanımda döndürülür |