Go to App

MCP Tool Reference

All 23 tools exposed by mcp.exportcomments.com and the local exportcomments-mcp stdio server. Tools work identically across both transports.

For setup instructions and the OAuth flow, see the MCP Server overview.

Exports

export_comments

Create a new export job. Supports 33+ platforms (Instagram, YouTube, TikTok, Facebook, Twitter/X, Reddit, Trustpilot, Amazon, etc.). Returns a job GUID for tracking. Use wait=true to poll until completion in a single call (up to 10 minutes).

ParameterTypeDescription

urlrequiredstringThe URL to export comments/reviews from repliesbooleanInclude replies to comments limitnumberMaximum number of items to export min_datestringMinimum date filter (ISO 8601, e.g. 2024-01-15) max_datestringMaximum date filter (ISO 8601, e.g. 2024-06-30) vpnstringUse VPN with a specified country (e.g. "Norway") cookiesobjectCookies for authenticated access (e.g. {"sessionid": "abc"}) tweetsbooleanInclude tweets (Twitter/X only) followersbooleanExport followers list (Twitter/X only) followingbooleanExport following list (Twitter/X only) likesbooleanExport likes data sharesbooleanInclude shares data advancedbooleanEnable advanced export features facebook_adsbooleanInclude Facebook ads data waitbooleanWait for completion before returning (polls every 5s, 10-min timeout) realtimebooleanUse WebSocket for real-time updates (implies wait=true)

check_export

Check the status of an export job by its GUID. Returns full job details: status, progress, download URLs, error info. Job statuses: queueingprogressdone | error.

ParameterTypeDescription

guidrequiredstringThe job GUID returned by export_comments waitbooleanWait for export to complete before returning realtimebooleanUse WebSocket for real-time updates (implies wait=true)

list_exports

List the authenticated account's export jobs with pagination.

ParameterTypeDescription

pagenumberPage number (default: 1) limitnumberItems per page (default: 20)

download_export

Download the raw JSON data for a completed export. Returns the actual exported comments/reviews as structured JSON. The job must have status done.

ParameterTypeDescription

guidrequiredstringThe job GUID to download data for

Discovery

detect_platform

Detect which platform a URL belongs to and return supported options. Use before export_comments to understand what options are available for a URL.

ParameterTypeDescription

urlrequiredstringThe URL to detect the platform for

list_platforms

List all 33+ supported platforms with URL patterns, export options, and example URLs. No parameters.

Account

get_my_profile

Authenticated account profile: email, plan tier, account ID, registration date. No parameters.

get_my_quota

Current usage vs. allowance: requests today / this month, comments exported, concurrent exports in flight. No parameters.

get_my_limits

Plan tier limits (Premium / Business): daily request cap, rate limit, concurrent exports, max comments per export, webhook count. No parameters.

Random Comment Picker (Giveaways)

pick_random_winners

Pick N random winners from a completed export. Downloads the export's JSON payload, optionally filters by @-mention, #hashtag, or substring, dedupes by commenter username, then picks N uniformly using a Fisher-Yates shuffle.

Returns the winner list with usernames, comment text, and permalinks — suitable for FTC-compliant public verification.

ParameterTypeDescription

guidrequiredstringCompleted export GUID (status=done) countnumberNumber of winners (1-100, default 1) require_mentionstringOnly consider comments mentioning this @-handle (e.g. "@brand") require_hashtagstringOnly consider comments containing this #hashtag require_textstringSubstring the comment must contain (case-insensitive) dedupe_by_userbooleanLimit each commenter to one entry (default true)

Webhooks

list_webhooks

List the account's webhook subscriptions: event, URL, enabled state, last delivery status. No parameters.

create_webhook

Subscribe a URL to a webhook event. Valid events: export.created, export.finished, export.failed, export.requeued. The URL receives POSTs with a JSON body (signed via X-Webhook-Signature for verification — see webhooks docs).

ParameterTypeDescription

eventrequiredstringEvent name (e.g. "export.finished") urlrequiredstringHTTPS endpoint that will receive the event POSTs

update_webhook

Change the event or target URL of an existing webhook.

ParameterTypeDescription

uuidrequiredstringWebhook UUID from list_webhooks eventstringNew event name urlstringNew target URL

delete_webhook

Permanently remove a webhook subscription. Use toggle_webhook to disable without deleting.

ParameterTypeDescription

uuidrequiredstringWebhook UUID from list_webhooks

toggle_webhook

Enable or disable a webhook (30-second cooldown between toggles).

ParameterTypeDescription

uuidrequiredstringWebhook UUID from list_webhooks

test_webhook

Fire a test event at the configured URL to verify delivery. Returns the receiving server's response.

ParameterTypeDescription

uuidrequiredstringWebhook UUID from list_webhooks

Scheduled Exports

list_schedules

List scheduled (recurring) export jobs for this account. No parameters.

create_schedule

Create a recurring export. Pass either a cron expression or a friendly frequency. options accepts the same fields as export_comments (replies, limit, vpn, cookies, etc.).

ParameterTypeDescription

urlrequiredstringURL to export on each run cronstringCron expression in UTC (e.g. "0 9 * * 1" = Mondays 09:00 UTC) frequencystringOne of: hourly, daily, weekly, monthly optionsobjectSame options object as export_comments

At least one of cron or frequency is required.

update_schedule

Edit an existing schedule's URL, cron, frequency, or options.

ParameterTypeDescription

uuidrequiredstringSchedule UUID from list_schedules urlstringNew URL cronstringNew cron expression frequencystringNew frequency name optionsobjectNew options object (replaces existing)

delete_schedule

Permanently remove a scheduled export. Use pause_schedule to suspend without deleting.

ParameterTypeDescription

uuidrequiredstringSchedule UUID from list_schedules

run_schedule

Trigger a scheduled export to run immediately (in addition to its normal cadence).

ParameterTypeDescription

uuidrequiredstringSchedule UUID from list_schedules

pause_schedule

Suspend a scheduled export. No new runs until resume_schedule is called.

ParameterTypeDescription

uuidrequiredstringSchedule UUID from list_schedules

resume_schedule

Resume a paused scheduled export.

ParameterTypeDescription

uuidrequiredstringSchedule UUID from list_schedules

Response format

Every tool returns a structured JSON envelope:

json
{
"ok": true,
"data": { /* tool-specific payload */ }
}

Errors:

json
{
"ok": false,
"error": "Human-readable message",
"error_code": "MACHINE_READABLE_CODE",
"detail": "Optional extra context"
}
💡
Designed for AI assistants

The envelope is uniform across tools so an AI can branch on ok without parsing tool-specific shapes. Use wait=true on export_comments / check_export and you'll often get the entire workflow back in one tool call.