Skip to content
Agentmart
Submit a tool

ViralNote

Schedule, publish, and analyze social posts on TikTok, Instagram, YouTube, X, Threads, LinkedIn.

Connector by viralnote · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)Remote (HTTP)
Write a review

Install

Works with Claude Code, VS Code, Codex, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/viralnote-mcp-server

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Remote endpoint

  • https://dashboard.viralnote.app/api/mcp/mcp Remote (HTTP)

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Schedule, publish, and analyze social posts on TikTok, Instagram, YouTube, X, Threads, LinkedIn.

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
7 read · 5 write · 3 delete
Secrets
2 (API keys, tokens or passwords)
Install scripts
Not scanned yet
Runs as
Node.js package

Tools by what they do 15

Read from the source code; the running server may list different tools.

Read 7 · Look things up without changing anything.

  • get_post
  • list_analytics
  • list_media
  • list_post_results
  • list_posts
  • list_social_accounts
  • list_webhooks

Write 5 · Create, change, send or run things.

  • create_post
  • create_webhook
  • import_media
  • publish_post
  • update_post

Delete 3 · Delete, drop, revoke or wipe things.

  • delete_media
  • delete_post
  • delete_webhook

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • Authorization
  • VIRALNOTE_API_KEY

Network hosts it talks to 1

  • dashboard.viralnote.app · found in remote endpoint, install command

Files it touches

  • Any path the agent passes to its tools

Tools (15)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • create_post

    Create a new post as a draft or schedule it for automatic publishing. With status='draft' (or is_draft=true) the post is saved with no publish time; with scheduledFor set it is queued and publishes automatically at that time. Returns the created post object including its id. Media must already exist in the library — call import_media or list_media first to get a media id. The user must have connected each target platform (verify with list_social_accounts if unsure). To publish an existing draft immediately, use publish_post rather than creating a new post.

  • create_webhook

    Subscribe a URL to ViralNote event notifications. ViralNote sends an HTTP POST with a JSON payload to the URL each time a subscribed event fires — for example post.published when a post goes live, or post.failed when delivery errors. Returns the created subscription including its id. The URL must be an HTTPS endpoint you control and that is publicly reachable. Check list_webhooks first to avoid duplicating an existing subscription.

  • delete_media

    Permanently delete a media library item by id. The file cannot be recovered — confirm with the user before deleting. Use list_media to find the item's id and verify it is the right file (check name and type) first.

  • delete_post

    Permanently delete a post by id. If the post is scheduled, this cancels the pending publish. This does not retract content already delivered to social platforms — it only removes the ViralNote record. Irreversible: confirm with the user before deleting. Use update_post instead if the goal is to fix or reschedule a post.

  • delete_webhook

    Delete a webhook subscription by id. The target URL immediately stops receiving event notifications. Irreversible, but a subscription can be recreated with create_webhook. Use list_webhooks to find the id and confirm which URL/events it covers before deleting.

  • get_post

    Fetch a single post by id, including its full per-platform publish results (success or error per platform). Use after list_posts to inspect one post in detail, or after publish_post to check how delivery went. Returns an error if the id does not exist or belongs to another account.

  • import_media

    Import a file into the media library so it can be attached to posts. Two modes: (1) URL mode — pass `url` with an HTTPS direct-download link (up to 200MB; Dropbox and Canva share links supported via the matching `source`); (2) inline mode — pass `data` with base64-encoded bytes (3MB max before encoding) plus `mimeType`, with source='direct'. Exactly one of `url` or `data` must be provided. Returns the created library item including the id to use in create_post. For files over 3MB, always use URL mode.

  • list_analytics

    List published posts with their latest per-platform metrics: views, likes, comments, shares, and engagement. Metrics are collected periodically by ViralNote, so values are the most recent snapshot rather than real-time. Use to report on content performance or find top-performing posts; use list_post_results instead when the question is whether delivery succeeded. Paginated via cursor.

  • list_media

    List items in the user's media library. Returns each item's id, name, type, and folder, plus a `cursor` field when more pages exist. Use this to find a media id to attach to a post via create_post or update_post, or to check whether a file was already imported before calling import_media.

  • list_post_results

    Check delivery outcomes: returns recent published or failed posts with each platform's individual result (success, or the error that occurred). Pass postId to inspect one post's delivery; omit it to scan recent posts filtered by status. Use after publish_post to verify delivery, or when the user asks why a post didn't appear on a platform. For engagement metrics rather than delivery status, use list_analytics.

  • list_posts

    List the user's posts. Returns post objects with id, caption, status, target platforms, scheduled time, and attached media ids, plus a `cursor` field when more pages exist. Use this to find a post's id before calling get_post, update_post, delete_post, or publish_post, or to review upcoming scheduled content. For per-platform delivery outcomes or metrics, prefer list_post_results or list_analytics instead.

  • list_social_accounts

    List the social accounts connected to the user's ViralNote account: platform and account identity for each. Takes no parameters. Use before create_post to confirm the intended target platforms are actually connected — posting to an unconnected platform fails. Note that connecting or disconnecting accounts happens in the ViralNote dashboard UI (OAuth); it cannot be done through this API.

  • list_webhooks

    List all webhook subscriptions on the account: each subscription's id, target URL, and subscribed events. Takes no parameters. Use to find a webhookId before delete_webhook, or to check whether an event is already covered before calling create_webhook (avoids duplicate subscriptions).

  • publish_post

    Publish an existing draft post to all of its target platforms immediately, skipping the schedule queue. Only valid on posts with status='draft' — returns an error for scheduled or already-published posts. Returns the post with delivery kicked off; individual platforms can still succeed or fail independently, so follow up with get_post or list_post_results to confirm the outcome.

  • update_post

    Edit a draft or scheduled post before it publishes. Send only the fields to change — omitted fields keep their current values. Returns the updated post object. Posts that are already publishing, published, or failed cannot be edited. Common uses: reschedule by passing a new scheduledFor, fix a caption, swap attached media, or convert a draft to scheduled by passing status='scheduled' together with scheduledFor.

Signals

Stars
0
Forks
0
Open issues
0
Last commit
Oct 21, 2026 (7 days ago)
Last release
Oct 21, 2026 (7 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.viralnote/mcp-server
Version
0.2.4
Auth
Bearer token, API key
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026
Cite this page

ViralNote MCP server. Agent Mart. https://agentmart.dev/connectors/viralnote-mcp-server (last updated 2026-10-24)