Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| APIFY_TOKEN | Yes | Apify API token for scraping | |
| OPENAI_API_KEY | No | OpenAI API key for timeline embeddings (semantic search) | |
| SOCIAL_RESEARCH_PORT | No | HTTP port | 3847 |
| SOCIAL_RESEARCH_DATA_DIR | No | Data directory | ~/.social-research-mcp/data/ |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| scrape_twitter | Scrape tweets from Twitter/X. Search by query, hashtag, or user timeline. Results are saved to the local timeline database for later analysis. |
| scrape_instagram | Scrape posts from Instagram. Search by URL, hashtag, or keyword. Results are saved to the local timeline database. |
| scrape_tiktok | Scrape videos from TikTok. Search by profile, hashtag, or keyword. Results are saved to the local timeline database. |
| scrape_youtube | Scrape videos from YouTube. Search by keyword or channel URL. Results are saved to the local timeline database. |
| scrape_linkedin | Scrape posts from LinkedIn. Search by profile URL, company URL, or keyword. Results are saved to the local timeline database. |
| scrape_facebook | Scrape posts from Facebook pages. Search by page URL or keyword. Results are saved to the local timeline database. |
| scrape_reddit | Scrape posts from Reddit. Search by subreddit, keyword, or direct URL. Results are saved to the local timeline database. |
| timeline_search | Semantic search across your timeline database. Uses AI embeddings to find posts by meaning, not just keywords. Requires OPENAI_API_KEY. |
| timeline_query | Structured query against the timeline database. Filter by platform, date, engagement, author, or hashtags — no AI needed. |
| timeline_trends | Detect trending topics across your stored timeline data. Identifies spikes in hashtag/keyword frequency and sentiment shifts. |
| timeline_stats | Get aggregate statistics from your timeline: total posts by platform, avg engagement, most active authors, top hashtags. |
| analyze_profile | Analyze a social media profile: scrape recent posts and compute engagement rate, posting frequency, content themes, peak hours, and sentiment. |
| analyze_sentiment | Run sentiment analysis on posts. Provide a query to search timeline data, or pass texts directly. Returns positive/negative/neutral breakdown. |
| compare | Compare 2+ profiles, hashtags, or topics side-by-side across engagement, sentiment, and volume metrics. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |