@b2b-saas-inc/olli-mcp-server
Lets LLMs manage social media presence via olli.social API, with tools for campaigns, drafts, analytics, and more.
README
@b2b-saas-inc/olli-mcp-server
MCP server for olli.social — lets LLMs manage your social presence via API key.
Installation
Add to your Claude Desktop (or other MCP client) config:
{
"mcpServers": {
"olli": {
"command": "npx",
"args": ["-y", "@b2b-saas-inc/olli-mcp-server"],
"env": {
"OLLI_API_KEY": "olli_sk_your_key_here"
}
}
}
}
Generate an API key in your olli.social profile settings under API Keys.
Configuration
| Variable | Required | Default |
|---|---|---|
OLLI_API_KEY |
Yes | — |
OLLI_BASE_URL |
No | https://api.olli.social/v1 |
Tools (68)
| Category | Tools |
|---|---|
| Workspaces | list_workspaces, get_workspace, update_workspace, list_memberships, update_membership, remove_membership, list_invitations, create_invitation, delete_invitation, get_feature_flags, get_plan_features |
| Campaigns | list_campaigns, get_campaign, create_campaign, update_campaign, delete_campaign |
| Drafts | list_drafts, get_draft, create_draft, update_draft, delete_draft, publish_draft, schedule_draft |
| Calendar | list_calendar_events, get_calendar_event, create_calendar_event, update_calendar_event, delete_calendar_event |
| Assets | list_assets, get_asset, create_asset, delete_asset |
| ICPs | list_icps, create_icp, update_icp, delete_icp |
| Industries | list_industries, create_industry, update_industry, delete_industry |
| Products | list_products, create_product, update_product, delete_product |
| Teams | list_teams, get_team, create_team, update_team, delete_team, list_team_members, add_team_member, remove_team_member |
| AI | generate_post, improve_content, create_variations, suggest_hashtags, analyze_content, get_ai_usage, campaign_generate, avatar_chat, list_avatar_conversations, get_avatar_conversation |
| Analytics | get_analytics |
| Amplification | list_amplification_posts, get_amplification_post, create_amplification_post, delete_amplification_post |
| Leaderboard | get_leaderboard |
| Integrations | list_integrations, get_linkedin_organizations, select_linkedin_organization, sync_linkedin, get_linkedin_analytics, disconnect_integration |
| Notifications | list_notifications, mark_notification_read, mark_all_notifications_read, delete_notification |
| Support | list_support_tickets, get_support_ticket, create_support_ticket, list_ticket_messages, reply_to_ticket |
| Billing | get_billing, list_invoices |
All workspace-scoped tools require a workspace_id (slug or UUID, e.g. "olli-demo").
Development
npm install
OLLI_API_KEY=olli_sk_... npm run dev
npm run build
License
MIT
Schema Sync
Avatar tool schemas are sourced from olli-social-app's AvatarToolRegistry — the single source of truth for all 34 avatar AI tool definitions. Instead of maintaining duplicate schemas in TypeScript, this MCP server imports them as JSON.
How it works
- The Rails app exposes
GET /api/v1/ai/avatar_schemas(protected by shared secret) - Running
npm run sync-schemasfetches the schemas and writes them tosrc/generated/avatar-schemas.json - At startup, the MCP server reads this JSON file and dynamically registers avatar tools
- Each avatar tool proxies execution back to the Rails avatar endpoint
Setup
Add these variables to your .env file:
MCP_RAILS_URL=https://api.olli.social
MCP_SHARED_SECRET=your_shared_secret_here
MCP_RAILS_URL is the base URL of your olli-social-app Rails server.
MCP_SHARED_SECRET must match the MCP_SHARED_SECRET environment variable on the Rails side.
Syncing schemas
# Pull latest avatar tool schemas from Rails
npm run sync-schemas
The output file src/generated/avatar-schemas.json is committed to the repo for reproducible builds. Re-run the sync whenever avatar tool definitions change in the Rails app (i.e., when AvatarToolRegistry::SCHEMA_VERSION is bumped).
Adding new avatar tools
New avatar tools should be added to AvatarToolRegistry in olli-social-app — never directly in this MCP server. After adding tools in Rails:
- Bump
SCHEMA_VERSIONinavatar_tool_registry.rb - Run
npm run sync-schemasin this repo - Commit the updated
avatar-schemas.json
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.