← Back to Skills Marketplace
snoopyrain

Boring Instagram Publisher

by snoopyrain · GitHub ↗ · v1.0.3 · MIT-0
cross-platform ✓ Security Clean
157
Downloads
0
Stars
0
Active Installs
3
Versions
Install in OpenClaw
/install boring-instagram-publisher
Description
Publish posts to Instagram using Boring. Use when the user says 'post to Instagram', 'publish on IG', 'schedule Instagram post', 'create Instagram carousel',...
README (SKILL.md)

Boring Instagram Publisher

Publish photos, carousels, and Reels to Instagram. Powered by Boring.

Security & Data Handling

  • MCP link is a credential: Your MCP Server URL contains an embedded authentication token. Treat it like a password — do not share it publicly. Regenerate anytime in Settings.
  • Media uploads: Local files or URLs are uploaded to Boring's Google Cloud Storage to make them accessible for publishing. Social media APIs require publicly accessible media URLs. Instagram requires media for all posts.
  • Data flow: Your content and media are sent from Boring's server to Instagram's API on your behalf via your connected OAuth token.
  • No local credentials: No local API keys or environment variables needed. All auth is embedded in the MCP link.

Prerequisites

  1. Sign up at boring.aiagent-me.com with Google
  2. Connect Instagram — requires an Instagram Business or Creator account (personal accounts not supported)
  3. Get your MCP link: Go to Settings → copy your MCP Server URL (contains your auth token — treat it like a password)
  4. Add to Claude: Paste the MCP link as a Connector — no install, no API key needed

Workflow

Step 1: List Accounts

Call boring_list_accounts and filter for instagram platform.

Step 2: Confirm Content

IMPORTANT: Instagram requires media. Text-only posts are NOT supported.

Type Media Specs
Photo 1 image JPG/PNG, 320x320 to 1440x1440
Carousel 2-10 images All images must have matching aspect ratios
Reels 1 video MP4, 9:16 vertical, up to 90 seconds
  • Caption: Up to 2,200 characters
  • If the user only provides text with no media, inform them that Instagram requires at least one image or video

Step 3: Prepare Media

Media must be publicly accessible URLs:

  • Local files: boring_upload_file with file_path → returns public URL
  • External URLs: boring_upload_from_url → re-hosts to Boring cloud storage
  • Google Drive links: Pass directly to media_urls

Step 4: Publish or Schedule

Call boring_publish_post:

boring_publish_post(
  account_id="\x3Cinstagram_account_id>",
  platform="instagram",
  text="Your caption here #hashtags",
  media_urls=["https://...image.jpg"]
)

For carousel (2-10 images):

boring_publish_post(
  account_id="\x3Cinstagram_account_id>",
  platform="instagram",
  text="Swipe to see more!",
  media_urls=["https://...1.jpg", "https://...2.jpg", "https://...3.jpg"]
)

For Reels (video):

boring_publish_post(
  account_id="\x3Cinstagram_account_id>",
  platform="instagram",
  text="Check out this Reel!",
  media_urls=["https://...video.mp4"]
)

Schedule: Add scheduled_at in ISO 8601 format:

boring_publish_post(..., scheduled_at="2025-12-25T10:00:00Z")

Step 5: Report

Show the post ID and confirmation. If scheduled, show the scheduled time.

Managing Scheduled Posts

  • View: boring_list_scheduled_posts with platform: "instagram"
  • Cancel: boring_cancel_scheduled_post with scheduled_post_id

Instagram-Specific Notes

  • Media is mandatory — always need at least 1 image or video
  • Carousel aspect ratios: All images in a carousel must have the same aspect ratio
  • Reels: Vertical video (9:16), up to 90 seconds
  • Token: 60-day long-lived token with auto-refresh
  • Rate Limit: 200 calls/hour per user, 4,800/hour per app
  • Permissions: instagram_business_content_publish, instagram_business_basic

Error Handling

Error Solution
MediaRequired Instagram requires media — ask user for an image or video
InvalidCarouselSize Carousel needs 2-10 images
CarouselCreationFailed Check that all images have the same aspect ratio
MediaTooLarge Images max 8MB
TokenExpired Reconnect at boring.aiagent-me.com

Documentation

Full API docs: boring-doc.aiagent-me.com

Usage Guidance
This skill appears internally consistent, but you must trust Boring before using it. The MCP Connector URL contains an embedded auth token that lets Boring act on your Instagram Business/Creator account and re-host media on Boring's cloud. Before installing or pasting a connector link: 1) Verify you trust the service (review privacy, terms, and the provided homepage). 2) Treat the MCP link like a password — do not post it publicly and regenerate it if leaked. 3) Test with a non-critical Instagram account first (or remove posting permissions temporarily). 4) Be aware media you upload will be uploaded to Boring's storage and then sent to Instagram. 5) Understand the agent can autonomously call the connector (it may post/schedule if instructed), so restrict usage or require explicit confirmation for publishing. If you need stronger assurance, ask the skill author for details about the connector scope (exact permissions granted) and how long-lived tokens are handled.
Capability Analysis
Type: OpenClaw Skill Name: boring-instagram-publisher Version: 1.0.3 The skill 'boring-instagram-publisher' is a legitimate integration for publishing content to Instagram via the Boring service. It provides clear instructions for the AI agent to manage accounts, upload media, and schedule posts using an MCP server. While it requires uploading files to a third-party cloud storage (Boring's Google Cloud Storage) and uses an embedded auth token in the MCP URL, these behaviors are transparently documented as necessary for the service's functionality. No evidence of malicious intent, data exfiltration, or harmful prompt injection was found in SKILL.md or _meta.json.
Capability Assessment
Purpose & Capability
The skill is explicitly an adapter for Boring's Instagram publishing flow and only asks for the MCP Connector link (an embedded auth token). No unrelated binaries, env vars, or install steps are requested — this is proportionate to its purpose.
Instruction Scope
SKILL.md instructs the agent to call boring_* actions (list accounts, upload media, publish/schedule/cancel). It explicitly re-hosts local files or external URLs to Boring's Google Cloud Storage before posting. The instructions do not ask the agent to read unrelated files or system credentials, but they do direct user media and captions to a third party (Boring) and rely on the connector token to perform posts on the user's behalf.
Install Mechanism
No install spec or code is included (instruction-only). That minimizes disk-write/execution risk — nothing is downloaded or installed by the skill itself.
Credentials
The single required artifact is an MCP link that embeds an auth token. That is expected for a connector-based publisher, but it is powerful: the link likely grants Boring access to your Instagram OAuth tokens and the ability to publish/schedule/cancel posts on your account. Treat the MCP link like a password and only provide it to services you trust.
Persistence & Privilege
always:false and user-invocable:true are appropriate. disable-model-invocation is false (normal), so the agent can autonomously call the connector when allowed — combine that with the connector's posting privileges and you can get automated posts if the agent is instructed to do so.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install boring-instagram-publisher
  3. After installation, invoke the skill by name or use /boring-instagram-publisher
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.3
- Added a Security & Data Handling section to clarify credential safety, media uploads, and data flow. - Updated metadata to specify that the MCP Connector link is required and contains an embedded auth token. - Emphasized that the MCP Server URL acts as a credential and must be treated securely. - Improved instructions for obtaining and handling the MCP link in the Prerequisites.
v1.0.2
- Updated prerequisites to use MCP connector workflow: no install or API key required. - Revised setup instructions for easier onboarding and clarified how to add the MCP link as a connector. - Added a homepage link to the metadata for quick access to documentation. - Removed references to API key setup and package installation. - General documentation cleanup and improved clarity for setup steps.
v1.0.0
Initial release of boring-instagram-publisher. - Enables publishing Instagram posts, carousels, and Reels via Boring API. - Requires an Instagram Business/Creator account and BORING_API_KEY. - Media (image or video) is mandatory for all posts; text-only not supported. - Supports direct upload, URL re-hosting, and Google Drive links for media. - Includes scheduling, error handling, and management of scheduled posts. - Full usage and workflow documentation provided.
Metadata
Slug boring-instagram-publisher
Version 1.0.3
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 3
Frequently Asked Questions

What is Boring Instagram Publisher?

Publish posts to Instagram using Boring. Use when the user says 'post to Instagram', 'publish on IG', 'schedule Instagram post', 'create Instagram carousel',... It is an AI Agent Skill for Claude Code / OpenClaw, with 157 downloads so far.

How do I install Boring Instagram Publisher?

Run "/install boring-instagram-publisher" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Boring Instagram Publisher free?

Yes, Boring Instagram Publisher is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Boring Instagram Publisher support?

Boring Instagram Publisher is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Boring Instagram Publisher?

It is built and maintained by snoopyrain (@snoopyrain); the current version is v1.0.3.

💬 Comments