CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
deckbase avatar

Deckbase Mcp Server

deckbase/deckbase-web
35 toolsSTDIOregistry active
Summary

Connects Claude to your Deckbase instance, letting you pull documentation, template blocks, and project context directly into conversations. You'd reach for this when you want Claude to work with your team's docs and templates without copy-pasting everything manually. The server exposes read access to your Deckbase content, so you can ask Claude to reference specific templates, search through documentation, or understand project context that lives in your Deckbase workspace. Useful if your team already uses Deckbase to organize docs and you want that knowledge available during AI-assisted development work.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
ego lite browserego lite browser
ego lite browser
Fastest browser for AI agents to run web automation tasks, always free.
Download Free life-time →
CodeHealth MCP ServerCodeHealth MCP Server
CodeHealth MCP Server
Protect your code quality, stop the AI slop.
Try For Free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
ego lite browserego lite browser
ego lite browser
Fastest browser for AI agents to run web automation tasks, always free.
Download Free life-time →
CodeHealth MCP ServerCodeHealth MCP Server
CodeHealth MCP Server
Protect your code quality, stop the AI slop.
Try For Free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →

Tools

Public tool metadata for what this MCP can expose to an agent.

35 tools
list_docsList Markdown files in docs/public/. Only docs in that folder are exposed. Use list_docs to see available filenames, then read_doc to fetch one.

List Markdown files in docs/public/. Only docs in that folder are exposed. Use list_docs to see available filenames, then read_doc to fetch one.

No parameter schema in public metadata yet.

read_docRead a doc from docs/public/ by path. Only docs in that folder are served. Use list_docs first to see available filenames (e.g. MCP.md).1 params

Read a doc from docs/public/ by path. Only docs in that folder are served. Use list_docs first to see available filenames (e.g. MCP.md).

Parameters* required
pathstring
Doc path (e.g. MCP.md or deckbase://docs/public/MCP.md). Only files in docs/public/ are served.
list_template_block_typesList all Deckbase template block types (keys, numeric ids, labels, category). Use this so the user can choose multiple block types in order; then pass that list as block_types to create_template. **Quiz blocks:** category `quiz` — keys `quizMultiSelect` (8), `quizSingleSelect`...

List all Deckbase template block types (keys, numeric ids, labels, category). Use this so the user can choose multiple block types in order; then pass that list as block_types to create_template. **Quiz blocks:** category `quiz` — keys `quizMultiSelect` (8), `quizSingleSelect`...

No parameter schema in public metadata yet.

list_block_schemasReturn JSON structure for each block type: typical blocksSnapshot entry, matching value entry, and **configJson** fields. **Quiz types (`quizSingleSelect`, `quizMultiSelect`, `quizTextAnswer`) require a correct `configJson` on the block** (options, correct answer(s), etc.) — r...

Return JSON structure for each block type: typical blocksSnapshot entry, matching value entry, and **configJson** fields. **Quiz types (`quizSingleSelect`, `quizMultiSelect`, `quizTextAnswer`) require a correct `configJson` on the block** (options, correct answer(s), etc.) — r...

No parameter schema in public metadata yet.

list_elevenlabs_voicesList ElevenLabs TTS voice ids (group, label, id, gender, language) from the Deckbase curated catalog for generate_audio_for_card voice_id and template audio block defaultVoiceId. Optional filters: language (ISO 639 code), gender (female|male), search (substring on label/group/...3 params

List ElevenLabs TTS voice ids (group, label, id, gender, language) from the Deckbase curated catalog for generate_audio_for_card voice_id and template audio block defaultVoiceId. Optional filters: language (ISO 639 code), gender (female|male), search (substring on label/group/...

Parameters* required
genderstring
Optional: only female or male voices.one of female · male
languagestring
Optional ISO 639 language code to restrict results (e.g. en, uk, fil, zh, ja). See languageOptions in the response for valid codes.
searchstring
Optional case-insensitive substring; matches voice label, language group name, voice id, or language code.
list_ai_image_modelsList allowed AI text-to-image models for generate_image_for_card model_id (id, label, credits) plus defaults. Use this to ask the user to choose a model before generating images.

List allowed AI text-to-image models for generate_image_for_card model_id (id, label, credits) plus defaults. Use this to ask the user to choose a model before generating images.

No parameter schema in public metadata yet.

list_decksList the user's flashcard decks (deckId, title, description, defaultTemplateId, iconEmoji). iconEmoji is optional Unicode emoji for deck list/header; omit/null when unset. Requires hosted MCP with API key. Use with list_templates before create_card.

List the user's flashcard decks (deckId, title, description, defaultTemplateId, iconEmoji). iconEmoji is optional Unicode emoji for deck list/header; omit/null when unset. Requires hosted MCP with API key. Use with list_templates before create_card.

No parameter schema in public metadata yet.

list_templatesList the user's card templates (templateId, name, description). Requires hosted MCP with API key. Use when create_card needs an explicit templateId (deck has no defaultTemplateId). If the list is empty, use create_template first. After the user picks a template, call get_templ...

List the user's card templates (templateId, name, description). Requires hosted MCP with API key. Use when create_card needs an explicit templateId (deck has no defaultTemplateId). If the list is empty, use create_template first. After the user picks a template, call get_templ...

No parameter schema in public metadata yet.

get_template_schemaAfter the user selects a template, returns exact JSON for that template: each blockId, type, label, configJson, category, plus `side` per block (**"front"** = shown first in study; **"back"** = after the learner flips the card), valuesExample, and create_card hints. **Back-sid...2 params

After the user selects a template, returns exact JSON for that template: each blockId, type, label, configJson, category, plus `side` per block (**"front"** = shown first in study; **"back"** = after the learner flips the card), valuesExample, and create_card hints. **Back-sid...

Parameters* required
deckIdstring
Optional alternative: use with omitted templateId to resolve defaultTemplateId
templateIdstring
From list_templates (preferred when user picked a template)
create_deckCreate a new flashcard deck for the user. Requires hosted MCP with API key. Returns deckId and icon fields for create_card. **Deck icon:** There is no Deckbase emoji list to fetch—use any standard Unicode emoji (one grapheme). Unless the user asked for no icon or a specific em...4 params

Create a new flashcard deck for the user. Requires hosted MCP with API key. Returns deckId and icon fields for create_card. **Deck icon:** There is no Deckbase emoji list to fetch—use any standard Unicode emoji (one grapheme). Unless the user asked for no icon or a specific em...

Parameters* required
descriptionstring
Optional deck description
iconEmojistring
Alias for icon_emoji (camelCase).
icon_emojistring
One emoji for deck list/header (Firestore `icon_emoji`). Prefer inferring from title/description when the user did not specify. Same as iconEmoji.
titlestring
Deck title
update_deckUpdate an existing deck’s title, description, default template id, and/or deck icon emoji. Requires hosted MCP with API key. Pass only fields to change. To clear the deck icon, pass icon_emoji or iconEmoji as empty string.6 params

Update an existing deck’s title, description, default template id, and/or deck icon emoji. Requires hosted MCP with API key. Pass only fields to change. To clear the deck icon, pass icon_emoji or iconEmoji as empty string.

Parameters* required
deckIdstring
Deck ID from list_decks
default_template_idstring
Optional. Template ID for new cards when templateId is omitted in create_card. Empty string clears the default.
descriptionstring
New description (optional)
iconEmojistring
Optional alias for icon_emoji (camelCase).
icon_emojistring
Optional. Set or change deck list/header emoji (Firestore icon_emoji). Empty string after trim removes the icon. Same as iconEmoji.
titlestring
New title (optional)
update_cardUpdate an existing card’s content. Requires hosted MCP with API key. **Merge:** `front` / `block_text` (only listed blockIds change). **Preview lines:** optional **`main_block_id`** / **`sub_block_id`** (which blocks drive deck list + study preview; ids must exist on this card...34 params

Update an existing card’s content. Requires hosted MCP with API key. **Merge:** `front` / `block_text` (only listed blockIds change). **Preview lines:** optional **`main_block_id`** / **`sub_block_id`** (which blocks drive deck list + study preview; ids must exist on this card...

Parameters* required
appendBlockSidestring
one of front · back
appendBlockTypesarray
Alias for append_block_types
appendBlocksarray
Alias for append_blocks
append_block_sidestring
When appending: set side on all new blocksone of front · back
append_block_typesarray
Optional: ordered block type keys or numeric ids (see list_template_block_types). Appends new blocks with new blockIds. Mutually exclusive with append_blocks.
append_blocksarray
Optional: full block definitions to append (blockId optional). Mutually exclusive with append_block_types.
audioGenderstring
Alias for audio_genderone of female · male
audioLanguagestring
Alias for audio_language
audio_genderstring
With audio_language when append has audioone of female · male
audio_languagestring
ISO 639 with audio_gender when voice_id omitted and append has audio
blockSidestring
Alias for block_sideone of front · back
block_sidestring
Study face: set on the moved block after placement (optional). With keep_position, flips face without reordering.one of front · back
block_textobject
Optional map blockId → string merged into values for **only** those keys; other blocks are not modified
blocks_snapshotarray
Optional full replacement for layout (block defs). If set with values, each blockId must have a value entry. Mutually exclusive with append_*.
cardIdstring
Card ID
deckIdstring
Deck containing the card
frontstring
Optional text for the main block only (same role as create_card.front)
insertAfterBlockIdstring
Alias for insert_after_block_id
insertBeforeBlockIdstring
Alias for insert_before_block_id
insertIndexinteger
Alias for insert_index

+14 more parameters. See the server's own documentation for the full schema.

bulk_update_cards**Merge-only** bulk updates (max 50 cards). **Does not add new blocks** — use **bulk_append_blocks** first. **Does not clear fields** — **bulk_remove_card_fields**. **Modes:** (1) **Same patch for every card:** `card_ids` + `front` and/or `block_text` and/or **`main_block_id`...18 params

**Merge-only** bulk updates (max 50 cards). **Does not add new blocks** — use **bulk_append_blocks** first. **Does not clear fields** — **bulk_remove_card_fields**. **Modes:** (1) **Same patch for every card:** `card_ids` + `front` and/or `block_text` and/or **`main_block_id`...

Parameters* required
blockIdstring
Alias for block_id
blockIdsarray
Alias for block_ids
block_idstring
With texts[]: apply this single blockId on every card (pair each card with texts[i]). Mutually exclusive with block_ids
block_idsarray
With texts[]: one block id per card (same length as card_ids and texts). Mutually exclusive with block_id
block_labelstring
With texts[]: resolve block per card by label (trimmed, case-insensitive). Mutually exclusive with block_id/block_ids. Optional semantic_key to disambiguate
block_textobject
Optional: blockId → non-empty string; same patch for every card (same_patch mode only; not with texts[])
block_textsarray
Alias for texts
card_idsarray
Card IDs to update. For same_patch mode: deduped list (max 50). For parallel texts mode: ordered list, same length as texts (no duplicates)
deckIdstring
Deck containing all cards
frontstring
Optional: non-empty main-block text applied to every card in card_ids (same_patch mode only; not with texts[])
mainBlockIdstring
Alias for main_block_id
main_block_idstring
Same_patch only: set card main_block_id (preview main text) on every card; must be a blockId on each card’s layout (null clears). Alias: mainBlockId
new_textsarray
Alias for texts
per_cardarray
Legacy: [{ cardId, front?, block_text?, main_block_id?, sub_block_id? }, ...]; max 50
semantic_keystring
With block_label: match configJson.semanticKey / semantic_key on the block (optional)
subBlockIdstring
Alias for sub_block_id
sub_block_idstring
Same_patch only: set card sub_block_id on every card; must exist on layout (null clears). Alias: subBlockId
textsarray
Parallel to card_ids: new non-empty text for block_id (or block_ids[i]). Same length as card_ids. Alias: block_texts, new_texts
bulk_append_blocksInsert **new empty blocks** on many cards (max 50). **Layout-only** — no `front` / `block_text` (use **bulk_update_cards** after). Same block definitions and **insert position** on every card: `append_block_types` or `append_blocks`; **insert_before_block_id**, **insert_after_...22 params

Insert **new empty blocks** on many cards (max 50). **Layout-only** — no `front` / `block_text` (use **bulk_update_cards** after). Same block definitions and **insert position** on every card: `append_block_types` or `append_blocks`; **insert_before_block_id**, **insert_after_...

Parameters* required
appendBlockSidestring
one of front · back
appendBlockTypesarray
Alias for append_block_types
appendBlocksarray
Alias for append_blocks
append_block_sidestring
Set side on all newly appended blocks (avoids a second move/side call)one of front · back
append_block_typesarray
Ordered type keys or ids (see list_template_block_types); mutually exclusive with append_blocks
append_blocksarray
Full block defs; mutually exclusive with append_block_types
audioGenderstring
one of female · male
audioLanguagestring
audio_genderstring
one of female · male
audio_languagestring
card_idsarray
Non-empty list of card IDs (max 50, deduped)
deckIdstring
Deck containing all cards
dryRunboolean
dry_runboolean
If true: no writes; returns appendedBlockIds and card count only
insertAfterBlockIdstring
insertBeforeBlockIdstring
insertIndexinteger
insert_after_block_idstring
insert_before_block_idstring
insert_indexinteger

+2 more parameters. See the server's own documentation for the full schema.

bulk_move_blockMove **one existing block** on **many** cards (max 50) or flip its **front/back** face. **Layout-only** — no `front` / `block_text`. Optional **`block_side`** `front`|`back` (applied after move). **`keep_position`:** `true` with **`block_side`** flips face only (no `insert_*`)...16 params

Move **one existing block** on **many** cards (max 50) or flip its **front/back** face. **Layout-only** — no `front` / `block_text`. Optional **`block_side`** `front`|`back` (applied after move). **`keep_position`:** `true` with **`block_side`** flips face only (no `insert_*`)...

Parameters* required
blockSidestring
one of front · back
block_sidestring
one of front · back
card_idsarray
Non-empty list of card IDs (max 50, deduped)
deckIdstring
Deck containing all cards
dryRunboolean
dry_runboolean
insertAfterBlockIdstring
insertBeforeBlockIdstring
insertIndexinteger
insert_after_block_idstring
insert_before_block_idstring
insert_indexinteger
keepPositionboolean
keep_positionboolean
moveBlockIdstring
Alias for move_block_id
move_block_idstring
Block to move (must exist on each card)
normalize_cards_to_templateRewrite each card’s layout + values to match the **current template** (block ids, order, side). Migrates content by label+type. Use when template and cards drifted. Optional **card_ids** to subset; **dry_run** to preview without writes. Hosted MCP.6 params

Rewrite each card’s layout + values to match the **current template** (block ids, order, side). Migrates content by label+type. Use when template and cards drifted. Optional **card_ids** to subset; **dry_run** to preview without writes. Hosted MCP.

Parameters* required
card_idsarray
deckIdstring
dryRunboolean
dry_runboolean
templateIdstring
template_idstring
validate_deck_layoutNon-destructive report: missing/extra blocks vs template, side/order issues, duplicate label groups across cards. Hosted MCP.3 params

Non-destructive report: missing/extra blocks vs template, side/order issues, duplicate label groups across cards. Hosted MCP.

Parameters* required
deckIdstring
templateIdstring
template_idstring
bulk_set_block_sideSet **front**/**back** for one **move_block_id** on many **card_ids** (explicit; same as bulk_move_block + keep_position). Optional **dry_run**. Hosted MCP.8 params

Set **front**/**back** for one **move_block_id** on many **card_ids** (explicit; same as bulk_move_block + keep_position). Optional **dry_run**. Hosted MCP.

Parameters* required
blockSidestring
one of front · back
block_sidestring
one of front · back
card_idsarray
deckIdstring
dryRunboolean
dry_runboolean
moveBlockIdstring
move_block_idstring
bulk_set_main_sub_blocksSet **main_block_id** and/or **sub_block_id** (deck preview / study sub line) on many cards. **Ids:** pass **main_block_id** / **sub_block_id** (same for every card; null clears). **Labels:** pass **main_block_label** / **sub_block_label** with optional **main_semantic_key** /...16 params

Set **main_block_id** and/or **sub_block_id** (deck preview / study sub line) on many cards. **Ids:** pass **main_block_id** / **sub_block_id** (same for every card; null clears). **Labels:** pass **main_block_label** / **sub_block_label** with optional **main_semantic_key** /...

Parameters* required
card_idsarray
deckIdstring
dryRunboolean
dry_runboolean
mainBlockIdstring
mainBlockLabelstring
mainSemanticKeystring
main_block_idstring
Same main block for every card (must exist on each layout). Mutually exclusive with main_block_label. Alias: mainBlockId
main_block_labelstring
Resolve main block per card by label (case-insensitive). Optional main_semantic_key
main_semantic_keystring
subBlockIdstring
subBlockLabelstring
subSemanticKeystring
sub_block_idstring
Same sub block for every card. Mutually exclusive with sub_block_label. Alias: subBlockId
sub_block_labelstring
Resolve sub block per card by label. Optional sub_semantic_key
sub_semantic_keystring
copy_template_blocks_to_cardsAppend **copies** of template blocks (new UUIDs per card) via **template_block_ids** or **block_labels**. Supports **insert_***, **append_block_side**, **dry_run**. Hosted MCP.15 params

Append **copies** of template blocks (new UUIDs per card) via **template_block_ids** or **block_labels**. Supports **insert_***, **append_block_side**, **dry_run**. Hosted MCP.

Parameters* required
appendBlockSidestring
one of front · back
append_block_sidestring
one of front · back
blockLabelsarray
block_labelsarray
card_idsarray
deckIdstring
dryRunboolean
dry_runboolean
insert_after_block_idstring
insert_before_block_idstring
insert_indexinteger
templateBlockIdsarray
templateIdstring
template_block_idsarray
template_idstring
remove_card_fieldsClear content for specific blocks on **one** card (text empty; quiz selections cleared; image/audio media cleared). **Separate from update_card** — use this only when the user wants to remove field content, not merge new text. **DESTRUCTIVE** to those fields. Requires hosted M...5 params

Clear content for specific blocks on **one** card (text empty; quiz selections cleared; image/audio media cleared). **Separate from update_card** — use this only when the user wants to remove field content, not merge new text. **DESTRUCTIVE** to those fields. Requires hosted M...

Parameters* required
cardIdstring
Card ID
deckIdstring
Deck containing the card
removeBlockIdsarray
Alias for remove_block_ids
remove_block_idsarray
Non-empty list of blockIds to clear (alias: removeBlockIds)
user_confirmedboolean
Must be true after explicit user consent to clear these fields
bulk_remove_card_fieldsClear the **same** blockIds on **many** cards in one deck. **Separate from bulk_update_cards** — merge and field removal are not mixed. **DESTRUCTIVE** to content in those blocks. Max 50 cards per request. **user_confirmed** must be true after the user explicitly agrees.5 params

Clear the **same** blockIds on **many** cards in one deck. **Separate from bulk_update_cards** — merge and field removal are not mixed. **DESTRUCTIVE** to content in those blocks. Max 50 cards per request. **user_confirmed** must be true after the user explicitly agrees.

Parameters* required
card_idsarray
Non-empty list of card IDs (max 50, deduped)
deckIdstring
Deck containing all cards
removeBlockIdsarray
Alias for remove_block_ids
remove_block_idsarray
BlockIds to clear on every listed card (alias: removeBlockIds)
user_confirmedboolean
Must be true after explicit user consent
delete_cardSoft-delete one flashcard (sets is_deleted; same as app trash). **DESTRUCTIVE.** Requires hosted MCP. **You MUST ask the human for explicit confirmation before calling.** The server refuses unless `user_confirmed` is exactly true — only set it after the user clearly agreed to...3 params

Soft-delete one flashcard (sets is_deleted; same as app trash). **DESTRUCTIVE.** Requires hosted MCP. **You MUST ask the human for explicit confirmation before calling.** The server refuses unless `user_confirmed` is exactly true — only set it after the user clearly agreed to...

Parameters* required
cardIdstring
Card ID (from export_deck or list flows)
deckIdstring
Deck containing the card
user_confirmedboolean
Must be true. Only after the user explicitly confirmed deletion of this card.
delete_cardsSoft-delete multiple cards in one deck (same rules as delete_card). **Ask the user to confirm the exact card IDs before calling.** Refuses unless user_confirmed is true. Max 50 cards per request. Response lists deleted ids and per-id errors if any fail.3 params

Soft-delete multiple cards in one deck (same rules as delete_card). **Ask the user to confirm the exact card IDs before calling.** Refuses unless user_confirmed is true. Max 50 cards per request. Response lists deleted ids and per-id errors if any fail.

Parameters* required
card_idsarray
Non-empty list of card IDs to delete
deckIdstring
Deck containing all listed cards
user_confirmedboolean
Must be true. Only after the user explicitly confirmed bulk deletion.
create_cardCreate a new card from a template’s block layout. Requires hosted MCP with API key. Required: deckId. If templateId is omitted, uses the deck’s default template (defaultTemplateId from list_decks); if the deck has none, pass templateId from list_templates. If no templates exis...8 params

Create a new card from a template’s block layout. Requires hosted MCP with API key. Required: deckId. If templateId is omitted, uses the deck’s default template (defaultTemplateId from list_decks); if the deck has none, pass templateId from list_templates. If no templates exis...

Parameters* required
audio_genderstring
Required with audio_language when voice_id is omitted (same conditions as audio_language).one of female · male
audio_languagestring
ISO 639 language code (e.g. en, uk, fil). Required with audio_gender when voice_id is omitted and generate_audio is true and the template has an audio block.
block_textobject
Optional map blockId → string for text (and similar) blocks. **Include back-face blocks:** use blockIds where the template has side "back" so the card has content after flip.
deckIdstring
Deck ID (from list_decks or create_deck)
frontstring
Optional text for the template main block only (mainBlockId from get_template_schema). Does not fill other front blocks or back blocks.
generate_audioboolean
Optional. Default true. If true and template includes an audio block, generate ElevenLabs TTS when source text exists. Set false to skip TTS.
templateIdstring
Optional. Template ID from list_templates. Omit to use the deck’s default template (set in the dashboard).
voice_idstring
ElevenLabs voice id from list_elevenlabs_voices. Alternative to audio_language + audio_gender.
create_cardsBulk create cards in one deck using the same template resolution and validation as create_card (deck default or explicit templateId). Requires hosted MCP. Same front/back rules as create_card: use block_text per card for back-side blockIds from get_template_schema. For templat...7 params

Bulk create cards in one deck using the same template resolution and validation as create_card (deck default or explicit templateId). Requires hosted MCP. Same front/back rules as create_card: use block_text per card for back-side blockIds from get_template_schema. For templat...

Parameters* required
audio_genderstring
Optional default gender when using audio_language.one of female · male
audio_languagestring
Optional default ISO 639 code when using language+gender instead of voice_id.
cardsarray
Non-empty array of per-card payloads (front?, block_text?, generate_audio?, voice_id?, audio_language?, audio_gender?). Max 50 items.
deckIdstring
generate_audioboolean
Optional. Default true. If false, skip ElevenLabs TTS for all cards (each card can still set generate_audio: false when this is true).
templateIdstring
Optional; omit to use deck default template
voice_idstring
Optional default voice id for all cards (see create_card). Per-card voice_id overrides.
generate_audio_for_cardGenerate ElevenLabs TTS audio and attach it to an existing card’s audio block (updates values.mediaIds). Requires hosted MCP with API key. Required: deckId, cardId. Ask the user for voice settings, then pass voice_id from list_elevenlabs_voices OR pass audio_language (ISO 639)...9 params

Generate ElevenLabs TTS audio and attach it to an existing card’s audio block (updates values.mediaIds). Requires hosted MCP with API key. Required: deckId, cardId. Ask the user for voice settings, then pass voice_id from list_elevenlabs_voices OR pass audio_language (ISO 639)...

Parameters* required
audio_genderstring
Use with audio_language when voice_id is omitted.one of female · male
audio_languagestring
ISO 639 code; use with audio_gender when voice_id is omitted.
block_idstring
Required when the card has multiple audio blocks: target audio block blockId
cardIdstring
Card ID
deckIdstring
Deck containing the card
generate_audioboolean
Default true. Set false to no-op (for symmetry with create_card)
replace_existingboolean
Default false. Set true to replace audio when mediaIds already exist
textstring
Optional. Spoken text; if omitted, resolved from card content
voice_idstring
ElevenLabs voice id from list_elevenlabs_voices. Alternative to audio_language + audio_gender.
list_image_subject_promptsList subject starter presets for AI image generation (unified_id, label, prompt, tags) plus the user’s saved subjects from Firestore. Same sources as the web wizard. Subscribers only in production. Pass unified_id values as library_entry_ids on generate_image_for_card (with li...

List subject starter presets for AI image generation (unified_id, label, prompt, tags) plus the user’s saved subjects from Firestore. Same sources as the web wizard. Subscribers only in production. Pass unified_id values as library_entry_ids on generate_image_for_card (with li...

No parameter schema in public metadata yet.

list_image_style_promptsList curated style presets for AI image generation (id, label, description, snippet, tags). Same catalog as the web app. Subscribers only. Optional tag (kebab-case, e.g. vocabulary, anime, physics) filters presets. Use unified_id style:… with generate_image_for_card library_en...1 params

List curated style presets for AI image generation (id, label, description, snippet, tags). Same catalog as the web app. Subscribers only. Optional tag (kebab-case, e.g. vocabulary, anime, physics) filters presets. Use unified_id style:… with generate_image_for_card library_en...

Parameters* required
tagstring
Optional. Filter by tag (e.g. stem, watercolor, realistic).
generate_image_for_cardGenerate an AI image (fal.ai) and attach it to an existing card’s image block — **web wizard parity**: optional source_block_ids (default = image block defaultSourceBlockId + card mainBlockId like the dashboard), library_entry_ids (unified subject:… / style:… from list_image_s...15 params

Generate an AI image (fal.ai) and attach it to an existing card’s image block — **web wizard parity**: optional source_block_ids (default = image block defaultSourceBlockId + card mainBlockId like the dashboard), library_entry_ids (unified subject:… / style:… from list_image_s...

Parameters* required
block_idstring
Required when the card has multiple image blocks
cardIdstring
Card ID
deckIdstring
Deck containing the card
final_promptstring
Optional. Exact merged prompt (Review step). When set, overrides block/library merge; style_prompt_id ignored.
library_entry_idsarray
Optional. Unified ids from list_image_subject_prompts (subject:…) and list_image_style_prompts entries as style:{id} (same as web unified catalog).
media_tagsarray
Optional normalized tags stored on the media doc (merged with library preset tags when merge_library_tag_defaults is true).
merge_library_tag_defaultsboolean
Default true. When false, only media_tags are stored (no tag merge from library_entry_ids).
model_idstring
Optional fal text-to-image model id when not using reference (default fal-ai/flux/schnell). Ignored for fal routing when a reference image is set (edit model).
promptstring
Legacy: full T2I prompt, or fallback main text when using wizard fields with empty selected text blocks
reference_image_data_urlstring
Optional data URL for reference edit (size-limited).
reference_image_urlstring
Optional HTTPS URL for reference edit (same constraints as web API).
reference_media_idstring
Optional. A mediaId already on this image block (mediaIds or originalMediaIds). Server uses a fresh signed URL for fal edit.
replace_existingboolean
Default false: append generated image to the block. true: replace existing images with this one
source_block_idsarray
Optional. Text blockIds whose values join with \n\n for the main anchor (wizard step 1). Omit to use template image defaultSourceBlockId + card mainBlockId defaults.
style_prompt_idstring
Optional single style preset id (legacy). Merged server-side for simple prompt-only calls; with library_entry_ids, snippet is appended after wizard merge. Not allowed with reference images.
export_deckExport a deck (metadata + cards). Requires hosted MCP with API key. **file_format** (default json): json = full payload in the tool response; csv | xlsx | apkg = small marker JSON for the Deckbase assistant UI to download that file type (ask the user which format they want if...6 params

Export a deck (metadata + cards). Requires hosted MCP with API key. **file_format** (default json): json = full payload in the tool response; csv | xlsx | apkg = small marker JSON for the Deckbase assistant UI to download that file type (ask the user which format they want if...

Parameters* required
deckIdstring
Deck ID (from list_decks)
export_typestring
Optional when file_format is json. "full" (default): each card includes blocksSnapshot and values. "values_only": values only (smaller). Ignored when file_format is csv, xlsx, or apkg (always full).
fileFormatstring
Alias of file_format.
file_formatstring
Optional. "json" (default) = return full JSON in the tool result. "csv" | "xlsx" | "apkg" = return a short marker for assistant chat file download (no card payload in the tool text). Aliases: fileF...
formatstring
Alias of file_format.
max_cardsnumber
Optional max cards to return (default 2000, hard cap 5000). Oldest-first ordering is not guaranteed.
export_cardsExport **only** the given cards in a deck (same per-card JSON shape as **export_deck**, plus `notFound` / `skippedWrongDeck` for bad ids). Use when the user wants a subset file or backup. **file_format** works like **export_deck** (json default; csv/xlsx/apkg only in the web A...7 params

Export **only** the given cards in a deck (same per-card JSON shape as **export_deck**, plus `notFound` / `skippedWrongDeck` for bad ids). Use when the user wants a subset file or backup. **file_format** works like **export_deck** (json default; csv/xlsx/apkg only in the web A...

Parameters* required
cardIdsarray
Alias of card_ids.
card_idsarray
Non-empty list of cardId strings (max 200). Aliases: cardIds.
deckIdstring
Deck ID (from list_decks)
export_typestring
Optional when file_format is json. "full" (default) or "values_only". Ignored for csv/xlsx/apkg (always full).
fileFormatstring
Alias of file_format.
file_formatstring
Same as export_deck: json (default), csv, xlsx, apkg; aliases fileFormat, format; excel → xlsx, anki → apkg.
formatstring
Alias of file_format.
list_cardsList cards in a deck with **values** and (when export_type is full) **blocksSnapshot** per card — same per-card shape as **export_deck**, without repeating full deck metadata. Use for read/edit flows when you only need card payloads. Requires hosted MCP with API key. Default e...3 params

List cards in a deck with **values** and (when export_type is full) **blocksSnapshot** per card — same per-card shape as **export_deck**, without repeating full deck metadata. Use for read/edit flows when you only need card payloads. Requires hosted MCP with API key. Default e...

Parameters* required
deckIdstring
Deck ID (from list_decks)
export_typestring
Optional. "full" (default): each card includes blocksSnapshot and values. "values_only": values only (smaller).
max_cardsnumber
Optional max cards to return (default 2000, hard cap 5000). Oldest-first ordering is not guaranteed.
create_templateCreate a flashcard template (block layout for new cards). Requires hosted MCP with API key. Call **list_template_block_types** first so the user can pick block types; pass the ordered selection as block_types. **When the user wants quizzes (multiple choice, single choice, or t...9 params

Create a flashcard template (block layout for new cards). Requires hosted MCP with API key. Call **list_template_block_types** first so the user can pick block types; pass the ordered selection as block_types. **When the user wants quizzes (multiple choice, single choice, or t...

Parameters* required
audio_genderstring
female | male. Use with audio_language when voice_id is omitted (same conditions as create_card).
audio_languagestring
ISO 639 language code (e.g. en, ja, uk). Use with audio_gender when voice_id is omitted and the layout includes audio without per-block defaultVoiceId. Same as create_card.
block_typesarray
Ordered list of block type keys or numeric ids 0–16. Examples: ["header1", "hiddenText"] for Q&A; ["header1", "quizSingleSelect"] or [0, 9] for stem + single-choice quiz. Quiz keys: quizMultiSelect...
blocksarray
Optional full block definitions. Mutually exclusive with block_types. Each: blockId (optional), type, label, side ("front" | "back"; default front), required (optional), configJson (required for qu...
descriptionstring
Optional description
mainBlockIdstring
Optional; defaults from first block
namestring
Template display name
subBlockIdstring
Optional; defaults from second block
voice_idstring
When template includes an audio block without defaultVoiceId on every audio block: ElevenLabs id from list_elevenlabs_voices after the user chooses. Applied to all audio blocks. Alternatively pass...
update_templateUpdate an existing template’s name, description, block layout (blocks or block_types), main/sub block ids, and/or default voice for audio blocks. Set each block’s `side` to "front" or "back". Requires hosted MCP. When adding or changing **quiz** blocks, use **list_block_schema...10 params

Update an existing template’s name, description, block layout (blocks or block_types), main/sub block ids, and/or default voice for audio blocks. Set each block’s `side` to "front" or "back". Requires hosted MCP. When adding or changing **quiz** blocks, use **list_block_schema...

Parameters* required
audio_genderstring
female | male with audio_language when voice_id is omitted.
audio_languagestring
ISO 639 code with audio_gender when voice_id is omitted (same as create_template).
block_typesarray
Ordered block types to replace layout; mutually exclusive with non-empty blocks. Include quiz* keys or ids 8–10 when the user wants MCQ/quiz layout; use list_block_schemas for configJson when build...
blocksarray
Full block definitions to replace layout; mutually exclusive with block_types
descriptionstring
New description (optional)
mainBlockIdstring
namestring
New name (optional)
subBlockIdstring
templateIdstring
Template ID from list_templates
voice_idstring
Sets defaultVoiceId on all audio blocks (see create_template). Required if layout has audio without defaultVoiceId unless audio_language + audio_gender are passed instead.
Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
ego lite browserego lite browser
ego lite browser
Fastest browser for AI agents to run web automation tasks, always free.
Download Free life-time →
CodeHealth MCP ServerCodeHealth MCP Server
CodeHealth MCP Server
Protect your code quality, stop the AI slop.
Try For Free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
Registryactive
Packagedeckbase-mcp-server
TransportSTDIO
UpdatedApr 26, 2026
View on GitHub