
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
late-social-mcp
Advanced tools
Comprehensive social media manager MCP server via Late API — smart scheduling, realignment, analytics, and engagement tools
Comprehensive social media management MCP server via Late API
late-social-mcp is a standalone Model Context Protocol (MCP) server for managing social media through the Late API. It uses direct HTTP calls to the Late API — no SDK dependency — for maximum control and minimal footprint. It is not a Copilot extension or plugin — it's a general-purpose MCP server that works with any MCP-compatible client:
It exposes 47 MCP tools across 13 categories — covering posts, scheduling, smart realignment, analytics, engagement (messages, comments, reviews), media, webhooks, and more.
npm install -g late-social-mcp
export LATE_API_KEY=your_api_key_here
Get your API key from getlate.dev.
Add to your .mcp.json:
{
"servers": {
"late-social-mcp": {
"command": "npx",
"args": ["-y", "late-social-mcp"]
}
}
}
Add to your claude_desktop_config.json:
{
"mcpServers": {
"late-social-mcp": {
"command": "npx",
"args": ["-y", "late-social-mcp"],
"env": {
"LATE_API_KEY": "your_api_key_here"
}
}
}
}
47 tools organized into 13 categories:
| # | Category | Tools | Tool Names |
|---|---|---|---|
| 1 | Setup & Config | 3 | setup_late, late_status, import_schedule_config |
| 2 | Posts | 8 | list_posts, get_post, create_post, update_post, delete_post, retry_post, unpublish_post, bulk_upload_posts |
| 3 | Scheduling | 4 | schedule_post, find_next_slot, view_calendar, view_schedule_config |
| 4 | Smart Features | 7 | realign_schedule, prioritized_realign, check_realign_status, smart_reschedule, get_best_times, get_posting_frequency, get_content_decay |
| 5 | Queue | 5 | list_queues, create_queue, update_queue, delete_queue, preview_queue_slots |
| 6 | Analytics | 5 | get_post_analytics, get_daily_metrics, get_follower_stats, get_post_timeline, get_youtube_daily_views |
| 7 | Messages | 5 | list_conversations, get_conversation, list_messages, send_message, edit_message |
| 8 | Comments | 7 | list_commented_posts, get_post_comments, reply_to_comment, delete_comment, hide_comment, like_comment, send_private_reply |
| 9 | Reviews | 3 | list_reviews, reply_to_review, delete_review_reply |
| 10 | Accounts | 4 | list_accounts, check_account_health, list_profiles, get_usage_stats |
| 11 | Media & Validation | 5 | upload_media, validate_media, validate_post, validate_post_length, check_instagram_hashtags |
| 12 | Webhooks | 4 | list_webhooks, create_webhook, update_webhook, test_webhook |
| 13 | Logs | 3 | get_post_logs, list_publishing_logs, list_connection_logs |
Create a schedule.json in your working directory to define your posting schedule. The server uses this for slot-based scheduling, realignment, and conflict detection.
{
"timezone": "America/Chicago",
"platforms": {
"x": {
"slots": [
{ "days": ["mon", "wed", "fri"], "time": "09:00", "label": "Morning post" },
{ "days": ["tue", "thu"], "time": "14:00", "label": "Afternoon post" }
],
"avoidDays": ["sat", "sun"],
"byClipType": {
"short": {
"slots": [{ "days": ["mon", "tue", "wed", "thu", "fri"], "time": "12:00", "label": "Noon short" }],
"avoidDays": []
}
}
}
}
}
Fields:
timezone — IANA timezone for all slot times (e.g. America/Chicago, UTC)platforms — Per-platform schedule configuration, keyed by platform name (x, instagram, youtube, etc.)
slots — Array of time slots with days (day abbreviations), time (HH:MM 24h), and optional labelavoidDays — Days to skip when scheduling (e.g. weekends)byClipType — Override slots for specific content types (e.g. short, reel)Import an existing config into the server with import_schedule_config, or view the active config with view_schedule_config.
realign_schedule compacts your posting schedule by filling gaps left by deleted or failed posts. It shifts pending posts forward to maintain a consistent cadence without changing their relative order.
prioritized_realign extends realignment with keyword-based priority scoring and saturation probability. Posts matching priority keywords are scheduled into prime slots first. Saturation probability controls how aggressively lower-priority posts fill remaining slots.
smart_reschedule detects scheduling conflicts (multiple posts in the same slot, overlapping windows) and automatically resolves them by redistributing posts to nearby available slots.
get_best_times analyzes your historical engagement data to recommend optimal posting times per platform.
get_posting_frequency determines the ideal posting cadence for each platform based on engagement trends and audience behavior.
get_content_decay measures how quickly engagement drops off after publishing, helping you understand the effective lifespan of your content per platform.
| Config | Source | Description |
|---|---|---|
LATE_API_KEY | Environment variable | Required. Your Late API key |
./late-social-mcp.config.json | Auto-generated file | Persistent server config (account selections, preferences) |
./schedule.json | User-created file | Schedule configuration (optional) |
All configuration files are CWD-relative — the server reads and writes config in whichever directory you run it from.
git clone https://github.com/htekdev/late-social-mcp.git
cd late-social-mcp
npm install
npm run build
npm test
| Command | Description |
|---|---|
npm run build | Bundle with esbuild to bin/mcp-server.cjs |
npm test | Run tests with vitest |
npm run test:coverage | Run tests with coverage report |
npm run test:watch | Run tests in watch mode |
npm run typecheck | Type-check with TypeScript (no emit) |
src/
├── server.ts # MCP server entry point
├── client/ # Direct HTTP client for Late API
├── config/ # Configuration management
├── types/ # Shared TypeScript types
├── smart/ # Smart feature logic (realignment, scheduling, optimization)
│ ├── realignment.ts
│ ├── prioritizedRealignment.ts
│ ├── scheduler.ts
│ └── optimizer.ts
└── tools/ # MCP tool definitions
├── setup.ts
├── posts.ts
├── scheduling.ts
├── queue.ts
├── analytics.ts
├── media.ts
├── validate.ts
├── accounts.ts
├── webhooks.ts
├── logs.ts
├── smart/ # Smart feature tool wrappers
│ ├── realign.ts
│ ├── reschedule.ts
│ └── optimize.ts
└── engagement/ # Engagement tool wrappers
├── messages.ts
├── comments.ts
└── reviews.ts
MIT © Hector Flores
FAQs

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.