IntegrateIntegrate
Integrations

Instagram Integration

Instagram Graph API for professional accounts — pages, media, comments, insights, stories, and publishing.

The Instagram integration provides access to instagram Graph API for professional accounts — pages, media, comments, insights, stories, and publishing. through the Integrate MCP server.

Installation

The Instagram integration is included with the SDK:

import { instagramIntegration } from "integrate-sdk/server";

Setup

1. Create an Instagram OAuth App

  1. Go to Facebook Developer Portal
  2. Create a new OAuth application
  3. Configure your redirect URI
  4. Note your Client ID and Client Secret

2. Configure the Integration on Your Server

Add the Instagram integration to your server configuration. The integration automatically reads INSTAGRAM_CLIENT_ID and INSTAGRAM_CLIENT_SECRET from your environment variables:

import { createMCPServer, instagramIntegration } from "integrate-sdk/server";

export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    instagramIntegration({
      scopes: ["pages_show_list", "pages_read_engagement", "instagram_basic", "instagram_manage_insights", "instagram_manage_comments", "instagram_content_publish"], // Optional
    }),
  ],
});

You can override the environment variables by passing explicit values:

instagramIntegration({
  clientId: process.env.CUSTOM_INSTAGRAM_ID,
  clientSecret: process.env.CUSTOM_INSTAGRAM_SECRET,
      scopes: ["pages_show_list", "pages_read_engagement", "instagram_basic", "instagram_manage_insights", "instagram_manage_comments", "instagram_content_publish"], // Optional
});

3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

import { client } from "integrate-sdk";

await client.authorize("instagram");
const result = await client.instagram.listPages({});

console.log(result);

If you're using a custom client, add the integration to the integrations array:

import { createMCPClient, instagramIntegration } from "integrate-sdk";

const customClient = createMCPClient({
  integrations: [instagramIntegration()],
});

Configuration Options

Prop

Type

Default Scopes

These defaults are applied unless you override scopes in the integration config:

  • pages_show_list
  • pages_read_engagement
  • instagram_basic
  • instagram_manage_insights
  • instagram_manage_comments
  • instagram_content_publish

Tools

instagram_list_pages

List pages

Prop

Type

instagram_get_profile

Get profile

Prop

Type

instagram_list_media

List media

Prop

Type

instagram_get_media

Get media

Prop

Type

instagram_list_comments

List comments

Prop

Type

instagram_reply_comment

Reply comment

Prop

Type

instagram_delete_comment

Delete comment

Prop

Type

instagram_hide_comment

Hide comment

Prop

Type

instagram_get_media_insights

Get media insights

Prop

Type

instagram_get_user_insights

Get user insights

Prop

Type

instagram_create_media_container

Create media container

Prop

Type

instagram_publish_media

Publish media

Prop

Type

instagram_list_stories

List stories

Prop

Type

instagram_list_tagged_media

List tagged media

Prop

Type

Notes

  • Category: Social Media
  • Authentication mode: OAuth

On this page