MCP Sunucusu
Deckbase MCP
Deckbase için Model Context Protocol sunucusu. Yapay zeka araçları (Cursor, Claude Code, VS Code vb.) belgeleri okuyabilir, desteleri ve kartları yönetebilir.
Uç noktalar
| Mod | Uç nokta | Kimlik doğrulama |
|---|---|---|
| Barındırılan (HTTP) | POST /api/mcp | Authorization: Bearer: panel API anahtarı veya OAuth erişim belirteci. Üretimde aynı yol: /api/mcp. |
OAuth (tarayıcı girişi) bağlanmanın en hızlı yoludur: bkz. Deckbase MCP'ye bağlanma. Betikler ve CI için panel API anahtarları da kullanılabilir. MCP, Basic, Pro ve VIP abonelerine açıktır. Tam referans: read_doc ile docs/public/MCP.md.
Araçlar
| Araç | Açıklama | Parametreler |
|---|---|---|
| list_docs | docs/public/ içindeki Markdown dosyalarını listeler. | Yok. |
| read_doc | Bir belgeyi yoluna göre okur. Yalnızca docs/public/ içindeki belgeler sunulur. | path: ör. MCP.md veya deckbase://docs/public/MCP.md. |
| list_template_block_types | Blok türü anahtarları ve sayısal kimlikleri (text, media, interactive, layout). create_template öncesinde kullan. Statik veri. | Yok. |
| list_block_schemas | Blok türü başına JSON biçimleri: blocksSnapshot, values, configJson. Gerçek örnekler için export_deck ile birlikte kullan. | Yok. |
| list_elevenlabs_voices | generate_audio_for_card üzerindeki voice_id için ElevenLabs ses kimlikleri ve etiketleri. Deckbase tarafından derlenen katalog. Kullanıcı Firestore okuması yapılmaz. | İsteğe bağlı language, gender, search. |
| list_ai_image_models | generate_image_for_card için izin verilen yapay zeka görsel modeli kimlikleri; etiketler ve kredi maliyetleriyle birlikte. | Yok. |
| Araç | Açıklama | Parametreler |
|---|---|---|
| list_decks | Kullanıcının desteleri (deckId, başlık, açıklama, isteğe bağlı defaultTemplateId, isteğe bağlı iconEmoji). | Yok. |
| create_deck | Bir deste oluşturur. Ayarlanmışsa deckId, icon_emoji / iconEmoji döndürür. | title (zorunlu), description (isteğe bağlı), isteğe bağlı icon_emoji veya iconEmoji (tek emoji; kullanıcı istemezse yapay zeka istemcileri başlığa uyan bir tane seçmeli). |
| update_deck | Başlığı, açıklamayı, varsayılan şablonu veya deste simgesini günceller. | deckId (zorunlu); isteğe bağlı title, description, default_template_id, icon_emoji veya iconEmoji (boş dize simgeyi temizler). |
| list_templates | Şablonlar (templateId, ad, açıklama). | Yok. |
| get_template_schema | Düzen için tam JSON: blockId, tür, side ("front" | "back"), configJson, valuesExample, create_card ipuçları. | templateId veya destenin varsayılan şablonu için deckId. |
| create_card | Şablondan yeni kart. cardId, templateId, usedDeckDefault döndürür. front ana bloğu doldurur; block_text anahtarları arka yüz bloklarını içerir (get_template_schema içindeki side). | deckId zorunlu. İsteğe bağlı templateId, front, block_text, generate_audio, voice_id, audio_language, audio_gender. |
| create_cards | Toplu oluşturma. İstek başına en fazla 50. Hata durumunda: created + failedAt. | deckId, cards dizisi (zorunlu). İsteğe bağlı üst düzey templateId, voice_id, generate_audio. |
| update_card | Bir kartın içeriğini düzenler. | deckId, cardId; isteğe bağlı values / blocks_snapshot veya front / block_text birleştir. |
| delete_card | Bir kartı yumuşak siler (çöp kutusu). user_confirmed true olmadıkça sunucu reddeder; yalnızca insan açıkça onayladıktan sonra kullan. | deckId, cardId, user_confirmed (zorunlu boolean). |
| delete_cards | Tek bir destede toplu yumuşak silme. delete_card ile aynı onay kuralı. İstek başına en fazla 50. | deckId, card_ids (boş olmayan dizi), user_confirmed. |
| generate_audio_for_card | Mevcut bir kart için ElevenLabs TTS. | deckId, cardId. voice_id veya audio_language + audio_gender geç. İsteğe bağlı text, block_id, replace_existing. |
| export_deck | Deste + kartlar JSON. truncated, exportType içerir. Tam dışa aktarım, kart başına side + values içeren blocksSnapshot içerir. | deckId (zorunlu); isteğe bağlı max_cards (varsayılan 2000, üst sınır 5000), export_type: full veya values_only. |
| create_template | Yeni şablon (blok düzeni). templateId ve blok kimliklerini döndürür. block_types atlanırsa varsayılan Soru+Cevap. | name (zorunlu); isteğe bağlı description, block_types / blocks (blok başına side), voice_id, audio_language, audio_gender, mainBlockId / subBlockId. |
| update_template | Meta verileri ve/veya düzeni günceller. version değerini artırır. | templateId (zorunlu); isteğe bağlı name, description, block_types / blocks, voice_id, audio_language + audio_gender, mainBlockId / subBlockId. |
list_template_block_types ve list_block_schemas statik veri döndürür (kimlik doğrulama gerekmez). list_elevenlabs_voices Firestore okumaz. Kimlik doğrulaması yapılmamış istekler 401 döndürür.Kaynaklar
Sunucu, docs/public/ içindeki belgeler için MCP kaynakları sunar:
resources/listdocs/public/ içindeki her .md dosyası için bir kaynak (ör. deckbase://docs/public/MCP.md).
resources/readBelge içeriğini bu URI ile getirir.
Örnek: deste, şablon ve kart
- 1
İstemcini MCP URL'si ve bir bearer belirteciyle yapılandır:
Authorization: Bearer YOUR_API_KEY(veya Bağlantı sayfasından alınan bir OAuth erişim belirteci). - 2
list_templates çağır. Boşsa önce list_template_block_types ve create_template kullan.
- 3
Kesin
blockIdanahtarlarını vesidedeğerlerini öğrenmek için seçilentemplateIdile get_template_schema çağır. - 4
Ajan konuya uygun bir simge seçecekse create_deck'i bir
title, isteğe bağlıdescriptionveicon_emojiile çağır. - 5
create_card'ı
deckIdve isteğe bağlı olaraktemplateId,front(ana blok) ve arka dahil diğer bloklar içinblock_textile çağır.
Teknik ayrıntılar
İstemci kurulumu için (Cursor, VS Code, Claude vb.) bkz. Deckbase MCP'ye bağlanma • Diğer bağlantılar için bkz. Kaynaklar