Sprout Social MCP Server
This server acts as a Model Context Protocol (MCP) interface, enabling AI assistants to interact with Sprout Social data for analytics, publishing, messaging, social listening, media management, and customer cases.
Customer Metadata: Retrieve customer IDs, social profiles, groups, tags, users, teams, listening topics, and case queues.
Analytics: Get profile-level metrics (impressions, engagements) and post-level metrics (impressions, engagements, reactions, video views) for specific date ranges, with pagination support.
Messages: Fetch inbox messages with filtering by profile, date range, and cursor-based pagination.
Social Listening: Access metrics (volume, sentiment, engagement) and messages for specific listening topics.
Publishing: Create and schedule posts to one or more social profiles, with support for drafts, tags, and media attachments. Retrieve details of existing posts by ID.
Media Management: Upload images or videos via a public URL for use in publishing posts.
Case Management: Retrieve customer cases/inquiries with filters for priority, time range, and pagination.
Prerequisites: Requires a Sprout Social API Key and Customer ID. Compatible with AI assistants such as Claude Desktop, Cursor, Devin, and VS Code (GitHub Copilot).
Allows managing Facebook profiles, posts, and analytics (impressions, engagements, reactions, etc.) through the Sprout Social API.
Allows managing Instagram profiles, posts, and analytics (impressions, engagements, reactions, video views, etc.) through the Sprout Social API.
Allows managing TikTok profiles, posts, and analytics (impressions, engagements, reactions, video views, etc.) through the Sprout Social API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Sprout Social MCP Serverget my Instagram analytics for last week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Sprout Social MCP Server
Note: This is an unofficial, community-built MCP server to use while Sprout Social works on releasing their official one.
A Model Context Protocol (MCP) server for the Sprout Social API. It lets AI assistants (Claude, Cursor, Devin, etc.) access your Sprout Social data — analytics, publishing, messages, listening, and more — through a standardized interface.
Quick Start
Prerequisites
Node.js 18+
A Sprout Social API token (how to create one)
Your Sprout Social Customer ID (how to find it)
Running via npx
No installation required:
SPROUT_SOCIAL_API_KEY=your-token \
SPROUT_SOCIAL_CUSTOMER_ID=your-customer-id \
npx sprout-social-mcpConfiguration with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"sprout-social": {
"command": "npx",
"args": ["-y", "sprout-social-mcp"],
"env": {
"SPROUT_SOCIAL_API_KEY": "your-api-token",
"SPROUT_SOCIAL_CUSTOMER_ID": "your-customer-id"
}
}
}
}Configuration with Cursor
Add to your .cursor/mcp.json:
{
"mcpServers": {
"sprout-social": {
"command": "npx",
"args": ["-y", "sprout-social-mcp"],
"env": {
"SPROUT_SOCIAL_API_KEY": "your-api-token",
"SPROUT_SOCIAL_CUSTOMER_ID": "your-customer-id"
}
}
}
}Configuration with VS Code (GitHub Copilot)
Add to your .vscode/mcp.json:
{
"servers": {
"sprout-social": {
"command": "npx",
"args": ["-y", "sprout-social-mcp"],
"env": {
"SPROUT_SOCIAL_API_KEY": "your-api-token",
"SPROUT_SOCIAL_CUSTOMER_ID": "your-customer-id"
}
}
}
}Configuration with Devin
In Devin's MCP settings, add a new server:
Name:
sprout-socialCommand:
npx -y sprout-social-mcpEnvironment Variables:
SPROUT_SOCIAL_API_KEY→ your API tokenSPROUT_SOCIAL_CUSTOMER_ID→ your customer ID
Environment Variables
Variable | Required | Description |
| Yes | Your Sprout Social API token |
| Yes | Your Sprout Social customer ID |
Available Tools
Customer Metadata
Tool | Description |
| Get your Sprout Social customer IDs and names |
| List all connected social profiles |
| List all groups |
| List all tags |
| List all users |
| List all listening topics |
| List all teams |
| List all case queues |
Analytics
Tool | Description |
| Profile-level analytics (impressions, engagements, etc.) for a date range |
| Post-level analytics with pagination. Supports impressions, engagements, reactions, video views |
Messages
Tool | Description |
| Retrieve inbox messages with filtering and cursor-based pagination |
Listening
Tool | Description |
| Get metrics for a listening topic |
| Get messages from a listening topic |
Publishing
Tool | Description |
| Create a new post to be published at a scheduled time |
| Retrieve details of a specific publishing post |
Media
Tool | Description |
| Upload media via URL for use in publishing posts |
Cases
Tool | Description |
| Retrieve customer cases/inquiries with filters for priority, time range, etc. |
Usage Tips
Post Analytics Pagination
The Sprout Social API paginates post analytics. Always check paging.total_pages in the response and request all pages:
Ask: "Get all Instagram post analytics for last week"
→ Tool calls get_post_analytics with page=1, then page=2, etc.Valid Post-Level Metrics
All platforms (Instagram, Facebook, LinkedIn, TikTok, etc.):
lifetime.impressions— total viewslifetime.engagements— total engagement (likes, comments, shares, saves)lifetime.reactions— reactions onlylifetime.video_views— video view countlifetime.saves— saves/bookmarkslifetime.comments_count— comment countlifetime.post_shares_count— share count
Facebook only:
lifetime.post_link_clicks— clicks on links in the postlifetime.post_content_clicks— total clicks on post contentlifetime.post_content_clicks_other— other content clicks
Platform limitations:
Reach (
lifetime.reach) is NOT available at the post level — only at the profile level viaget_profile_analytics. This is a Sprout Social API limitation.Click metrics are only available for Facebook posts. For Instagram, the API silently ignores them (no error, but no data returned).
Invalid metrics (will cause errors): lifetime.comments, lifetime.shares, lifetime.reach
Finding Profile IDs
Use get_profiles first to discover your customer_profile_id values, then pass them to analytics or publishing tools.
Development
git clone https://github.com/jginorio/sprout-social-mcp.git
cd sprout-social-mcp
npm install
npm run buildTo test locally:
SPROUT_SOCIAL_API_KEY=your-token \
SPROUT_SOCIAL_CUSTOMER_ID=your-customer-id \
node dist/index.jsLicense
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jginorio/sprout-social-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server