Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add target1m/ravenpost-mcp --skill publish-a-social-postgit clone --depth 1 https://github.com/target1m/ravenpost-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/target1m/ravenpost-mcp/publish-a-social-post)<a href="https://agentmods.dev/skills/target1m/ravenpost-mcp/publish-a-social-post"><img src="https://agentmods.dev/badge/skills/target1m/ravenpost-mcp/publish-a-social-post/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/target1m/ravenpost-mcp/publish-a-social-post"><img src="https://agentmods.dev/badge/skills/target1m/ravenpost-mcp/publish-a-social-post.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00133 | $0.02028 |
| Opus 5.5 | $0.00053 | $0.00811 |
| Sonnet 5.5 | $0.00027 | $0.00406 |
| Haiku 4.5 | $0.00013 | $0.00203 |
Grade A, and why
publish-a-social-post scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 143 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Publish a social post
Ravenpost is compose-once, fan-out: one post carries one caption and one set of media, and goes to any number of connected accounts across nine networks. Each account is a separate destination with its own publish status, permalink and error.
Full argument list for every tool: references/tools.md.
Caption budgets and per-platform rules: references/platforms.md.
Before writing anything
1. Settle the workspace. Call list_workspaces. With exactly one, pass
nothing and forget about it. With more than one, ask the user which and pass
workspaceId on every later call. Do not guess and do not pick the first: a
workspace is a client, and the accounts differ per workspace. The server enforces
this — a workspace-scoped call with several available fails with an error naming
them, which is your cue to ask, not to retry.
2. Find the destinations. list_accounts returns each account's id,
platform, username and status. Targets are account ids, never platform
names. If the user said "Instagram" and two Instagram accounts are connected,
ask which; if they said "everywhere", list what you are about to select and let
them confirm.
The workflow
3. Collect what the destinations require. Only some of this applies:
- Pinterest — call
list_boardsfor that account and setboard. A pin belongs to a board, Pinterest has no default, and without one the post is created and then fails at publish time. - Instagram reel audio —
list_audio(omit the query for what is trending), then pass the track asaudio. Only reels, and only Instagram accounts connected through Facebook; the tool says so if the account cannot. - Instagram collaborators —
collaborators(up to three usernames) reach only an Instagram account whoseconnectioninlist_accountsisFACEBOOK_LOGIN, and never a story. On any other account they are dropped, the post publishes without them, and nothing reports it afterwards — so check before promising co-authors, and pass them topreview_post, which warns. - Instagram reel cover and trial —
reelCover(a library JPEG, or a frame of the video) andtrialReel(MANUALorSS_PERFORMANCE) apply to aREELonly. Set a trial only when the user asks for one: Instagram decides which accounts may post it, and a refused trial fails the post rather than going out as a normal reel. - X — one X account per post: every X account publishes the same text, and
X forbids the same post on several accounts. X refuses more than one
$cashtagin a post (each thread reply counts on its own), a thread reply that @mentions somebody the first post did not, and a reply or quote of a post that is neither the account's own nor names it. The caption budget is 280 as X counts it — every link is 23, an emoji or a symbol such as→is 2 — or 25,000 for an account on X Premium (captionMaxinlist_accounts).preview_postwarns about all of it. - TikTok — the
tiktokargument carries the creator's posting options. Omit it and the post publishes privately (SELF_ONLY), which is the safe default, not a bug. Say so rather than letting the user assume it went public. - Media — Instagram, TikTok, YouTube and Pinterest refuse a post with none.
Use the
prepare-post-mediaskill; pass the returned ids asmediaIds.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago Changed · +13 lines 4ee2ad867bd3
- 14d ago Changed · +1 lines 6e4f1985e10f
- 26d ago Changed · +5 lines 4da885e0104f
- 1mo ago First seen · 124 lines · 133 tokens per session scan A 60fa52d91d85
publish-a-social-post is a skill published in the GitHub repository target1m/ravenpost-mcp (1 stars, last pushed 2d ago), licensed MIT. It adds 133 tokens to every session and 2,028 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-13.
Other skills, from other repositories
posts-sociais
Cria posts otimizados para Instagram, LinkedIn, Twitter/X e TikTok com contexto do mercado brasileiro. Adapta tom, formato, comprimento e hashtags para cada plataforma, maximizando engajamento e alcance orgânico no Brasil.
zernio
Schedule posts, manage inbox, broadcasts, sequences, and automations across 14 platforms from the CLI.
restaurant-social
30-day social media content calendar — daily content ideas across Instagram, TikTok, and Facebook with platform-specific formatting.
xpoz-best-practices
Reference guide for using Xpoz effectively via MCP. Covers query syntax (boolean operators, date filtering), response modes (fast/paging/CSV), field selection, tracking setup, and all platform tool references (Twitter, Instagram, Reddit, TikTok). Load for ANY Xpoz interaction, not just explicit best-practices…
xpoz-social-tracking
Set up and manage continuous social media tracking across Twitter, Instagram, Reddit, and TikTok. Add, remove, and view tracked keywords, users, subreddits, and hashtags. Use when asked to track mentions, monitor brands, set up tracking, view tracked items, or stop tracking.
lead-gen-scan
One-shot buying-intent lead scan across Reddit, Twitter, Instagram, and TikTok. Finds fresh posts from people actively asking for what your product does or frustrated with competitors, qualifies them, and reports prioritized leads for human engagement. Powered by billions of indexed posts via Xpoz MCP.