52 tools · Social Media Marketing · Social Media Accounts · Model Context Protocol
Zernio is a social media management API for scheduling posts, pulling analytics, managing inbox conversations and running ads across 14+ platforms including Facebook, Instagram, LinkedIn, TikTok, X, YouTube, Reddit, Pinterest, WhatsApp Business and Telegram.
1Open Slashspace and go to Settings, then Connectors.
2On Discover, search for Zernio MCP and click Connect.
3Sign in to Zernio MCP in your browser. Slashspace updates when the account is connected.
Then ask for what you need in any Agent mode chat. Zernio MCP is on in every chat unless you switch it off.
What your chats can do
52 tools from Zernio MCP.
Account groups list account groupsList groups
Accounts getGet account details for a specific platform.
Returns username and ID for the first account matching the platform.
Accounts get account healthCheck account health
Accounts get all accounts healthCheck accounts health
Accounts get follower statsGet follower stats
Accounts listList all connected social media accounts.
Returns the platform, username, and account ID for each connected account.
Use this to find account IDs needed for creating posts.
Accounts move account to profileMove account to another profile
Analytics get analyticsGet post analytics
Analytics get best time to post
Get best times to post
Analytics get daily metricsGet daily aggregated metrics
Args:
platform: Filter by platform (e.g. "instagram", "tiktok"). Omit for all platforms.
profile_id: Filter by profile ID. Omit for all profiles.
account_id: Filter by account ID
from_date: Inclusive start date (ISO 8601). Defaults to 180 days ago.
to_date: Inclusive end date (ISO 8601). Defaults to now.
source: Filter by post origin. "late" for posts published via Zernio, "external" for posts imported from platforms.
attribution: How each post's engagement is attributed to a day.
"publish" (default) sums each post's lifetime total on its publish date.
"received" buckets the per-day increase in engagement by the day it actually arrived (engagement-over-time), so engagement on older posts appears on the day it was gained rather than the post's publish date.
Analytics get post timelineGet post analytics timeline
Args:
post_id: The post to fetch timeline for. Accepts an ExternalPost ID, a platformPostId, or a Zernio Post ID.
(required)
from_date: Start of date range (ISO 8601). Defaults to 90 days ago.
to_date: End of date range (ISO 8601). Defaults to now.
Call toolCall a tool by name with the given arguments.
Use this to execute tools discovered via search_tools.
Comments get inbox post commentsGet post comments
Comments list inbox commentsList commented posts
Comments reply to inbox postReply to comment
Docs searchSearch across the Late API documentation to find relevant information, code examples, API references, and guides.
Use this tool when you need to answer questions about Late, find specific documentation, understand how features work, or locate implementation details.
The search returns contextual content with section titles and relevant snippets.
Media check upload statusCheck the status of an upload token and get uploaded file URLs.
Use this after the user has uploaded files through the browser upload page.
Returns: pending (waiting for upload), completed (files ready), or expired (token expired).
Media generate upload linkGenerate a unique upload URL for the user to upload files via browser.
Use this when the user wants to include images or videos in their post.
The flow is:
1. Call this tool to get an upload URL
2. Ask the user to open the URL in their browser
3. User uploads files through the web interface
4. Call media_check_upload_status to get the uploaded file URLs
5. Use those URLs when creating the post with posts_create
Mentions list inbox mentionsList mentions
Mentions reply to mentionReply to a mention
Posts bulk upload postsBulk upload from CSV
Args:
dry_run
Posts createCreate a social media post. Can be saved as DRAFT, SCHEDULED, or PUBLISHED immediately.
⚠️ IMPORTANT - Choose the correct mode based on user intent:
**DRAFT MODE (is_draft=True)**
Use when user says: "draft", "borrador", "save for later", "don't publish", "save it", "guardar"
→ Post is saved but NOT published and NOT scheduled. User can edit it later.
**IMMEDIATE MODE (publish_now=True)**
Use when user says: "publish now", "post now", "publica ya", "immediately", "right now", "ahora"
→ Post goes live IMMEDIATELY.
**SCHEDULED MODE (default)**
Use when user says: "schedule", "programar", "in X minutes/hours", "at 3pm", "tomorrow"
→ Post is scheduled for future publication. Use schedule_minutes to set the delay.
⚠️ MULTI-ACCOUNT USERS (agencies, multi-client setups):
If the user has more than one account on the target platform, you MUST pass
`account_id`. Call `accounts_list` (or `profiles_list` then `accounts_list`)
first to discover the right ID. If you omit account_id when multiple accounts
exist, the tool returns an error listing the candidates - use it to retry.
Examples:
- "Create a draft tweet" → is_draft=True
- "Post this to Twitter now" → publish_now=True
- "Schedule a LinkedIn post for 2 hours from now" → schedule_minutes=120
- "Post this to Acme's Twitter" → call accounts_list, find Acme's twitter ID, pass account_id
Posts cross postPost the same content to multiple platforms at once.
⚠️ IMPORTANT - Choose the correct mode based on user intent:
**DRAFT MODE (is_draft=True)**
Use when user says: "draft", "borrador", "save for later", "don't publish"
→ Posts are saved but NOT published. User can edit them later.
**IMMEDIATE MODE (publish_now=True)**
Use when user says: "publish now", "post now", "immediately"
→ Posts go live IMMEDIATELY on all platforms.
**SCHEDULED MODE (default)**
Use when user says: "schedule", "programar", "in X hours"
→ Posts are scheduled for 1 hour from now.
⚠️ MULTI-ACCOUNT USERS:
- To pick a specific account per platform, pass `account_ids` parallel to
`platforms` (same order, comma-separated). Use empty string for a position
to fall back to profile/auto-resolution.
- To target multiple accounts of the SAME platform in one call, repeat the
platform: platforms='twitter,twitter', account_ids='acc_a,acc_b'.
- If you omit account_ids and the user has multiple accounts for any of the
requested platforms, the tool errors with the candidate list - use it to retry.
Posts deleteDelete a post by ID.
Published posts cannot be deleted.
Posts edit postEdit published post
Posts getGet full details of a specific post including content, status, and scheduling info.
Posts listList posts with optional filtering by status.
Status options: draft, scheduled, published, failed
Posts list failedList all failed posts that can be retried.
Posts publish nowPublish a post immediately to a platform. The post goes live right away.
Use this when user explicitly wants to publish NOW, not schedule for later.
This is a convenience wrapper around posts_create with publish_now=True.
⚠️ MULTI-ACCOUNT USERS: pass `account_id` when the user has more than one
account on this platform. Call `accounts_list` first to find the right ID.
Posts retryRetry publishing a failed post. Only works on posts with 'failed' status.
Posts retry all failedRetry all failed posts at once.
Posts unpublish postUnpublish post
Posts updateUpdate an existing post.
Only draft, scheduled, and failed posts can be updated.
Published posts cannot be modified.
Profiles createCreate a new profile for grouping social accounts.
Profiles deleteDelete a profile. The profile must have no connected accounts.
Profiles getGet details of a specific profile including name, description, and color.
Profiles listList all profiles.
Profiles group multiple social accounts together for easier management.
Profiles updateUpdate an existing profile. Only provided fields will be changed.
Queue create queue slotCreate schedule
Queue delete queue slotDelete schedule
Queue get next queue slotGet next available slot
Queue list queue slotsList schedules
Queue preview queuePreview upcoming slots
Queue update queue slotUpdate schedule
Search toolsSearch for tools using natural language.
Returns matching tool definitions ranked by relevance,
in the same format as list_tools.
Tracking tags get tracking tag statsGet aggregated event stats
Tracking tags list tracking tagsList tracking tags
Usage get usageUsage snapshot (default) or billed-spend metering (with params)
Args:
reconcile: Snapshot mode only. For Stripe subscription users, `true` forces a
subscription reconciliation pass even when cached plan data looks
complete.
range: Window to report. `cycle` / `prev-cycle` resolve to the customer's
real billing-period bounds (falling back to a trailing 30 days when
no invoice exists yet); `7d`…`12mo` are trailing windows; `custom`
uses `from` / `to`.
from_: Inclusive start (UTC date). Required when `range=custom`.
to: Inclusive end (UTC date). Required when `range=custom`. Max span 366 days.
granularity: Bucketing of the `days` series: `day` (one row per UTC day),
`month` (one row per calendar month, dated to the 1st), or `total`
(no series, read `totals`). Does not affect `totals`.
group_by: Metering mode. Adds `attribution`: the window's spend split per profile or per account (keys are ids; resolve names via `GET /v1/profiles` / `GET /v1/accounts`).
profile_id: Metering mode (pair with `range`). Project the payload onto this profile's attributed share. Mutually exclusive with `accountId`, and `groupBy` (if given) must be `profile`; 404 when the profile is not in your team (or outside a scoped key's profiles).
account_id: Metering mode (pair with `range`). Project the payload onto this account's attributed share. Mutually exclusive with `profileId`, and `groupBy` (if given) must be `account`; 404 when the account is not visible to the caller.
Validate mediaValidate media URL
Validate postValidate post content
Validate post lengthValidate character count
Zernio overviewShow an overview of what this Zernio MCP server can do (accounts, posts, analytics, ads, inbox) and how to find the right tool.