Ask a chat assistant how many followers a creator has and it will either refuse or confidently give you a number from its training data, which can be a year out of date. Ask it to compare engagement across ten accounts and it will invent the numbers.
The Model Context Protocol (MCP) fixes this. It lets the assistant call real tools while it works. GramScraper runs a hosted MCP server at https://gramscraper.com/mcp with 20 tools for public Instagram and TikTok data. You add one URL, log in once, and the assistant can look things up for you. You don’t write any code, and you don’t paste an API key into a config file.
Connect it
Claude (claude.ai and the desktop app)
Settings → Connectors → Add custom connector
Name: GramScraper
URL: https://gramscraper.com/mcp
Choose Connect, then approve access on gramscraper.com.Claude Code
claude mcp add --transport http gramscraper https://gramscraper.com/mcp
# then run /mcp inside Claude Code and choose AuthenticateCursor
{
"mcpServers": {
"gramscraper": { "url": "https://gramscraper.com/mcp" }
}
}VS Code and any other client that supports remote MCP servers over HTTP work the same way: point it at the URL. The client opens a GramScraper page where you log in, or sign up for 100 free credits, and approve the connection. Behind the scenes this is standard OAuth 2.1. Approving creates an API key named MCP · <app name> on your account, so you can revoke it later from Account → API keys.
If your client doesn’t support OAuth, send a key in a header instead: Authorization: Bearer gs_your_api_key.
The tools
| Tool | What the assistant gets | Credits |
|---|---|---|
get_profile | Instagram bio, follower/following/post counts, verification, category, links | 1 |
get_user_posts | Recent feed posts with captions and engagement, about 12 per page | 2 / page |
get_user_reels | Recent reels with view, like and comment counts | 2, then 1 / page |
get_tagged_posts | Posts the account is tagged in, which is useful for spotting brand collaborations | 2, then 1 / page |
get_user_stories / get_user_highlights | Live stories, and pinned highlight reels | 3 each |
get_post / get_post_comments | One post or reel by URL, and its comments | 1 / 2 |
get_hashtag_top_posts / search_hashtags | Top posts under a hashtag, and hashtag search with post counts | 1 / page, 1 |
search_places / find_places_nearby / get_place_top_posts | Instagram locations and the top posts tagged there | 1 each |
tiktok_get_profile | TikTok bio, followers, total likes, video count | 1 |
tiktok_get_user_videos | A creator’s recent videos with plays, likes, shares and saves, newest first | 2, then 1 / page |
tiktok_get_video / tiktok_get_video_comments | One video’s plays, likes, shares, saves, hashtags and music, and its comments | 1, 1 / page |
tiktok_get_hashtag / tiktok_get_hashtag_videos | Hashtag totals, and the popular videos under it | 1, 2 then 1 / page |
get_credit_balance | Credits left on the account | Free |
Each tool description includes its credit price, so the assistant can see what a call will cost before it makes it. Tool calls use the same balance and prices as the REST API.
Prompts that work well
The assistant decides which tools to call. Your job is to ask a question that needs real data. Some examples that work well:
- Influencer vetting. “Here are five Instagram creators we’re considering for a skincare launch. For each, get the profile and the last 12 posts, then compute engagement rate and flag anyone whose likes look inconsistent with their followers.” That is about 15 credits for five accounts. It is the same check as our 30-line Python vetting script, without the script.
- Competitor content review. “Pull the latest reels from @brand_a and @brand_b, and tell me which formats get the most views relative to follower count.” The reels guide explains which view metric you are getting.
- Brand-mention audit. “Get the tagged posts for @ourbrand and list the creators who tagged us this month, with their follower counts.”
- Hashtag scouting. “Compare #booktok on TikTok with #bookstagram on Instagram: how big is each, and who are the top creators in the current top posts?”
- Campaign reporting. Paste a list of TikTok video URLs from a campaign and ask for plays, likes, shares and saves in a table, with totals.
- Comment sentiment. “Read the comments on this reel and summarise what people are asking about.” MCP is a good fit here because the assistant fetches the data and does the reading in one step.
Tip: say how much data you want (“the last 12 posts”, “one page of comments”). An assistant that isn’t given a limit may keep paging through results, and every page costs credits. Asking it to “check my credit balance first” is free.
Why the tools return less than the API
The REST API returns Instagram’s full response, often hundreds of fields per post. Passing all of that to a language model wastes its context window and makes the answers worse. The MCP tools return a trimmed record per item instead: username, caption (shortened), timestamps, likes, comments, plays and URLs. They also handle the steps you would otherwise do yourself. They accept usernames or profile URLs, look up the internal user ID when an endpoint needs one, and fold that ID into the pagination cursor so the next page doesn’t repeat the lookup.
If you need every raw field, for a data pipeline or a database, use the REST API directly. MCP works best when a person is asking questions. The REST API works best when code is consuming the data.
Limits worth knowing
- Public data only. Private accounts return nothing beyond the profile shell. The assistant will tell you the account is private.
- 30 tool calls a minute per connection. That is plenty for conversation. Bulk jobs belong on the REST API.
- No paid-for failures. If the data provider is rate limited, the tool says so, and no credits are spent.
- TikTok and Instagram differ in what they return. TikTok videos include share and save counts; Instagram posts don’t. The TikTok data API guide covers what each TikTok tool returns.
- No contact details. Email and phone fields are removed from responses on purpose.
- The assistant can still make mistakes. The numbers are real, but the maths and conclusions the assistant draws from them are its own. For anything you will act on, such as a contract or a payment, ask it to show the raw figures it used.
Frequently asked questions
Do I need an API key to use the GramScraper MCP server?
No. Clients that support OAuth open a GramScraper login page and create a key for you when you approve the connection. Clients without OAuth can send an existing key as an Authorization: Bearer header.
Which AI assistants work with it?
Any MCP client that supports remote servers over HTTP, including Claude, Claude Code, Cursor and VS Code.
How much does it cost to use MCP?
Tool calls use your normal GramScraper credits at API prices, usually 1 to 3 credits per call. Checking your balance is free. New accounts get 100 free credits, and paid packs never expire.
How do I disconnect an assistant?
Revoke the key named "MCP · <app name>" under Account → API keys. The assistant loses access straight away.
Connect in under a minute
Add https://gramscraper.com/mcp to your assistant and sign up during the approval step. You get 100 free credits, which is enough to vet a handful of creators.