CLI
CLI for the ScrapeCreators API — scrape 27+ social media platforms from the terminal or as an MCP server for AI agents. 110+ endpoints. One command.
Install
npm install -g @scrapecreators/cliOr run without installing:
npx @scrapecreators/cli tiktok profile --handle charlidamelio --api-key YOUR_KEYQuick Start
- Sign in or create your account:
Choose Google, Microsoft, or GitHub, then authorize in your browser. The CLI saves your API key automatically. If you already have a key, choose Use an existing API key instead.scrapecreators auth login - Make your first request:
scrapecreators tiktok profile --handle charlidamelio - Explore what's available:
scrapecreators list
Authentication
scrapecreators auth login offers Google, Microsoft, GitHub, and an existing API key. scrapecreators auth signup opens the same guided flow. To choose a provider directly:
scrapecreators auth login --provider google
scrapecreators auth login --provider microsoft
scrapecreators auth login --provider github
scrapecreators auth login --provider api-keyGoogle and Microsoft open a ScrapeCreators approval page. Enter the code shown in your terminal and continue with the selected provider. If Microsoft asks you to verify your email, follow the email link, then return to the approval page and choose I've verified my email.
The CLI checks credentials in this order:
| Priority | Method | Example |
|---|---|---|
| 1 | --api-key flag | scrapecreators tiktok profile --handle x --api-key YOUR_KEY |
| 2 | Stored config | scrapecreators auth login (saves to ~/.config/scrapecreators/) |
| 3 | Environment variable | export SCRAPECREATORS_API_KEY=YOUR_KEY |
Security note: The --api-key flag is visible in shell history and process lists. For persistent use, prefer scrapecreators auth login or the environment variable. In CI/automated pipelines, always use the environment variable.
Sign up with GitHub
Run one command. The CLI opens GitHub, waits for you to authorize, creates your ScrapeCreators account if needed, and saves your API key. You do not need to make API requests or copy access tokens.
scrapecreators auth login --provider github- Enter the code shown in your terminal on the GitHub authorization page.
- Authorize with the GitHub account you want to use for ScrapeCreators.
- Return to the terminal. The CLI checks your key and confirms you are signed in.
New GitHub signups include 10,000 free API calls and do not require a credit card. Existing accounts keep their current balance. After signup, you can sign in at app.scrapecreators.com/login using the same GitHub account.
If your browser does not open, use the authorization link printed in the terminal. Keep the CLI running while you approve. If the code expires, run the command again. You can cancel with Ctrl+C.
For agents: Ask before starting signup or opening a browser. Run the CLI with --provider github and show the user only the authorization link and short code. The CLI handles private credentials. Never read or forward a local gh auth token.
Usage
Every API endpoint is a subcommand under its platform:
scrapecreators <platform> <action> [--params]Examples:
# profiles
scrapecreators instagram profile --handle jane
scrapecreators tiktok profile --handle charlidamelio
scrapecreators youtube channel --handle ThePatMcAfeeShow
# content feeds
scrapecreators tiktok profile-videos --handle charlidamelio --sort-by popular
scrapecreators instagram user-posts --handle jane
scrapecreators instagram user-reels --handle jane
# single post/video
scrapecreators instagram post --url "https://www.instagram.com/reel/DOq6eV6iIgD"
scrapecreators tiktok video --url "https://www.tiktok.com/@user/video/123"
# search
scrapecreators youtube search --query "tutorials"
scrapecreators instagram reels-search --query "dogs"
scrapecreators reddit search --query "best programming languages"Discover Endpoints
# list all platforms
scrapecreators list
# list endpoints for a specific platform
scrapecreators list tiktok
# see full help for any endpoint
scrapecreators tiktok profile --helpInteractive Mode
Run with no arguments to get a guided walkthrough:
scrapecreatorsWalks you through: pick platform → pick action → fill params → execute.
Commands Reference
| Command | Description |
|---|---|
scrapecreators <platform> <action> | Call any API endpoint |
scrapecreators list [platform] | List available platforms or endpoints |
scrapecreators auth login | Sign in or sign up with Google, Microsoft, GitHub, or an existing API key |
scrapecreators auth status | Show current auth status |
scrapecreators auth logout | Remove stored API key |
scrapecreators balance | Check credit balance |
scrapecreators config set <key> <value> | Set a config value |
scrapecreators config get <key> | Get a config value |
scrapecreators config list | Show all config values |
scrapecreators agent add <target> | Write MCP config into an agent (cursor, claude, codex) |
Run any command with --help for full usage details.
Output & Options
The CLI auto-detects whether output goes to a terminal or a pipe:
# default: compact JSON
scrapecreators tiktok profile --handle charlidamelio
# pretty-printed JSON
scrapecreators tiktok profile --handle charlidamelio --pretty
# pipe to jq
scrapecreators tiktok profile --handle charlidamelio | jq '.stats'
# table format
scrapecreators tiktok profile --handle charlidamelio --format table
# csv (full dump — all fields)
scrapecreators tiktok profile --handle charlidamelio --format csv > output.csv
# csv clean (noisy fields removed — spreadsheet-friendly)
scrapecreators tiktok profile --handle charlidamelio --format csv --clean > output.csv
# clean json (strips booleans, empty values, settings)
scrapecreators tiktok profile --handle charlidamelio --clean
# save to file, print only the file path
scrapecreators tiktok profile-videos --handle charlidamelio --output ./data.jsonAll status messages (spinners, warnings) go to stderr. Data goes to stdout. Safe for piping.
| Flag | Description |
|---|---|
--api-key <key> | Override API key for this request |
--format <fmt> | Output format: json, table, csv, markdown |
--json | Compact JSON (default) |
--pretty | Pretty-print JSON with indentation |
--output <path> | Save response to file, print only the path |
--clean | Strip noisy fields (booleans, empty values, settings). Works with any format |
--no-color | Disable ANSI colors |
--verbose | Show request URL, timing, status code |
AI Agent Integration
The CLI is designed agent-first. All 110+ endpoints are also available as an MCP server — no CLI installation required for agents.
MCP Server
Add to your agent's MCP config manually:
{
"mcpServers": {
"scrapecreators": {
"url": "https://api.scrapecreators.com/mcp",
"headers": {
"x-api-key": "your-key-here"
}
}
}
}Or auto-configure with the CLI:
scrapecreators agent add cursor # writes .cursor/mcp.json
scrapecreators agent add claude # writes ~/.claude/claude_desktop_config.json
scrapecreators agent add codex # writes ~/.codex/mcp.jsonMerges into existing config without overwriting other MCP servers. Prompts for API key if not already stored.
Agent Skill
Install the ScrapeCreators agent skill to teach agents how to pick the right endpoint, handle pagination, and manage credits:
npx skills add ScrapeCreators/social-media-research-skillsWorks with Cursor, Claude Code, Codex, GitHub Copilot, Gemini CLI, Windsurf, and 40+ other agents.
Agent-Optimized Output
The default output is already compact JSON — no extra flags needed. To reduce further:
# --clean: strip booleans, empty values, settings (keeps urls and stats)
scrapecreators tiktok profile --handle x --clean
# --output: save to file, return only the path
scrapecreators tiktok profile-videos --handle x --clean --output ./data.json
# stdout: ./data.jsonStructured errors for agents:
{
"error": true,
"code": "HTTP_401",
"message": "...",
"suggestion": "Run 'scrapecreators auth login'..."
}Known Limitations
- Handles: pass without
@. Usecharlidamelionot@charlidamelio - Hashtags: pass without
#. Usefypnot#fyp - Transcripts: by default, successful AI up to 120 seconds costs 1 credit per request. Set allow_long_transcription=true on supported routes to lift the AI cap and charge 10 credits per started minute for all successful AI. Existing fallback flags are still required where applicable. Native captions retain their existing price; empty AI and errors have no AI fee. Default short AI on detail endpoints is included in the base price; paid-mode AI adds to it. YouTube, Reddit, LinkedIn, and Rumble are native-only and do not accept this paid AI option. Twitch/Kick VOD behavior and pricing are unchanged. Allow at least 30 seconds on synchronous routes; resource limits and timeouts still apply.
