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 PostLake/postlake-mcp --skill postlake-inboxgit clone --depth 1 https://github.com/PostLake/postlake-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/postlake/postlake-mcp/postlake-inbox)<a href="https://agentmods.dev/skills/postlake/postlake-mcp/postlake-inbox"><img src="https://agentmods.dev/badge/skills/postlake/postlake-mcp/postlake-inbox/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/postlake/postlake-mcp/postlake-inbox"><img src="https://agentmods.dev/badge/skills/postlake/postlake-mcp/postlake-inbox.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.00048 | $0.00748 |
| Opus 5 | $0.00024 | $0.00374 |
| Sonnet 5 | $0.00010 | $0.00150 |
| Haiku 4.5 | $0.00005 | $0.00075 |
Grade A, and why
postlake-inbox 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 2d 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 — 70 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PostLake: unified inbox
Use PostLake's normalized inbox instead of calling four network APIs.
Start safely
- Call
list_social_accountsto identify the connection. - Call
get_platform_capabilitiesif you do not know whether that connection supports messaging. - Call
list_conversations, optionally filtered byaccount. - Check
problemsbefore claiming there are no messages. - Call
read_conversationwith both the conversation id and account id. - Draft a concise reply. Do not send until the user has asked you to send it.
- Call
send_message, thenmark_conversation_readafter the thread is handled.
Conversation ids are scoped to one connected account. Never guess the account or reuse a conversation id with another connection.
REST equivalents
| Action | REST endpoint |
|---|---|
| List conversations | GET /v1/conversations |
| Find or open a thread | POST /v1/conversations with account and handle |
| Read messages | GET /v1/conversations/{id}/messages?account=acc_... |
| Mark read | POST /v1/conversations/{id}/read |
| Send a message | POST /v1/conversations/{id}/messages |
All REST requests use Authorization: Bearer $POSTLAKE_API_KEY. Reading,
marking, and sending require the connected account id because a conversation
id has meaning only within that connection.
What the response means
fromMeidentifies which side sent a message. Do not infer this from handles.contentcan describe an attachment, shared media, or an unsupported provider payload. Do not claim that an emptytextmeans the message itself was empty.- The optional shape is
{ "kind": "attachment" | "shared_media" | "unsupported", "label": "...", "url": "..." | null }. - A
problemsentry means PostLake could not read a network. Report it. An emptyitemsarray without a problem means the network answered with no threads. - Cursors are opaque. Pass them back exactly as returned.
Network rules
- Facebook and Instagram can produce
message.receivedwebhooks. - X and Bluesky require polling with
list_conversations. - Sending a direct message on X costs 6 credits. Messaging on the other currently supported inbox networks does not spend credits.
- Meta normal replies must be within 24 hours of the person's last message.
- Never send
humanAgent: truefrom an autonomous workflow. It asserts that a person wrote the reply, and Meta can penalize the connected account when that assertion is false. MCP deliberately does not expose this override. - Bluesky app passwords need direct-message access enabled when created.
- Facebook and Instagram messaging may be unavailable until Meta grants the required permission to the connected business.
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.
- 2d ago First seen · 70 lines · 48 tokens per session scan A c24ad9affc36
postlake-inbox is a skill published in the GitHub repository PostLake/postlake-mcp (0 stars, last pushed yesterday), licensed MIT. It adds 48 tokens to every session and 748 once invoked, about $0.0002 per session on Opus 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-07.
Other skills, from other repositories
session-status
Generate breadcrumb headers/footers with takt time tracking and muda metrics.
flowise-builder
Use when flowise visual LLM workflow builder — drag-drop chatflows, API endpoints, document loaders, tools. Use when working with flowise builder.
zapier-patterns
Use when zapier automation patterns — triggers, actions, filters, formatters, paths, code steps. Use when working with zapier patterns.
postbridge-social-manager
Use when multi-platform social media posting, scheduling, analytics, and media management via PostBridge API for TikTok, Instagram, X, LinkedIn, and Facebook. Use when working with postbridge social manager.
telegram-userbot
Use when full MTProto control of Telegram account via Telethon. DM, Voice Note, Call, Video Call, Group/Channel management, member scraping, bot cloning, outreach automation, broadcast, CRM tracking, content reposting, scheduled messaging, webhook triggers. Use for all Telegram automation as a real user (not bot API).
agent-creator
Create custom AI subagents with proper plugin structure, persona generation, and companion routing skills.