Your AI assistant can work directly with your Bangers account. Give Claude or Codex your direction, review the content in the same conversation, and approve what goes out. Your strategy, ideas and calendar stay in sync with the web app. Telegram is optional.
Connect your assistant
In Bangers, open Settings → Integrations and find Run Bangers from Claude or Codex. The hosted server address is https://bangershq.com/mcp.
Claude Code: run this command, then open /mcp in Claude Code to sign in to Bangers.
claude mcp add --transport http bangers https://bangershq.com/mcp
Codex: add the server and sign in through your browser.
codex mcp add bangers --url https://bangershq.com/mcp
codex mcp login bangers
Other MCP clients: add a remote Streamable HTTP server with the address above. If your client supports OAuth, follow its browser sign-in flow and approve the connection. Connector availability depends on the client and its plan.
For clients that use a bearer token, create a named personal token in Settings → Integrations. Copy it when it appears; Bangers only shows it once. Configure your client to send Authorization: Bearer YOUR_TOKEN. Keep the token out of shared files, screenshots and server URLs. Tokens created in Settings expire after 90 days.
Try it
- “Show my brands, connected channels and this week's queue.”
- “Read my strategy. Turn my latest idea into a LinkedIn draft for me to review.”
- “Save this thought for later: customers want fewer decisions, not more dashboards.”
- “Show the results we actually have for my recent posts and suggest what to try next.”
The server also offers prompts for planning your week, reviewing drafts and learning from results, plus a workflow guide your client can read.
Review, then publish
Ask your assistant to show the full post, target channel and publishing settings. Approve that exact version before asking it to schedule. Approval and scheduling are separate actions. Editing the content or changing the relevant publishing settings requires fresh approval.
Be explicit about your timezone. A queued post has not been published yet. Your assistant can inspect the queue and publication history, move queued posts, and cancel queued work. Published posts and uncertain delivery attempts cannot be casually retried: that could create duplicates.
Connect social accounts in the Bangers web app. Your assistant returns a Channels link when setup is needed. You do not need to paste social network passwords into your AI conversation.
Allowances and media
Reading your account, capturing ideas and saving content written by your assistant do not call Bangers' drafting model. Asking Bangers to generate drafts or compile strategy uses your writing allowance. Image and video generation use media credits; your assistant can check costs and availability first.
Generation returns an asset URL. Attaching it changes the draft and requires review again. Check the channel's reported capabilities before creating media: formats depend on the connected channel. Video generation can take several minutes; clients may need a tool timeout of at least 300 seconds. Generating a video does not mean every network can publish it.
Give your agent an ongoing plan
Ask: “Prepare drafts from my saved ideas every Monday at 09:00 Europe/Madrid. Use LinkedIn, at most three writing units per rolling seven days, and stop when five drafts need review.”
Your assistant saves a paused plan and shows its goal, channels, cadence and budget. Confirm that exact plan to activate it. Bangers then drafts from unused saved ideas within the plan and account limits, even without Telegram. The cadence is drafting time; suggested publication times are proposals, not scheduled posts. Each selected channel reserves one plan writing unit. Actual account metering follows your plan allowance.
You can give a plan an editorial_brief with a campaign name, audience, content pillars and source keywords. Ask: “Plan the next three ideas for our launch. Balance customer examples and product lessons, and ask me for any missing evidence.” The assistant can prepare a calendar or curate a specific angle combining up to five saved ideas. Bangers ranks available ideas by relevance to your goal and pillar coverage, with freshness breaking ties. This is source selection, not a prediction of performance.
Open View editorial plan on a web plan card, or use list_editorial_calendar in your assistant. Each entry shows its angle, rationale, source IDs and any missing-input question. Answering a question saves your facts as a permanent idea. Preparing a calendar and answering questions do not spend writing units. The agent can set a “not before” time for drafting; that date never schedules publication.
Recurring runs consume ready editorial entries within the original budget. A run keeps a snapshot of every supporting idea, so later edits cannot rewrite the evidence used for a draft. Changing the plan makes unstarted entries outdated; preparing again replaces them. Pausing and resuming preserve the calendar. Uncertain generation holds its sources for review and is never automatically repeated.
Every post still needs separate review, approval and scheduling. You can pause future drafting at any time; a generation already started may finish. The agent can inspect run history, including missing source ideas, budget limits and uncertain outcomes. It must reuse the same request ID when retrying a manual run. Uncertain generation requires reviewing saved drafts and usage before acknowledging it, so retries do not silently spend more.
Keep media ready to reuse
Ask your assistant to create a media upload for a local file, or import an existing public HTTPS image/video URL. A local upload uses a short-lived, single-use PUT link. You can also upload through the Agent workspace in the web app.
The brand library accepts JPEG, PNG, WebP, GIF and MP4, up to 25 MiB per file and 250 MiB per account. Import generated media before depending on a temporary generation URL for future schedules. Find assets by name and attach them to the current draft revision. Any attachment change requires fresh approval.
Use list_channels to check each connection's media formats and limits. Ordered image groups and per-part thread media are supported where the network allows them. attach_draft_media, remove_draft_media and reorder_draft_media preserve the draft's exact media order; pass part_index for a thread item. Uploads are inspected before becoming ready. inspect_media_asset checks an older asset's dimensions and video duration.
For a carousel, save ordered slide copy, then use render_carousel to create the actual images. Review every rendered slide and the final caption before approval. In web Compose, Manage media opens the full editor and preview. A linked Telegram user can use the telegram_review_command returned by get_draft for complete media review with a specific publication time.
Archiving removes an asset from the active library; it preserves delivery for posts already using it and does not reclaim storage. Delivery URLs are private-by-possession links that social networks can fetch, so share them only with intended recipients.
TikTok and YouTube
For TikTok, first call get_tiktok_creator_info for the selected brand channel and video or photo. Show the creator's name and use the account's current privacy and interaction choices. Choose direct publication or TikTok Inbox delivery explicitly. Inbox delivery requires finishing publication in TikTok; it is never reported as a public post.
Choose synthetic-media and commercial disclosures. Commercial content can promote your own brand, another brand, or both; paid partnerships cannot be private. Video captions and photo titles are different: photo titles allow 90 characters without hashtags or links, while photo_description contains the full caption. Photos also need an explicit automatic-music choice. Videos must last at least three seconds and fit the account's limit, up to ten minutes. The library's 25 MiB file limit still applies.
Review every attachment, the full text, selected cover and settings. A custom video cover may be inserted as the first frame. TikTok approval requires separate tiktok_consent: { content_preview_confirmed: true, express_consent_given: true } alongside the current revision and confirmed: true. Give consent only after reviewing the exact action and agreeing to TikTok's Music Usage Confirmation and, for paid partnerships, Branded Content Policy. Web and Telegram review include these choices and consent. Editing the draft requires fresh approval; account permissions are checked again before delivery.
For YouTube, attach one inspected MP4 and explicitly choose its title, visibility, audience and synthetic-media disclosure. The post text is its description. Optional tags, category, playlist and first comment are preserved. Square or vertical videos up to three minutes are Shorts, determined from their media properties. Custom thumbnails are unavailable for Shorts; regular-video covers require an owned JPEG/PNG up to 2 MiB. Videos longer than 15 minutes need a verified YouTube account; Bangers does not check that entitlement in advance.
Video processing can continue after a network accepts the upload. The queue distinguishes processing, public publication and Inbox handoff. A TikTok public URL may arrive later. Inspect the existing publication instead of resubmitting while its outcome is pending or uncertain.
Teach it with evidence
Ask: “Look at my edits and measured post results. Propose one lesson for my next drafts and show me why.”
Your assistant reads human draft corrections and synced results, including same-platform sample sizes and missing data. It proposes a lesson with an explanation and an immutable snapshot of its evidence. Nightly learning also creates proposals from human corrections instead of silently rewriting your voice.
When you correct a draft in Claude, Codex or Telegram, ask the assistant to save the correction with your exact instruction. The update_draft tool accepts human_feedback: { instruction: "Make the opening shorter", confirmed: true } alongside the current draft revision and replacement content. It returns a feedback_revision_id that can be used as lesson evidence. Ordinary autonomous rewrites omit this field and are excluded from correction learning.
The evidence preserves your instruction and both versions. In Telegram, the quote must occur in your current message. For external clients, the evidence explicitly records that the connected client attested to the human correction; Bangers cannot independently verify the conversation. Recording feedback never approves publishing or adopts a writing rule.
Review the lesson before adopting it. Adopted lessons guide future Bangers drafts across interfaces, with your explicit strategy taking precedence. Reject a weak proposal or supersede a lesson that no longer fits. Historical style rules remain available for continuity. Small samples and correlations are clues to test, not proof that a writing choice caused better results.
Disconnect or troubleshoot
In Settings → Integrations, disconnect an app or revoke one personal token. Other connections keep working. Reconnect an expired client through its sign-in flow, or create a replacement personal token.
If your client reports no tools, verify the exact /mcp address and Streamable HTTP transport. If it cannot authenticate, check OAuth support or configure a bearer token. An unavailable drafting service does not stop idea capture: your assistant can save your thought and write a draft itself.
Your connected assistant can change your Bangers account. Connect clients you trust and review their tool permissions. Account limits and explicit publishing approval apply across interfaces.
Learning from results
Ask: “Review this brand's results and propose one small experiment. Show me the hypothesis, both variants and limits before starting.”
review_performance creates this week's immutable snapshot; repeated calls
return the same evidence. list_performance_reviews reads earlier reviews.
Each channel has separate current and previous 28-day publication windows,
sample counts, impression denominators, ranges and exclusions. Metrics must be
synced, at least 48 hours after publication and fetched within seven days.
Missing counts are unknown, never zero. Five eligible posts per group is a
minimum reporting threshold, not a claim of statistical significance.
Your assistant can use propose_experiment with an experiment containing
name, hypothesis, channel_id, variant_a, variant_b, duration_days
(14–90) and target_per_variant (5–20). Read it with get_experiment and
confirm the exact version before start_experiment. At most three experiments
can be active per brand. stop_experiment ends a proposed or active experiment.
For each variant, apply its instruction to a draft, then call
enroll_experiment_draft before approval or scheduling. Enrollment records exact
content and settings; it cannot verify that the client applied the instruction.
Balance variants instead of choosing a group by expected performance. Edits
invalidate the snapshot; re-enroll the same unscheduled variant after editing.
Posts still require their own exact-content approval and explicit schedule.
evaluate_experiment reports progress until both sample targets are reached or
the experiment window plus seven days for metrics closes. Too little evidence
closes inconclusively. Final results are immutable. The daily performance worker
also evaluates active experiments and saves one review per brand each week.
list_experiments and list_performance_reviews accept offset and return
next_offset when more results exist. Lists return compact summaries. For full
review snapshots, use include_evidence: true and a small limit (1–20).
get_experiment returns the complete experiment evidence.
Completed experiment IDs (kind: "experiment") and sufficiently evidenced
review IDs (kind: "performance_review") can support propose_lesson. This
never adopts the lesson. Observations are descriptive: audience, topics, timing,
paid reach and unequal post ages can explain differences. No causal winner is
claimed. Results and experiment review are also available in the agent workspace.
Attention and publishing recovery
Ask your assistant: “What needs my attention for each brand?” The shared
list_attention tool covers publishing failures, disconnected channels and
content-plan runs needing review. Use an explicit brand_id for each brand.
refresh_attention checks current sources; get_attention_item reads a notice.
Lists accept status and offset and return next_offset for further pages.
The same inbox is available in the web agent workspace.
Bangers attempts Telegram notifications first and queues a transactional email when Telegram is unavailable. Notification delivery status remains visible in the inbox. Historical publication failures appear without replaying old alerts.
Before recovery, read get_publication_recovery. If delivery is uncertain,
check the target network first. With your explicit confirmation,
reconcile_publication records either the published post's reference or a
reasoned confirmation that it was not published. This is an attributed human
check, not an independent provider verification, and never schedules a retry.
A known failed delivery can use retry_publication only after you review the
full current post, destination, publishing settings and future time. The tool
requires the current recovery version and draft revision; changed approval,
channel access or quota can prevent retry. Reconciliation and retry are separate
confirmations. Never create a replacement to bypass uncertain delivery.
dismiss_attention_item hides the current notice version; it does not reconnect
a channel, approve a draft or repair a failed post. A changed problem reopens
its notice. Email links open the affected brand and notice directly.