Ghost MCP Server

by MFYDev
Verified

create_offer

Create a new offer in Ghost.

Args: name: Internal name for the offer (required) code: Shortcode for the offer (required) type: Either 'percent' or 'fixed' (required) cadence: Either 'month' or 'year' (required) amount: Discount amount - percentage or fixed value (required) tier_id: ID of the tier to apply offer to (required) duration: Either 'once', 'forever' or 'repeating' (required) display_title: Name displayed in the offer window (optional) display_description: Text displayed in the offer window (optional) currency: Required when type is 'fixed', must match tier's currency (optional) duration_in_months: Required when duration is 'repeating' (optional) ctx: Optional context for logging Returns: String representation of the created offer Raises: GhostError: If the Ghost API request fails ValueError: If required parameters are missing or invalid

Input Schema

NameRequiredDescriptionDefault
amountYes
cadenceYes
codeYes
currencyNo
display_descriptionNo
display_titleNo
durationYes
duration_in_monthsNo
nameYes
tier_idYes
typeYes

Input Schema (JSON Schema)

{ "properties": { "amount": { "title": "Amount", "type": "integer" }, "cadence": { "title": "Cadence", "type": "string" }, "code": { "title": "Code", "type": "string" }, "currency": { "default": null, "title": "Currency", "type": "string" }, "display_description": { "default": null, "title": "Display Description", "type": "string" }, "display_title": { "default": null, "title": "Display Title", "type": "string" }, "duration": { "title": "Duration", "type": "string" }, "duration_in_months": { "default": null, "title": "Duration In Months", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "tier_id": { "title": "Tier Id", "type": "string" }, "type": { "title": "Type", "type": "string" } }, "required": [ "name", "code", "type", "cadence", "amount", "tier_id", "duration" ], "title": "create_offerArguments", "type": "object" }