Skip to main content
Glama
anas7272

Instagram MCP Server

by anas7272

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LOG_LEVELNoLogging levelINFO
CLOUDINARY_API_KEYNoCloudinary API key (required for publish_image / carousels)
CLOUDINARY_API_SECRETNoCloudinary API secret (required for publish_image / carousels)
CLOUDINARY_CLOUD_NAMENoCloudinary cloud name (required for publish_image / carousels)
INSTAGRAM_API_VERSIONNoInstagram Graph API versionv23.0
INSTAGRAM_ACCESS_TOKENNoInstagram Graph API access token (required for posting)
DELETE_LOCAL_AFTER_PUBLISHNoWhether to delete local images after publishingfalse
INSTAGRAM_BUSINESS_ACCOUNT_IDNoInstagram Business Account ID (required for posting)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_contentA

List available local images in the content directory.

get_contentA

Safely locate a local content file and return basic metadata.

manage_contentB

Manage Instagram content stored in the content folder.

Actions:

  • list: Show all available content with metadata

  • delete: Permanently delete selected content

  • archive: Move selected content to archive folder

manage_metadataC

Manage metadata for Instagram content (captions, hashtags, scheduling).

Actions:

  • update: Update caption and/or hashtags

  • view: View current metadata

  • clear: Clear caption and hashtags

test_instagram_connectionA

Test the Instagram Graph API connection and report the exact status.

Use this first whenever posting fails, to determine whether the problem is:

  • Expired/revoked token (code 190 or 200, type OAuthException)

  • Missing permissions (code 10)

  • Rate limiting (code 4 or 32)

  • API version deprecated (code 100)

debug_instagram_tokenA

Inspect the configured Instagram access token via Meta's debug_token endpoint.

Reports the token's type, expiry date, and granted scopes. Use this to determine whether the token is expired, about to expire, or lacks the required permissions (instagram_basic, instagram_content_publish).

post_to_instagramC

Post content to Instagram using Instagram Graph API.

Prerequisites:

  • Set INSTAGRAM_ACCESS_TOKEN environment variable

  • Set INSTAGRAM_BUSINESS_ACCOUNT_ID environment variable

  • Instagram access token must have appropriate permissions

test_cloudinary_uploadA

Upload a local image to Cloudinary without posting to Instagram.

cleanup_cloudinary_assetB

Delete a temporary Cloudinary asset manually.

publish_imageC

Publish a local image to Instagram using a Cloudinary-hosted HTTPS image URL.

convert_pdf_to_imagesA

Convert a PDF file to individual PNG images.

Each page becomes a separate image. Images are stored in the content folder with the PDF name as prefix.

Example: document.pdf -> document_page_001.png, document_page_002.png, etc.

create_carousel_batchA

Create carousel batches from selected images or PDF pages.

Parameters:

  • content_ids: Comma-separated list of content IDs (e.g., "image1,image2,image3,image4,image5,image6,image7,image8,image9,image10")

  • batch_name: Optional name for this batch (e.g., "Q1_Report" or "pdf_name")

  • images_per_post: How many images per carousel post (default: 5, max: 10 for Instagram)

Example: 10 images with images_per_post=5 creates 2 carousel batches

post_carousel_to_instagramA

Post a carousel batch to Instagram.

Uploads all images in the batch to Cloudinary, creates a CAROUSEL media container via the Instagram Graph API, publishes it, then deletes the local images and Cloudinary temporary assets.

Requires 2-10 images per carousel (Instagram limit).

list_carousel_batchesA

List all carousel batches and their status.

Shows each batch ID, posted status, image count, and batch progression.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/anas7272/Instagram-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server