- Strona główna
- Dokumentacja
- Serwer MCP
Serwer MCP
Deckbase MCP
Serwer Model Context Protocol dla Deckbase. Narzędzia AI (Cursor, Claude Code, VS Code itp.) mogą czytać dokumentację oraz zarządzać taliami i fiszkami.
Endpointy
| Tryb | Endpoint | Uwierzytelnianie |
|---|---|---|
| Hostowany (HTTP) | POST /api/mcp | Authorization: Bearer: klucz API z panelu lub token dostępu OAuth. Ta sama ścieżka w produkcji: /api/mcp. |
OAuth (logowanie w przeglądarce) to najszybszy sposób połączenia, zobacz Łączenie z Deckbase MCP. Klucze API z panelu są również dostępne dla skryptów i CI. MCP jest dostępny dla subskrybentów Basic, Pro i VIP. Pełna dokumentacja w docs/public/MCP.md przez read_doc.
Narzędzia
| Narzędzie | Opis | Parametry |
|---|---|---|
| list_docs | Wyświetla pliki Markdown w docs/public/. | Brak. |
| read_doc | Odczytuje dokument według ścieżki. Udostępniane są tylko dokumenty z docs/public/. | path, np. MCP.md lub deckbase://docs/public/MCP.md. |
| list_template_block_types | Klucze typów bloków i ich numeryczne identyfikatory (text, media, interactive, layout). Użyj przed create_template. Dane statyczne. | Brak. |
| list_block_schemas | Kształty JSON dla każdego typu bloku: blocksSnapshot, values, configJson. Połącz z export_deck, aby zobaczyć prawdziwe przykłady. | Brak. |
| list_elevenlabs_voices | Identyfikatory i etykiety głosów ElevenLabs dla voice_id w generate_audio_for_card. Katalog wybrany przez Deckbase. Bez odczytów z Firestore użytkownika. | Opcjonalnie language, gender, search. |
| list_ai_image_models | Dozwolone identyfikatory modeli obrazów AI dla generate_image_for_card wraz z etykietami i kosztami w kredytach. | Brak. |
| Narzędzie | Opis | Parametry |
|---|---|---|
| list_decks | Talie użytkownika (deckId, tytuł, opis, opcjonalnie defaultTemplateId, opcjonalnie iconEmoji). | Brak. |
| create_deck | Tworzy talię. Zwraca deckId oraz icon_emoji / iconEmoji, jeśli ustawiono. | title (wymagane), description (opcjonalne), opcjonalnie icon_emoji lub iconEmoji (pojedyncze emoji; klienty AI powinny wybrać takie, które pasuje do tytułu, chyba że użytkownik zrezygnuje). |
| update_deck | Aktualizuje tytuł, opis, domyślny szablon lub ikonę talii. | deckId (wymagane); opcjonalnie tytuł, opis, default_template_id, icon_emoji lub iconEmoji (pusty ciąg usuwa ikonę). |
| list_templates | Szablony (templateId, nazwa, opis). | Brak. |
| get_template_schema | Dokładny JSON układu: blockId, typ, side ("front" | "back"), configJson, valuesExample, wskazówki dla create_card. | templateId lub deckId dla domyślnego szablonu talii. |
| create_card | Nowa fiszka z szablonu. Zwraca cardId, templateId, usedDeckDefault. front wypełnia główny blok; klucze block_text obejmują bloki na odwrocie (side z get_template_schema). | deckId wymagane. Opcjonalnie templateId, front, block_text, generate_audio, voice_id, audio_language, audio_gender. |
| create_cards | Tworzenie zbiorcze. Maks. 50 na żądanie. W razie błędu: created + failedAt. | deckId, tablica cards (wymagane). Opcjonalnie na najwyższym poziomie templateId, voice_id, generate_audio. |
| update_card | Edytuje zawartość fiszki. | deckId, cardId; opcjonalnie values / blocks_snapshot lub scalenie front / block_text. |
| delete_card | Miękkie usunięcie jednej fiszki (do kosza). Serwer odmówi, chyba że user_confirmed ma wartość true. Używaj tylko po wyraźnej zgodzie człowieka. | deckId, cardId, user_confirmed (wymagana wartość logiczna). |
| delete_cards | Zbiorcze miękkie usunięcie w jednej talii. Ta sama zasada zgody co w delete_card. Maks. 50 na żądanie. | deckId, card_ids (niepusta tablica), user_confirmed. |
| generate_audio_for_card | TTS ElevenLabs dla istniejącej fiszki. | deckId, cardId. Podaj voice_id lub audio_language + audio_gender. Opcjonalnie text, block_id, replace_existing. |
| export_deck | JSON talii wraz z fiszkami. Zawiera truncated, exportType. Pełny eksport obejmuje dla każdej fiszki blocksSnapshot z side + values. | deckId (wymagane); opcjonalnie max_cards (domyślnie 2000, maks. 5000), export_type: full lub values_only. |
| create_template | Nowy szablon (układ bloków). Zwraca templateId i identyfikatory bloków. Domyślnie Pytanie + Odpowiedź, jeśli pominięto block_types. | name (wymagane); opcjonalnie opis, block_types / blocks (z side dla każdego bloku), voice_id, audio_language, audio_gender, mainBlockId / subBlockId. |
| update_template | Aktualizuje metadane i/lub układ. Podbija version. | templateId (wymagane); opcjonalnie nazwa, opis, block_types / blocks, voice_id, audio_language + audio_gender, mainBlockId / subBlockId. |
list_template_block_types i list_block_schemas zwracają dane statyczne (uwierzytelnianie niepotrzebne). list_elevenlabs_voices nie odczytuje Firestore. Żądania bez uwierzytelnienia zwracają 401.Zasoby
Serwer udostępnia zasoby MCP dla dokumentów w docs/public/:
resources/listJeden zasób na każdy plik .md w docs/public/ (np. deckbase://docs/public/MCP.md).
resources/readPobiera zawartość dokumentu według tego URI.
Przykład: talia, szablon i fiszka
- 1
Skonfiguruj klienta z adresem URL MCP i tokenem bearer:
Authorization: Bearer YOUR_API_KEY(lub tokenem dostępu OAuth ze strony Connect). - 2
Wywołaj list_templates. Jeśli lista jest pusta, najpierw użyj list_template_block_types i create_template.
- 3
Wywołaj get_template_schema z wybranym
templateId, aby poznać dokładne kluczeblockIdi wartościside. - 4
Wywołaj create_deck z
title, opcjonalnymdescriptionorazicon_emoji, gdy agent ma dobrać ikonę pasującą do tematu. - 5
Wywołaj create_card z
deckIdoraz opcjonalnietemplateId,front(główny blok) iblock_textdla pozostałych bloków, w tym odwrotu.
Szczegóły techniczne
Konfigurację klientów (Cursor, VS Code, Claude itp.) znajdziesz w: Łączenie z Deckbase MCP • Inne linki znajdziesz w: Zasoby