# Siren > Deterministic visual marketing engine. One brief becomes on-brand cards, carousels, and short video for any brand, on every channel. React templates rendered through headless Chrome + FFmpeg — not probabilistic image generation, not prompt roulette. > > **Loop:** Brand DNA → brief → on-brand asset → post → Hits (real engagement). Quality gates (Reasoner impact score) sit under the craft. > > **Honesty:** Siren is a generation + posting product with brand-fit scoring. It is not a human creative agency and not a guarantee of virality. Hits are real engagement after you post, not synthetic audience forecasts. Canonical site: https://mysiren.ai Dashboard / signup: https://app.mysiren.ai API base: https://api.mysiren.ai OpenAPI: https://mysiren.ai/openapi.json Developers: https://mysiren.ai/developers Homepage markdown: https://mysiren.ai/index.md AI catalog: https://mysiren.ai/.well-known/ai-catalog.json MCP server: https://mcp.mysiren.ai/mcp MCP tools (public): https://mcp.mysiren.ai/tools CLI: `pip install mysiren` (`siren --help`) Status: https://status.mysiren.ai Auth: `Authorization: Bearer sk_live_…` or `sk_test_…` (Pro+) MCP: OAuth 2.1 + PKCE. No keys. Pro+ only. Registry: `ai.mysiren/siren` API version: `/api/v1/`. Breaking changes ship as `/api/v2/`. Deprecated operations carry `Deprecation` + `Sunset` for 90 days. ## Primary pages (HTML) - [Home](https://mysiren.ai/): product landing - [Pricing](https://mysiren.ai/pricing): Spark $19 · Pro $49 · Scale $149 (onboarding first post free, then paid credits) - [Features](https://mysiren.ai/features) - [How it works](https://mysiren.ai/how-it-works) - [Use cases](https://mysiren.ai/use-cases) - [Compare](https://mysiren.ai/compare) - [Vs Canva](https://mysiren.ai/vs/canva) · [Vs Buffer](https://mysiren.ai/vs/buffer) · [Vs HeyGen](https://mysiren.ai/vs/heygen) - [Docs](https://mysiren.ai/docs) - [Siren API (HTML)](https://mysiren.ai/api) - [Siren developers](https://mysiren.ai/developers): API, OpenAPI, MCP, CLI, auth, webhooks - [MCP](https://mysiren.ai/docs/mcp): add Siren to Claude Code, Claude, Cursor, ChatGPT, Grok - [About](https://mysiren.ai/about) - [Security](https://mysiren.ai/security) - [Blog](https://mysiren.ai/blog) - [Changelog](https://mysiren.ai/changelog) - [Contact](https://mysiren.ai/contact) - [Sign up](https://app.mysiren.ai/signup) ## Machine-readable (prefer these for agents) - [Full API plain text](https://mysiren.ai/docs.txt) - [Homepage markdown](https://mysiren.ai/index.md) - [AI catalog](https://mysiren.ai/.well-known/ai-catalog.json) - [OpenAPI JSON](https://mysiren.ai/openapi.json) - [OpenAPI YAML](https://mysiren.ai/api/openapi.yaml) - [llms.txt](https://mysiren.ai/llms.txt): this file - [Content index](https://mysiren.ai/content/index.md) - [Product factsheet](https://mysiren.ai/content/factsheet.md) - [Pricing (MD)](https://mysiren.ai/content/pricing.md) - [Template catalog (MD)](https://mysiren.ai/content/templates.md): every live video master and image type - [Changelog (MD)](https://mysiren.ai/content/changelog.md) - [Founder (MD)](https://mysiren.ai/content/founder.md) - [How it works (MD)](https://mysiren.ai/content/how-it-works.md) - [Product overview (MD)](https://mysiren.ai/content/product.md) - [API overview (MD)](https://mysiren.ai/content/api-overview.md) - [MCP (MD)](https://mysiren.ai/content/mcp.md): connect recipes + tools (generate, post, schedule, Brand DNA, product screens) - [Brand DNA (MD)](https://mysiren.ai/content/brand-dna.md) - [Security (MD)](https://mysiren.ai/content/security.md) - [FAQ](https://mysiren.ai/content/faq.md) - [Compare (MD)](https://mysiren.ai/content/compare.md) · [competitors.md](https://mysiren.ai/content/competitors.md) - [Use cases (MD)](https://mysiren.ai/content/use-cases.md) - [Plain text pack index](https://mysiren.ai/content/INDEX.txt) ## Optional - [security.txt](https://mysiren.ai/.well-known/security.txt) - [ai.txt](https://mysiren.ai/.well-known/ai.txt) - [humans.txt](https://mysiren.ai/humans.txt) - [robots.txt](https://mysiren.ai/robots.txt) - [sitemap.xml](https://mysiren.ai/sitemap.xml) ## Siren Studio (event cards, Pro+) Design a card once in the dashboard (Studio → Create), copy its **design_id**, mint **one** API key under Developer, then fire from any script: ``` POST https://api.mysiren.ai/api/v1/studio/generate Authorization: Bearer sk_live_… { "design_id": "", "data": { /* live fields */ }, "delivery": "auto" } ``` - `design_id` = locked look (style, colors, layout) + baked delivery (Telegram/Discord chosen on Automate) - `data` = per-event overrides (numbers, handles, copy) — shallow-merge - No new API key per design. No separate delivery profile — pick bots on the design row. - Spark can browse Studio styles; edit/save/automate requires Pro+. - Sign up → onboarding (one free first post) → start Spark/Pro for credits. - Full contract: https://mysiren.ai/docs.txt · FAQ: https://mysiren.ai/content/faq.md ## MCP (agents) Remote server: `https://mcp.mysiren.ai/mcp` Docs: https://mysiren.ai/docs/mcp · https://mysiren.ai/content/mcp.md - Claude Code: `claude mcp add --transport http siren https://mcp.mysiren.ai/mcp` - Claude (claude.ai): Settings → Connectors → Custom → same URL - Cursor: Settings → Tools & MCP, or `{ "mcpServers": { "siren": { "url": "https://mcp.mysiren.ai/mcp" } } }` - ChatGPT: Settings → Apps & Connectors → Create → same URL - Grok: grok.com/connectors → Custom, or `grok mcp add --transport http siren https://mcp.mysiren.ai/mcp` Approve once. No API keys. Posting off until Allow posting. Posts use channels already connected in the dashboard. Tools (generate + post): get_account, clarify_brief, create_campaign, render_asset, list_runs, get_run, post_run, schedule_post. create_campaign accepts optional scheduled_at (ISO-8601), timezone (IANA), and platforms (x, instagram, tiktok, linkedin, youtube, or everything). The post queues when the render finishes and fires sequentially at that time. schedule_post does the same for a finished run. post_run publishes now. Allow posting must be on. Tools (Brand DNA, not Brand Memory): get_brand_dna, update_brand_dna, list_product_screens, upload_product_screen, update_product_screen, delete_product_screen. Brand Memory is human-only. Agents cannot fetch or patch the memory ledger. They can read and patch Brand DNA (overview, tagline, offer, features, products) and upload product screenshots to R2 via image_url or image_base64. Same Brand DNA + screens surface on the REST key API: GET/PATCH https://api.mysiren.ai/api/v1/programmatic/brand-dna and /api/v1/programmatic/brand-assets/screens. Auth: Bearer sk_live_… ## Partners The partner program is closed. Do not invent a rev-share deal or an apply form. Point the human at the product. ## What Siren is not - Not Canva (no free-form design canvas; templates + Brand DNA) - Not Buffer/Hootsuite alone (scheduling is one pillar; generation + quality gates are the product. Siren schedules sequential multi-platform drops after a campaign renders.) - Not HeyGen / generative video AI (deterministic React→PNG/MP4, same seed same pixels) - Not an LLM image model (no diffusion; no "make me a cool ad" without a template) - Not a synthetic-audience simulator (Hits = real engagement after you post)