{"$schema":"https://schema.org/SoftwareApplication","name":"ViralNote","version":"1.0.0","operator":{"legalName":"Loona Brands LLC","country":"US","contact":"info@viralnote.app","url":"https://www.viralnote.app"},"summary":"Social media scheduling and AI video clipping for creators. One recording becomes a week of posts across 10 networks; every workflow is available to AI agents over MCP and a REST API.","capabilities":["schedule-social-posts","publish-social-posts","cross-post-multi-platform","media-library-import","post-analytics","webhooks","ai-video-clipping","ai-captions","creator-mini-page"],"platforms":["tiktok","instagram","youtube","twitter","threads","linkedin","facebook","pinterest","bluesky","reddit"],"api":{"type":"rest","baseUrl":"https://dashboard.viralnote.app/api/v1","aliases":["https://www.viralnote.app/api/v1"],"openapi":"https://www.viralnote.app/openapi.json","docs":"https://www.viralnote.app/developers/docs","health":"https://dashboard.viralnote.app/api/v1/health","errorFormat":{"shape":{"error":{"code":"string","message":"string"},"requestId":"string"},"contentType":"application/json"},"entryPoints":[{"method":"GET","path":"/social-accounts","scope":"posts:read","purpose":"Connected accounts"},{"method":"GET","path":"/posts","scope":"posts:read","purpose":"List posts"},{"method":"POST","path":"/posts","scope":"posts:write","purpose":"Create draft or scheduled post"},{"method":"POST","path":"/posts/{postId}/publish","scope":"posts:publish","purpose":"Publish now"},{"method":"POST","path":"/media/import","scope":"posts:write","purpose":"Import media by URL or base64"},{"method":"GET","path":"/analytics","scope":"posts:read","purpose":"Engagement metrics"},{"method":"POST","path":"/webhooks","scope":"webhooks:manage","purpose":"Subscribe to publish events"}]},"mcp":{"product":{"url":"https://dashboard.viralnote.app/api/mcp/mcp","transport":"streamable-http","auth":["oauth2","apiKey"],"tools":[{"name":"list_brands","description":"List the brands (workspaces) the account can post as.","scope":"posts:read"},{"name":"list_posts","description":"List posts filtered by status, platform, brand, or date range.","scope":"posts:read"},{"name":"get_post","description":"Fetch one post with its per-platform captions, media, and status.","scope":"posts:read"},{"name":"create_post","description":"Create a draft or scheduled post for one or more platforms.","scope":"posts:write"},{"name":"update_post","description":"Edit captions, media, platforms, or schedule time of an existing post.","scope":"posts:write"},{"name":"delete_post","description":"Delete a draft or scheduled post.","scope":"posts:write"},{"name":"publish_post","description":"Publish a post to its connected accounts right now.","scope":"posts:publish"},{"name":"list_media","description":"Browse the media library (images, videos, GIFs).","scope":"posts:read"},{"name":"import_media","description":"Import an image or video into the library from a URL or base64.","scope":"posts:write"},{"name":"delete_media","description":"Remove a media item from the library.","scope":"posts:write"},{"name":"create_carousel","description":"Generate a 3–10 slide image carousel as a draft post from a topic or presentation.","scope":"credits:write"},{"name":"list_social_accounts","description":"List connected social accounts and which platforms are ready to publish.","scope":"posts:read"},{"name":"list_pinterest_boards","description":"List Pinterest boards available to a connected Pinterest account.","scope":"posts:read"},{"name":"list_usage","description":"Read shared credit and storage allowances, plus per-brand usage.","scope":"credits:read"},{"name":"get_billing","description":"Read the plan, trial state, and whether the account can publish or process video.","scope":null},{"name":"start_checkout","description":"Create a Stripe Checkout link for the account owner to subscribe. Charges nothing by itself.","scope":null},{"name":"top_up_credits","description":"Create a Stripe Checkout link for a one-time credit pack.","scope":"credits:write"},{"name":"list_analytics","description":"Read engagement analytics (views, likes, comments, shares) over a date range.","scope":"analytics:read"},{"name":"list_post_results","description":"Read per-platform publish results and permalinks for posts.","scope":"posts:read"},{"name":"list_webhooks","description":"List registered webhook endpoints and the events they receive.","scope":"webhooks:manage"},{"name":"create_webhook","description":"Register a webhook endpoint for post.published, post.failed, and related events.","scope":"webhooks:manage"},{"name":"delete_webhook","description":"Delete a webhook endpoint.","scope":"webhooks:manage"},{"name":"list_comments","description":"List comments on published posts, filtered by brand, platform, post, or status.","scope":"comments:read"},{"name":"sync_comments","description":"Pull the latest comments from connected networks into the inbox. Sends nothing.","scope":"comments:read"},{"name":"reply_to_comment","description":"Send a public reply to a comment as the connected brand account.","scope":"comments:reply"},{"name":"draft_comment_reply","description":"Suggest a brand-aware reply for a comment without posting it.","scope":"posts:write or comments:reply"},{"name":"update_comment","description":"Mark a comment handled or reopen it. Local inbox state only.","scope":"posts:write, comments:reply, or comments:moderate"},{"name":"moderate_comment","description":"Hide, unhide, delete, or report a comment on the connected network.","scope":"comments:moderate"},{"name":"list_saved_replies","description":"List a brand's saved replies.","scope":"comments:read"},{"name":"create_saved_reply","description":"Save a reusable answer for one brand.","scope":"posts:write or comments:reply"},{"name":"update_saved_reply","description":"Edit a saved reply's title or text.","scope":"posts:write or comments:reply"},{"name":"delete_saved_reply","description":"Delete a saved reply.","scope":"posts:write or comments:reply"}],"stdio":"npx -y @viralnote/mcp-server","npm":"https://www.npmjs.com/package/@viralnote/mcp-server","registry":"io.github.viralnote/mcp-server"},"docs":{"url":"https://www.viralnote.app/mcp/docs","transport":"streamable-http","auth":[],"tools":["search_docs","get_page","list_pages"]},"wellKnown":"https://www.viralnote.app/.well-known/mcp"},"authentication":{"guide":"https://www.viralnote.app/auth.md","methods":[{"type":"apiKey","header":["x-api-key","Authorization: Bearer"],"prefix":"vnd_","obtain":"https://dashboard.viralnote.app/developers/auth","selfServe":true},{"type":"oauth2","flow":"authorization_code+pkce","authorizationUrl":"https://dashboard.viralnote.app/oauth/authorize","tokenUrl":"https://dashboard.viralnote.app/api/mcp/oauth/token","registrationUrl":"https://dashboard.viralnote.app/api/mcp/oauth/register","dynamicClientRegistration":true}],"scopes":[{"name":"posts:read","description":"List and read posts, drafts, schedules, publish results, media, accounts, and brands. Also covers analytics:read and comments:read."},{"name":"posts:write","description":"Create and edit drafts, cancel scheduled posts, and manage media, brand profile, and saved replies."},{"name":"posts:publish","description":"Publish immediately, schedule, and edit queued posts (paid plan or trial)."},{"name":"comments:read","description":"List synced comments, refresh the inbox from connected networks, and read saved replies."},{"name":"comments:reply","description":"Send public replies as the connected brand account, and manage saved replies and handled state."},{"name":"comments:moderate","description":"Hide, unhide, delete, or report comments on the connected network. Does not allow sending replies."},{"name":"analytics:read","description":"Read published-post metrics, per-post metric history, and audience history. No access to drafts or comments."},{"name":"webhooks:manage","description":"Register, update, and delete webhook subscriptions."},{"name":"credits:read","description":"Read the video-processing credit balance, estimates, history, and per-brand usage."},{"name":"credits:write","description":"Spend credits on AI generation, and buy credit packs."}],"protectedResourceMetadata":["https://dashboard.viralnote.app/.well-known/oauth-protected-resource","https://dashboard.viralnote.app/.well-known/oauth-protected-resource/api/v1","https://www.viralnote.app/.well-known/oauth-protected-resource"],"authorizationServerMetadata":"https://dashboard.viralnote.app/.well-known/oauth-authorization-server","unauthenticatedResponse":{"status":401,"header":"WWW-Authenticate: Bearer resource_metadata=\"...\"","body":{"error":{"code":"unauthorized"}}}},"pricing":{"currency":"USD","plans":[{"id":"publish","name":"Publish","monthlyUsd":18,"annualMonthlyUsd":14.4,"highlights":["Unlimited posts and scheduling","Publish across all 10 networks","5 connected accounts per platform","Post analytics and an unbranded mini page","Work in the dashboard or with your AI assistant"]},{"id":"pro","name":"Pro","monthlyUsd":38,"annualMonthlyUsd":30.4,"highlights":["Everything in Publish","500 video processing minutes per month","AI clip suggestions and batch generation","Captions and portrait reframing","10 connected accounts per platform"]},{"id":"agency","name":"Agency","monthlyUsd":129,"annualMonthlyUsd":103.2,"highlights":["Everything in Pro","5 brand workspaces, then $19/mo per extra workspace on monthly billing","Up to 5 team seats with admin, manager, and client roles","1,000 video processing minutes per month, shared","10 connected accounts per platform per workspace"]}],"trial":{"days":7,"plan":"Publish","cardRequired":true,"freeSignupCardRequired":false,"autoRenews":true,"renewalMonthlyUsd":18,"renewalAnnualUsd":172.8,"offerSummary":"Free signup is for drafts and account setup, with no card. The 7-day Publish trial requires a card and renews as a paid subscription unless canceled before it ends.","renewalSummary":"After the trial, Publish renews at $18 per month or $172.80 per year, according to the billing option selected at checkout. Cancel before the trial ends to avoid the charge.","summary":"Free signup is for drafts and account setup, with no card. The 7-day Publish trial requires a card and renews as a paid subscription unless canceled before it ends. After the trial, Publish renews at $18 per month or $172.80 per year, according to the billing option selected at checkout. Cancel before the trial ends to avoid the charge. The user is emailed before the trial ends. If canceled before it ends, the account returns to draft-only: reads and drafts keep working; publish and schedule calls return HTTP 403 with error code payment_required and an upgrade link. AI video processing requires Pro or Agency and is not included in the Publish trial."},"markdown":"https://www.viralnote.app/pricing.md","signup":"https://dashboard.viralnote.app/?plan=publish","upgrade":"https://dashboard.viralnote.app/billing","checkout":{"mcpTool":"start_checkout","endpoint":"https://dashboard.viralnote.app/api/v1/billing/checkout","statusTool":"get_billing","statusEndpoint":"https://dashboard.viralnote.app/api/v1/billing","topUpTool":"top_up_credits","billingUrl":"https://dashboard.viralnote.app/billing","summary":"When publish or schedule returns payment_required, call start_checkout (POST /api/v1/billing/checkout, body {\"plan\": \"publish\"}) and hand the returned checkoutUrl to the account owner. They add a card on Stripe; nothing is charged by the call itself. Then call get_billing until canPublish is true and retry. Accounts that already subscribe change plans on the billing page."}},"testing":{"sandbox":false,"safeMode":"Create posts with status=draft; nothing reaches a network until publish or a schedule fires. GET endpoints are side-effect free. Trial accounts are real accounts."},"skills":{"index":"https://www.viralnote.app/.well-known/agent-skills/index.json","github":"https://github.com/viralnote/viralnote-skill","install":"npx skills add viralnote/viralnote-skill","claudePlugin":"https://github.com/viralnote/claude-plugin"},"agentConfigs":{"agentsMd":"https://github.com/viralnote/mcp-server/blob/main/AGENTS.md","pluginManifest":"https://www.viralnote.app/.well-known/agent-plugins/plugin.json"},"discovery":[{"url":"https://www.viralnote.app/llms.txt","type":"text/plain","description":"Curated index of the site for LLMs."},{"url":"https://www.viralnote.app/index.md","type":"text/markdown","description":"Markdown twin of the homepage."},{"url":"https://www.viralnote.app/agent.json","type":"application/json","description":"Structured agent view: endpoints, auth, capabilities."},{"url":"https://www.viralnote.app/auth.md","type":"text/markdown","description":"How agents obtain credentials."},{"url":"https://www.viralnote.app/pricing.md","type":"text/markdown","description":"Machine-readable pricing."},{"url":"https://www.viralnote.app/openapi.json","type":"application/json","description":"OpenAPI 3.1 spec for the REST API."},{"url":"https://www.viralnote.app/.well-known/api-catalog","type":"application/linkset+json;profile=\"https://www.rfc-editor.org/info/rfc9727\"","description":"RFC 9727 API catalog."},{"url":"https://www.viralnote.app/.well-known/ard.json","type":"application/json","description":"Agentic Resource Discovery catalog."},{"url":"https://www.viralnote.app/.well-known/agent-card.json","type":"application/a2a-agent-card+json","description":"A2A agent card."},{"url":"https://www.viralnote.app/.well-known/agent-skills/index.json","type":"application/json","description":"Agent Skills discovery index."},{"url":"https://www.viralnote.app/.well-known/mcp","type":"application/json","description":"MCP servers offered by this domain."},{"url":"https://www.viralnote.app/.well-known/oauth-protected-resource","type":"application/json","description":"RFC 9728 protected-resource metadata for the API."},{"url":"https://www.viralnote.app/sitemap.xml","type":"application/xml","description":"Full URL list."},{"url":"https://www.viralnote.app/schemamap.xml","type":"application/xml","description":"NLWeb schema feed map."},{"url":"https://www.viralnote.app/ask","type":"application/json","description":"NLWeb natural-language search endpoint."}],"markdown":{"homepage":"https://www.viralnote.app/index.md","pattern":"Append .md to any page URL, or send Accept: text/markdown","llmsTxt":"https://www.viralnote.app/llms.txt"},"search":{"nlweb":"https://www.viralnote.app/ask","method":["GET","POST"],"streaming":true}}