TokPortal
Article

Instagram MCP: Create Accounts, Publish Reels and Carousels

Use TokPortal MCP for Instagram account creation and publishing. Configure Reels, swipeable carousels, music and Stories with the correct fields and checks.

Vincent Tellenne

Vincent Tellenne

Co-founder & CEO

September 18, 20268 min read
TokPortal documentation showing Instagram carousel fields and the instagram_audio_name parameter

Real developer documentation, September 18, 2026. A swipeable Instagram carousel uses video_type carousel with instagram_content_type post.

Share
On this page
Quick answer

TokPortal MCP can request managed Instagram accounts and configure their publishing jobs. Set platform to instagram when creating a bundle. For a Reel use video_type: video and instagram_content_type: reel; for a swipeable carousel use carousel and post. Stories use a separate configuration without instagram_content_type or description.

Technical review: September 18, 2026, against the public documentation, current API schema and published npm package 1.15.1. Examples below are instructional templates, not customer results or a claim that a paid campaign was executed.

“Instagram MCP” can mean several different things: reading an account, generating captions, scheduling an existing profile or creating a new managed account. This guide covers the last two jobs through TokPortal, including the format details that most often make a good-looking request produce the wrong result.

We will plan a small product launch: one Instagram account, a Reel demonstrating the product, a swipeable explainer and a Story. The launch brief is illustrative. The parameter names, content-type combinations and delivery rules are taken from the public API documentation.

Sources & real examples

Public accounts, original posts and primary references. Each example is linked where it is discussed.

View all 5 sources and review notes

What can you do with an Instagram MCP server?

The TokPortal management tools let an assistant request an Instagram account, configure its profile, upload assets, arrange publishing and read the analytics available to your workspace. Local account managers perform the managed account and native posting work. An AI tool call coordinates that service.

If your goal is to operate an existing personal or business profile that is not managed by TokPortal, do not assume that supplying its handle connects it. The videos_only workflow takes a delivered managed account_id. Confirm account eligibility before designing your integration around it.

Connect the server using the MCP installation guide, then verify a read-only call. Keep the creative assets and the publishing request separate: a caption generated in chat is not an uploaded video, and a configured slot is not a delivered Reel.

Step 1: Preview an Instagram account and three publishing slots

Read current countries, platform availability and credit costs. Then preview tokportal_create_bundle with platform: "instagram". This example requests three slots on one new account. It does not create three accounts.

tokportal_create_bundle · MCP tool call
{
  "name": "tokportal_create_bundle",
  "arguments": {
    "dry_run": true,
    "body": {
      "bundle_type": "account_and_videos",
      "platform": "instagram",
      "country": "USA",
      "videos_quantity": 3,
      "auto_finalize_videos": false,
      "external_ref": "example-instagram-product-pilot"
    }
  }
}

Use the remote server or a verified local package version 1.15.1 or newer for management dry runs. Review credits_would_charge and ongoing coverage before approving a live order. After approval, create the real bundle and retain its real ID; preview identifiers are not stored resources.

We choose manual video review in this example. Review deliveries promptly: auto_finalize_videos: false does not remove the approximately 72-hour automatic-finalization window after work enters review. Assign someone to check the first deliveries instead of assuming they can sit indefinitely.

Step 2: Configure the Instagram profile and destination

Use tokportal_configure_bundle_account for the requested username, visible name, biography and profile picture. The documented Instagram biography limit here is 120 characters. Use a brand-owned image and the upload response’s storage_path.

Instagram configuration supports link_in_bio. For an app launch, point it to a page that continues the promise made in the profile and posts. A profile about splitting group bookings should lead to that feature or use case, not an unrelated product directory.

Add campaign attribution to your own destination URL, then verify that the landing page works on a phone. Record account, campaign and destination together. This gives you a way to compare social delivery with product visits later, while acknowledging that some people will discover the app and return through another route.

Step 3: Publish an Instagram Reel with the correct fields

A normal video Reel uses video_type: "video" and instagram_content_type: "reel". It also needs a description, media and a valid target date. Replace every uppercase placeholder below with a real value; the template is deliberately not an executable purchase.

tokportal_configure_bundle_video · MCP tool call
{
  "name": "tokportal_configure_bundle_video",
  "arguments": {
    "id": "YOUR_BUNDLE_UUID",
    "position": 1,
    "dry_run": true,
    "body": {
      "video_type": "video",
      "instagram_content_type": "reel",
      "description": "A real walkthrough of the group-booking feature. #ad",
      "target_publish_date": "YYYY-MM-DD",
      "video_url": "YOUR_UPLOADED_VIDEO_PUBLIC_URL",
      "disclose_as_ads": true,
      "auto_publish": false
    }
  }
}

Use the public_url returned by video upload, or an accessible direct media URL handled by the documented download flow. Inspect the stored result so you know the file was accepted. A private cloud-drive page requiring your browser session is not reliable input for a server fetching media.

The sample caption promotes the product, so it includes an ad disclosure and disclose_as_ads: true. Configure the actual disclosure required for your content. If the creative requires the platform’s AI-content notice, the documented ai_content_disclaimer flag is available too. Those labels do not replace accurate claims or permission to use the footage.

Real TokPortal product interface. An approved creative, its configured publishing job and the delivered public post are separate objects. Open the publishing dashboard
Actual TokPortal publishing interface with content format and configuration optionsOpen full-resolution image ↗

For a carousel people can swipe through, set video_type: "carousel" and instagram_content_type: "post". The same images combined with instagram_content_type: "reel" request a video made from fixed photos instead. This one field changes the format.

Upload each approved slide, preserve the intended order and collect its storage_path. Put those paths in carousel_images. Do not substitute the image upload’s public_url; that convention belongs to video files in this workflow.

tokportal_configure_bundle_video · MCP tool call
{
  "name": "tokportal_configure_bundle_video",
  "arguments": {
    "id": "YOUR_BUNDLE_UUID",
    "position": 2,
    "dry_run": true,
    "body": {
      "video_type": "carousel",
      "instagram_content_type": "post",
      "description": "Three steps to split a group booking. #ad",
      "target_publish_date": "YYYY-MM-DD",
      "carousel_images": [
        "YOUR_FIRST_IMAGE_STORAGE_PATH",
        "YOUR_SECOND_IMAGE_STORAGE_PATH"
      ],
      "disclose_as_ads": true,
      "auto_publish": false
    }
  }
}

A useful product carousel could show the actual group-booking screen, how an invited friend joins and where the shared confirmation appears. Make the first slide explain the problem and the following slides resolve it. Screens from your own app are stronger evidence than decorative AI images that never show what the product does.

Read the response for ignored_fields and configuration errors. A successful response can still tell you that a platform-specific option did not apply. Verify the stored format before submitting the slot for work.

How to add music to Instagram carousels and Reels

The documented Instagram field is instagram_audio_name, an optional track name of up to 200 characters, such as “Song title - Artist.” It supports carousels, Reels and Stories. Replace that example with the actual intended track and confirm it is suitable for your content and account.

tiktok_sound_url is a TikTok field. Sending it on an Instagram job does not choose Instagram music; the field is reported as ignored. A TikTok sound link and an Instagram audio name are not interchangeable identifiers.

If you change music through the full configuration endpoint, send the complete desired slot configuration. These PUT operations clear omitted configuration fields, subject to documented field-specific behavior. Use the supported metadata PATCH operation when all you need is a caption or scheduling change.

How Instagram Stories differ from Reels and posts

A Story uses video_type: "story" and exactly one media input: video_url or story_image_url. It consumes one publishing slot. Do not send a description, instagram_content_type or a carousel image array for a Story; those fields are not accepted in this format.

An optional story_repost_url must refer to the same platform and does not replace the required media. That repost feature has an additional credit cost. Preview the actual configuration rather than assuming all optional fields are free.

Stories use manager-provided screenshot evidence, returned as evidence_screenshot, because the ordinary public-post verification flow does not apply. Your report should say “Story delivered with screenshot evidence,” when that evidence exists, rather than inventing a permanent post URL or a missing API metric.

Step 5: Schedule, inspect readiness and verify delivery

target_publish_date is the first day of a two-day window. New accounts still being created require at least three days of lead time; delivered or existing accounts require at least one, evaluated in UTC. Each bundle allows at most three videos targeting the same day.

Keep auto_publish: false while assembling the pilot, read back the configuration and inspect publish readiness. Then submit the approved work explicitly. If you later use auto_publish, inspect its returned published, blockers and any adjusted dates. A successful configuration does not guarantee the submission succeeded.

Once the manager delivers, check the real Reel or carousel URL, or the Story screenshot evidence. Compare the final asset, caption, account and format with your brief. Request supported corrections within the review window. That is the completion check your client cares about.

Copy an Instagram publishing brief

Account purpose and brand relationship:
Market and eligible managed account ID, if existing:
Profile biography, owned profile image and destination URL:
Slot 1: Reel video — approved public video URL, caption, disclosure, valid date.
Slot 2: Swipeable carousel — ordered image storage paths, caption, disclosure, valid date; instagram_content_type must be post.
Slot 3: Story — exactly one video or image; no description or instagram_content_type.
Optional Instagram music: exact track name, usage checked.
Preview the total cost before any live write. Read back saved fields and warnings. Resolve readiness blockers, submit approved work and report delivered URLs or Story evidence.
Report social metrics separately from landing visits, signups and purchases.

Use Instagram MCP for an AGD content program

In an AGD strategy, the account has a continuing audience promise. For our product example, that might be useful planning advice for people organizing trips with friends. Reels demonstrate the app, carousels explain recurring problems and Stories support a current launch or conversation.

Judge each format by its job and compare posts at similar ages. Use the analytics that are actually available; record missing metrics as unavailable. Track destination visits and meaningful product actions separately. If an explainer gets saves but no visits, inspect the offer and destination before buying more accounts.

When the program becomes repeatable, the same process can support an agency offer. Keep the client’s approval, media rights and reporting scope explicit. The UGC agency guide explains how to package that work around a useful deliverable.

Build one complete Instagram pilot

Preview the account and content scope, then verify a Reel, carousel and Story before increasing volume.

Open TokPortal Developer Portal
Share
Vincent Tellenne

Written by

Vincent Tellenne

Co-founder & CEO

Vincent is a co-founder and CEO of TokPortal. He works on the infrastructure and operating model behind scaled organic social media distribution.

Learn more about this topic with AI