Write

add_card

Adds a new card to a stack at the end or after a specific card. Basic, about, service, and testimonial kinds are free; conversion kinds (contact, book-me, embed-booking, buy, email) require Pro.


Parameters

NameTypeRequiredDescription
outlineIdstringOutline ID. Omit to default to the authenticated creator's own outline.
stackIdstringYesID of the stack to add the card to. Get this from list_cards or get_profile.
afterCardIdstringInsert the new card after this card ID. If omitted, appends to the end of the stack.
kindstringCard template kind. Default: basic. Free: basic, about, service, testimonial. Pro required: contact, book-me, embed-booking, buy, email.

Response

FieldTypeWhat it means
outlineIdstringThe resolved outline ID — matches the authenticated creator if outlineId was omitted.
stackIdstringThe stack the card was added to.
cardobjectThe newly created card with its stable cardId, kind, and empty content fields ready to fill with update_card.
card.cardIdstringThe new card's stable ID — use this immediately with update_card to set content.
card.kindstringThe card template kind that was set.
card.headingstringEmpty string on creation — fill with update_card before publishing.
card.subheadingstringEmpty string on creation — fill with update_card before publishing.
card.descriptionstringEmpty string on creation — fill with update_card before publishing.

Example

Request

json
{ "stackId": "stack_abc", "kind": "service", "afterCardId": "card_001" }

Response

json
{ "outlineId": "42", "stackId": "stack_abc", "card": { "cardId": "card_xyz789", "kind": "service", "heading": "", "subheading": "", "description": "" } }

When to use

After getting the current profile structure with get_profile or list_cards, use add_card to insert new cards into an existing stack. Always follow with update_card to set the heading, subheading, and description — new cards start completely empty. Use afterCardId to control placement precisely within the stack; omit it to append to the end.

Check get_guidance first to confirm which card kinds are available for the creator's plan — conversion kinds return FORBIDDEN_FEATURE for free accounts.


Gotchas

Watch out

  • The new card starts completely empty — always follow add_card with update_card to fill content before publishing.
  • You need the stackId first — call list_cards or get_profile to get it.
  • Conversion kinds (contact, book-me, embed-booking, buy, email) return FORBIDDEN_FEATURE for free users. Check get_guidance for the free vs Pro card kind list.
  • afterCardId must exist in the specified stack or you get NOT_FOUND.
  • The response is wrapped in MCP content arrays (content[0].text is the JSON string) — parse text before accessing outlineId, stackId, or card.