Repository avatar
AI Tools
v1.0.1
active

social-media-api

io.github.SocialAPIsHub/social-media-api

Unified social media API for AI agents. Access Facebook, Instagram, TikTok, and more.

Documentation

SocialAPIs MCP Server

SocialAPIs Logo

Unified social media API for AI agents

npm version License: MIT GitHub stars

Website β€’ Documentation β€’ Discord β€’ npm


πŸš€ Quick Start

Installation

npm install -g @socialapis/mcp

Configuration

Add to your Claude Desktop config:

macOS:

nano ~/Library/Application\ Support/Claude/claude_desktop_config.json

Windows:

notepad %APPDATA%\Claude\claude_desktop_config.json

πŸ”§ Configuration

Method 1: Command Line Argument (Recommended for Claude Desktop)

{
  "mcpServers": {
    "socialapis": {
      "command": "npx",
      "args": ["-y", "@socialapis/mcp", "YOUR_API_KEY"]
    }
  }
}

Method 2: Environment Variable

# Set environment variable
export SOCIALAPIS_API_KEY=your_api_key_here

# Run without argument
npx @socialapis/mcp

Method 3: .env File (For Development)

# Copy example file
cp .env.example .env

# Edit with your values
nano .env

.env file:

SOCIALAPIS_API_KEY=your_api_key_here
MCP_PROXY_URL=https://mcp.socialapis.io

Environment Variables

VariableDescriptionDefault
SOCIALAPIS_API_KEYYour SocialAPIs API keyNone (required)
MCP_PROXY_URLMCP proxy server URLhttps://mcp.socialapis.io
PORTHTTP server port3001
API_BASE_URLBackend API URLhttps://api.socialapis.io/v1

Get API Key

  1. Sign up at socialapis.io
  2. Go to Dashboard
  3. Copy your API key
  4. Replace YOUR_API_KEY in config

Test It

Restart Claude Desktop and ask:

Get Nike's Facebook page details

πŸ“‹ Features

  • 🌐 Unified API - One interface for multiple platforms
  • πŸ€– AI-First - Built for Claude, Cursor, and AI agents
  • πŸ“Š Rich Data - Posts, comments, engagement metrics
  • πŸ” Advanced Filtering - Time ranges, pagination
  • 🎯 Simple Auth - No OAuth complexity
  • ⚑ Fast - Global edge network
  • πŸ”’ Secure - API keys stay local

πŸ› οΈ Available Tools

Facebook Pages

  • facebook_get_page_id - Extract page ID from URL
  • facebook_get_page_details - Get page info, followers, likes
  • facebook_get_page_posts - Fetch posts with time filtering
  • facebook_get_page_reels - Get reels/short videos

Facebook Groups

  • facebook_get_group_id - Extract group ID from URL
  • facebook_get_group_details - Get group metadata
  • facebook_get_group_posts - Fetch group posts

Facebook Posts

  • facebook_get_post_id - Extract post ID from URL
  • facebook_get_post_details - Get reactions, comments, shares
  • facebook_get_post_attachments - Get media attachments
  • facebook_get_video_details - Get video metadata
  • facebook_get_post_comments - Fetch comments with pagination

More platforms coming soon: Instagram, TikTok, YouTube, Twitter


πŸ’‘ Usage Examples

Brand Monitoring

Monitor Nike's Facebook page and alert me if engagement drops below average

Competitive Analysis

Compare engagement rates between Nike, Adidas, and Puma over the last month

Content Strategy

What types of posts get the most engagement on Coca-Cola's Facebook page?

Sentiment Analysis

Analyze comments on our recent posts and identify common themes

πŸ—οΈ Architecture

Claude Desktop
    ↓
@socialapis/mcp (local MCP client)
    ↓
https://mcp.socialapis.io (global proxy)
    ↓
https://api.socialapis.io (data API)

Why this architecture?

  • βœ… Low latency (global edge network)
  • βœ… High reliability (99.9% uptime)
  • βœ… Auto rate limiting
  • βœ… Smart caching
  • βœ… Your API key stays local

πŸ”§ Development

Local Setup

# Clone repository
git clone https://github.com/SocialAPIsHub/mcp-server.git
cd mcp-server

# Install dependencies
npm install

# Run MCP client
npm start YOUR_API_KEY

# Run HTTP proxy server
npm run serve

Project Structure

mcp-server/
β”œβ”€β”€ src/
β”‚   └── tools.js          # Tool definitions
β”œβ”€β”€ mcp-wrapper.js        # MCP client (runs locally)
β”œβ”€β”€ server.js             # HTTP proxy server
β”œβ”€β”€ package.json
β”œβ”€β”€ Dockerfile
└── README.md

Testing

# Test MCP client locally
node mcp-wrapper.js YOUR_API_KEY

# Test HTTP proxy
curl http://localhost:3001/health
curl http://localhost:3001/tools

# Test specific tool
curl -X POST http://localhost:3001/proxy \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"tool":"facebook_get_page_details","arguments":{"link":"https://facebook.com/nike"}}'

πŸ“Š Pricing

PlanRequests/MonthPrice
Free200$0
Starter30,000$49
Pro120,000$179
EnterpriseUnlimitedCustom

View detailed pricing β†’


🀝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for details.

Quick Contribution Guide

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“– Documentation


πŸ’¬ Support


πŸ—ΊοΈ Roadmap

  • Facebook API support
  • MCP server implementation
  • HTTP proxy server
  • npm package published
  • Instagram support
  • TikTok support
  • YouTube support
  • Twitter/X support
  • Real-time webhooks
  • Advanced analytics
  • Python SDK
  • LangChain integration

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ™ Acknowledgments


🌟 Star History

Star History Chart


Made with ❀️ by the SocialAPIs Team

Website β€’ Twitter β€’ Discord