Rolli MCP
Rolli MCP lets you run social media searches, analytics, and AI-powered investigations across X, Reddit, YouTube, Facebook, Instagram, Threads, and Bluesky, plus manage recurring reports and usage.
Create, list, and fetch keyword/hashtag searches with boolean queries, date ranges, platform filters, and post limits; retrieve analytics, topic trees, and raw posts.
Create, list, and fetch user profile searches on Twitter, Facebook, or Instagram; retrieve profile metrics, content analysis, and raw posts.
Find experts using AI-driven natural-language expert searches and get recommended matches with AI-generated summaries.
Start, monitor, cancel, rerun, update, delete, and list Rolli Agent investigations; retrieve markdown reports, signals, evidence links, and usage metrics.
Create and manage recurring agent reports/schedules (daily, weekly, monthly, once), including pause/resume/delete and execution history.
Configure webhook notification URLs and inspect integration settings.
Get API usage data, per-user breakdowns, and current IQ credit balance.
Enables social media search, user profile analysis, and conversation topic breakdown on Bluesky through the Rolli IQ API.
Enables social media search, user profile analysis, and conversation topic breakdown on Facebook through the Rolli IQ API.
Enables social media search, user profile analysis, and conversation topic breakdown on Instagram through the Rolli IQ API.
Enables social media search, user profile analysis, and conversation topic breakdown on Reddit through the Rolli IQ API.
Enables social media search, user profile analysis, and conversation topic breakdown on YouTube through the Rolli IQ API.
Tools
Tool | Description |
| List all keyword searches, filtered by status |
| Create a keyword/hashtag search and return results when complete |
| Get keyword search results (status, analytics, posts) |
| List all user searches, filtered by status |
| Create a user profile search and return results when complete |
| Get user search results (profile, metrics, content analysis) |
| List all expert searches, filtered by status |
| Find experts matching a natural-language query and return results when complete |
| Get expert search results (recommended experts with AI-generated match summaries) |
| Get conversation topic tree for a keyword search |
| Get raw posts from a keyword search |
| Get raw posts from a user search |
| List Rolli Agent runs (AI-driven social intelligence investigations) |
| Start a Rolli Agent investigation and return the markdown report when complete |
| Get a Rolli Agent run by ID (progress while running, full report when complete) |
| Cancel a pending or running Rolli Agent run |
| Retry a failed, waiting, or stuck Rolli Agent run |
| Pin or rename a Rolli Agent run |
| Soft-delete a completed or failed Rolli Agent run |
| List Rolli Agent scheduled reports |
| Create a recurring Rolli Agent report (daily/weekly/monthly/once) |
| Get a Rolli Agent schedule with its 10 most recent runs |
| Update a Rolli Agent schedule |
| Permanently delete a Rolli Agent schedule |
| Pause a Rolli Agent schedule |
| Resume a paused Rolli Agent schedule |
| List the full execution history of a Rolli Agent schedule |
| Get current integration settings (webhook URL, name) |
| Set the webhook URL for search completion notifications |
| Get API usage data and per-user breakdowns |
Related MCP server: Grok X Insights MCP Server
Setup
You need a Rolli account with API access. Get your API token from rolli.ai.
Claude Desktop / Claude Code / VS Code / Cursor / Windsurf
Add to your MCP config (claude_desktop_config.json, .vscode/mcp.json, or equivalent):
{
"mcpServers": {
"rolli": {
"command": "npx",
"args": ["-y", "@rolli/mcp"],
"env": {
"ROLLI_API_TOKEN": "your_token"
}
}
}
}ROLLI_USER_ID is optional and defaults to "rolli-mcp". Set it to override with your own user ID.
Optional Environment Variables
Variable | Default | Description |
|
| User ID sent with API requests |
|
| Polling interval (ms) when waiting for search results |
|
| Max time (ms) to wait before search timeout (default: 10 min) |
|
| Max tool-response size in bytes; larger responses are trimmed ( |
Smithery
This server includes a smithery.yaml for deployment via Smithery. It will prompt for your API token during setup.
Usage Examples
Search for a keyword across social media:
"Search for posts about 'artificial intelligence' on Twitter and Reddit from the last week"
Analyze a user profile:
"Look up @elonmusk on Twitter and analyze their recent posts"
Get topic breakdown:
"Show me the topic tree for my keyword search #123"
Check API usage:
"How many searches have I used this month?"
Set up a webhook:
"Set my webhook URL to https://myapp.com/rolli-callback"
Optional X/Twitter Source Context
Rolli is useful for cross-platform social search, topic trees, user analysis, and scheduled social intelligence reports. If an agent also needs reviewed account-scoped X/Twitter source evidence before a Rolli investigation, collect that evidence in an approved OpenClaw workflow such as TweetClaw, then pass only the reviewed handles, post URLs, post IDs, excerpts, or summary notes into Rolli prompts.
Keep Rolli and TweetClaw credentials separate. Do not transfer API tokens, cookies, sessions, or account credentials between tools. Treat TweetClaw output as source context for Rolli searches and reports, not as publishing approval.
Development
npm ci
npm run lint # ESLint
npm run build # TypeScript
npm test # VitestCI runs on every push and PR to master. Releases published on GitHub automatically publish to npm (requires NPM_TOKEN repo secret).
License
MIT
Available Tools
30 toolscancel_agent_runA
Cancel a pending or running Rolli Agent run. Marks the run as failed.
Inputs: id (required).
create_agent_scheduleB
Create a recurring Rolli Agent report that runs on a cron-like cadence (daily, weekly, monthly, or one-time) with optional email and Slack notifications.
Inputs: name (required), question (required), starts_at (required), recurrence_time (required), +16 more.
delete_agent_runA
Soft-delete a Rolli Agent run. The record remains in the database for audit purposes but is hidden from listings. Only works on completed or failed runs — cancel the run first if it is still running.
Inputs: id (required).
delete_agent_scheduleA
Permanently delete a Rolli Agent schedule and its execution history. This is irreversible. Use pause_agent_schedule to temporarily stop a schedule without losing history.
Inputs: id (required).
expert_searchA
Find experts matching a natural-language query using Rolli's AI-driven recommendation engine. Polls until the search is complete and returns the full list of recommended experts (name, professional title, location, contact info, expertise keywords, and an AI-generated summary explaining why each expert matches). A status of results_pending means the search succeeded but results are still being written; fetch them with get_expert_search.
Inputs: query (required).
get_agent_runA
Get a Rolli Agent run by ID. While running, returns progress (percentage, phase, current tool). Once complete, returns the full markdown report, signals, evidence links, and usage metrics.
Inputs: id (required).
get_agent_scheduleA
Get a Rolli Agent schedule's full configuration plus its 10 most recent execution records.
Inputs: id (required).
get_expert_searchA
Get results for an expert search by ID. Returns search status and, once complete, the array of recommended experts with their profiles and AI-generated match summaries. results_pending: true means the search succeeded but the backend is still writing results; retry in a few seconds.
Inputs: id (required).
get_integration_setupA
Get the current integration settings (webhook return URL and integration name).
Inputs: no named parameters.
get_keyword_searchA
Get results for a keyword search by ID. Returns search status, analytics summary, and posts. Oversized responses are truncated (truncated: true) — read the complete post list in pages with get_keyword_search_posts (offset, limit, fields=lean, one platform at a time). results_pending: true means the search succeeded but the backend is still writing results; retry in a few seconds.
Inputs: id (required).
get_keyword_search_postsA
Get raw posts from a keyword search. The first line says how many of the search's posts this response shows and the offset of the next page; total, returned, offset and platform_counts (posts per platform across the whole search) are in the JSON. Read a large search in pages with offset and limit, one platform at a time, and fields=lean when the text matters more than media and profile URLs. A response over the size cap is marked truncated: true.
Inputs: search_id (required), limit, fields, offset, +1 more.
get_topic_treeB
Get the conversation topic tree for a keyword search. Shows how topics and subtopics are distributed across the search results.
Inputs: search_id (required), platform.
get_usageA
Get API usage data. Returns search counts, per-user breakdowns, and the current IQ credit balance (credits.credits_remaining, credits.credits_limit, credits.period_reset_date — the latter two are null for one-time credit grants). Optionally filter by month.
Inputs: month.
get_user_searchA
Get results for a user search by ID. Returns profile info, metrics, and content analysis. Oversized responses are truncated (truncated: true) — read the complete post list in pages with get_user_search_posts (offset, limit, fields=lean). results_pending: true means the search succeeded but the backend is still writing results; retry in a few seconds.
Inputs: id (required).
get_user_search_postsA
Get raw posts from a user search. The first line says how many of the profile's posts this response shows and the offset of the next page; total, returned and offset are in the JSON. Read a large search in pages with offset and limit, and fields=lean when the text matters more than media and profile URLs. A response over the size cap is marked truncated: true.
Inputs: search_id (required), limit, fields, offset.
keyword_searchA
Create a keyword/hashtag search across social media platforms (X, Reddit, YouTube, Facebook, Instagram, Threads, Bluesky, and more). Polls until the search is complete and returns the full results. Oversized responses are truncated (truncated: true, largest post arrays shortened) — read the complete post list in pages with get_keyword_search_posts (offset, limit, fields=lean, one platform at a time). A status of results_pending means the search succeeded but results are still being written; fetch them with get_keyword_search.
Inputs: query (required), end_date, max_post, platforms, +1 more.
list_agent_runsA
List Rolli Agent runs (AI-driven social intelligence investigations). Returns a paginated summary list. Discarded runs are excluded.
Inputs: limit, offset, status, user_id.
list_agent_schedule_runsA
List the full execution history of a Rolli Agent schedule, including a preview of each linked agent run.
Inputs: id (required), limit, offset.
list_agent_schedulesB
List Rolli Agent scheduled reports. Schedules execute on a daily/weekly/monthly/once cadence and produce a new agent run each time.
Inputs: limit, offset.
list_expert_searchesC
List all expert searches. Returns a paginated list filtered by status.
Inputs: page, show.
list_keyword_searchesB
List all keyword searches. Returns a paginated list filtered by status.
Inputs: page, show.
list_user_searchesC
List all user searches. Returns a paginated list filtered by status.
Inputs: page, show.
pause_agent_scheduleA
Pause a Rolli Agent schedule so it stops executing. The schedule and its history are preserved — resume it later with resume_agent_schedule.
Inputs: id (required).
rerun_agent_runA
Rerun a failed, waiting, or stuck Rolli Agent run. Resets the run to pending and re-enqueues it. Running runs are force-cancelled first. Returns 422 if the run is already completed. Fails immediately if the IQ credit balance is exhausted (a rerun needs at least 1 credit).
Inputs: id (required).
resume_agent_scheduleA
Resume a paused Rolli Agent schedule. next_run_at is recalculated based on the recurrence parameters.
Inputs: id (required).
start_agent_runA
Start a Rolli Agent investigation. Submit a plain-English question; the agent plans a search strategy, queries Rolli IQ across platforms, analyzes posts, and produces a markdown intelligence report with signals, evidence links, and a confidence rating. Fails immediately (before starting) if the IQ credit balance is insufficient. Polls inline for up to 2 minutes. If the run finishes in that window, returns the full results; otherwise returns the run ID and a note to fetch the results with get_agent_run (typical run takes 3–5 minutes).
Inputs: question (required), mode, max_post, metadata, +4 more.
update_agent_runB
Update a Rolli Agent run's metadata (rename or pin). At least one of pinned or label is required.
Inputs: id (required), label, pinned.
update_agent_scheduleB
Partially update a Rolli Agent schedule. Unspecified fields are left unchanged. next_run_at is recalculated if any recurrence parameter changes.
Inputs: id (required), mode, name, ends_at, +14 more.
update_integration_setupC
Update integration configuration. Set the webhook URL that receives notifications when a search completes.
Inputs: return_url (required).
user_searchA
Create a user profile search on a social media platform. Polls until the search is complete and returns the full results. Oversized responses are truncated (truncated: true) — read the complete post list in pages with get_user_search_posts (offset, limit, fields=lean). A status of results_pending means the search succeeded but results are still being written; fetch them with get_user_search.
Inputs: query (required), platform (required), end_date, start_date.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 30 tools
Tools are grouped into clearly distinct resource families (expert searches, keyword searches, user searches, agent runs, agent schedules, integration, usage), so an agent can pick the right family easily. The only friction is between the create-and-poll search tools (keyword_search, user_search, expert_search) and their get_* counterparts, which both return results; the descriptions clarify when to use which (results_pending retries), but the boundary is not perfectly crisp.
The dominant pattern is consistent snake_case verb_noun (get_*, list_*, create_*, update_*, delete_*, pause_*, resume_*, cancel_*, rerun_*, start_*). The three search-creation tools deviate by being noun-only (keyword_search, user_search, expert_search) where create_keyword_search would match the pattern, a minor but noticeable inconsistency.
30 tools is heavy, sitting above the comfortable 3–15 range, though the surface spans several real domains (three search types with pagination, agent runs, agent schedules, integration, usage) rather than being padded. Most tools earn their place, but the schedule and run lifecycles together consume 15 slots, making the set feel larger than strictly necessary.
Coverage is strong: agent runs and schedules have full lifecycle operations (start/get/list/update/delete/cancel/rerun; create/update/delete/pause/resume/list runs), searches support create/get/list plus post pagination and topic trees, and integration/usage are covered. The main gap is that searches themselves cannot be deleted or renamed — only listed and fetched — which is a minor but real dead end.
Maintenance
Related MCP Connectors
Search and read public data from X/Twitter, Reddit, YouTube, Instagram, TikTok, Facebook, Threads, Bluesky, Trustpilot, Amazon, Google Maps, news, forums and the web. 90+ read-only tools plus ready-made research playbooks (lead finding, brand monitoring, review mining). Hosted: connect with an API key; 50 free requests per endpoint each month.
Live public data from TikTok, LinkedIn, YouTube, X, Reddit and 17 more networks, via one key.
Instagram, X, TikTok, YouTube, Facebook and Reddit data. Approved OAuth or API-key access required.
8 social listening tools over one MCP endpoint: Reddit, X, Threads, YouTube, Google Trends, news.
Related MCP Servers
AlicenseAqualityCmaintenanceSocialCrawl provides the "best" quality public web data on the internet. Access 65+ real-time social media, e-commerce and public web data from a single API with a single schema.5583 npm28MIT- AlicenseNot gradedqualityDmaintenanceReal-time X/Twitter social intelligence for AI agents and developers, powered by Grok's live search capabilities.51 npm3MIT

insightsocialofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to search, describe and call 239 social data endpoints across Instagram, TikTok, LinkedIn, Facebook, YouTube, X, Reddit, Threads and Pinterest through a single API key, covering profiles, posts, comments, followers, hashtags, ads and transcripts with one unified schema. Full responses are saved server-side and can be re-sliced for free with jq, fields or size outlines, so agents pull only the data they need into context.125 npmMIT
SocialToAI MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceEnables AI tools to read publicly visible social media posts, comments, profiles, and trends from 18 platforms such as TikTok, Instagram, X, Reddit, YouTube, Xiaohongshu, and Weibo, on a prepaid pay-per-call basis where failed calls are free. Ships tools for search, trending, detail, comments, user profiles and posts, plus higher-level workflows like brand buzz, comment analysis, account watching, creator discovery, bulk link data, and viral finding.MIT