MCP Server

instapi: Instagram

co.instapi/instagram
Search & Research Social Media Public & reachable MCP 2025-11-25

What this MCP does

Searches public Instagram users, hashtags, and places and retrieves profiles and recent posts with media descriptions.

get_started
Get started with instapi
Free, no auth. Service overview, pricing, current account status, and how to get an API key for the data tools.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
instagram_search
Search Instagram
Search Instagram users, hashtags, and places by keyword. Costs 1 credit. Requires Authorization: Bearer sk_instapi_... on the MCP connection.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'minLength': 1, 'description': 'Search keyword, e.g. a name, brand, or topic'}}}
instagram_user_posts
Get a user's posts
Fetch recent posts for an Instagram username, with images and videos AI-parsed into text descriptions. Costs 1 credit. Requires Authorization: Bearer sk_instapi_.... First fetch for a user can take up to ~60s while media is analyzed; cached users return fast.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['username'], 'properties': {'count': {'type': 'integer', 'default': 12, 'maximum': 30, 'description': 'Number of most recent posts, newest first (default 12, max 30)', 'exclusiveMinimum': 0}, 'username': {'type': 'string', 'minLength': 1, 'description': 'Instagram username, without @'}}}
instagram_user_profile
Get a user's profile
Public profile for an Instagram username: bio, links, follower/following/post counts, verified/private/business flags, category. Works for private accounts too. Costs 1 credit (refunded if the user doesn't exist). Requires Authorization: Bearer sk_instapi_....
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['username'], 'properties': {'username': {'type': 'string', 'minLength': 1, 'description': 'Instagram username (bare, @handle, or profile URL)'}}}
Added
instagram_user_posts
Oct. 3, 2026, 2:40 a.m.
Added
instagram_user_profile
Oct. 3, 2026, 2:40 a.m.
Added
instagram_search
Oct. 3, 2026, 2:40 a.m.
Added
get_started
Oct. 3, 2026, 2:40 a.m.