@writio/mcp-server
v0.1.3
Published
MCP server for Writio — AI-native LinkedIn content creation, scheduling, and analytics for Claude Desktop, Cursor, and other MCP clients
Downloads
30
Maintainers
Readme
Writio MCP Server
AI-native LinkedIn content creation, scheduling, and analytics — powered by Model Context Protocol.
Connect Writio to Claude Desktop, Cursor, Windsurf, or any MCP-compatible AI client to manage your entire LinkedIn workflow through natural language.
What You Can Do
- Draft posts — "Write a LinkedIn post about remote work trends"
- Generate hooks — "Give me 5 hooks for a post about AI in marketing"
- Generate hashtags — "What hashtags should I use for my startup funding post?"
- Build carousels — "Create a carousel about 5 leadership lessons" (Pro)
- Enhance posts — "Make this post more conversational and add a CTA"
- Get AI feedback — "Analyze my draft and tell me how to improve it"
- Schedule posts — "Schedule my latest draft for the next available slot"
- Publish instantly — "Post this to LinkedIn right now"
- Check analytics — "How did my posts perform this week?"
- Manage company pages — "List my organizations" / "Post this as my company page"
- Get inspirations — "Show me trending content ideas for my niche"
Quick Start
1. Create a Writio account
Sign up for free at writio.ai and connect your LinkedIn account.
2. Get your API token
Go to Writio → Settings → API Access to generate a token.
3. Configure in Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"writio": {
"command": "npx",
"args": ["-y", "@writio/mcp-server"],
"env": {
"WRITIO_API_TOKEN": "your-token-here"
}
}
}
}4. Configure in Cursor
Add to your .cursor/mcp.json:
{
"mcpServers": {
"writio": {
"command": "npx",
"args": ["-y", "@writio/mcp-server"],
"env": {
"WRITIO_API_TOKEN": "your-token-here"
}
}
}
}5. Configure in Windsurf / Other Clients
Any MCP-compatible client can connect using:
{
"command": "npx",
"args": ["-y", "@writio/mcp-server"],
"env": {
"WRITIO_API_TOKEN": "your-token-here"
}
}Available Tools (23)
Content Creation
| Tool | Description |
|------|-------------|
| create_draft | Create a new LinkedIn post draft (supports personal & company pages) |
| generate_hooks | Generate 5 attention-grabbing hooks for a topic |
| generate_hashtags | Generate 20-30 relevant hashtags optimized for reach |
| generate_carousel | Generate a complete carousel structure (Pro) |
| enhance_post | Remix/rewrite a post with tone, style, and formatting improvements |
| get_post_feedback | Get AI feedback on hook quality, clarity, hashtags, and more |
Post Management
| Tool | Description |
|------|-------------|
| list_posts | List posts filtered by status (draft/scheduled/published) |
| get_post | Get full details of a specific post |
Scheduling & Queue
| Tool | Description |
|------|-------------|
| schedule_post | Schedule a post for the next available time slot |
| post_now | Immediately publish a post to LinkedIn |
| list_queue | List upcoming scheduled posts in the queue |
| get_next_slot | Get the next available posting time |
| get_schedule | View your weekly posting schedule |
| retry_failed_post | Retry a failed scheduled post |
Analytics
| Tool | Description |
|------|-------------|
| get_dashboard | Overview of posts, usage, and LinkedIn connection status |
| get_analytics | Detailed engagement metrics (impressions, likes, comments, reshares) and best posting times |
| get_followers | Current LinkedIn follower count |
| get_usage | Account tier and usage limits |
Company Page Posting
| Tool | Description |
|------|-------------|
| list_organizations | List LinkedIn company pages you can post as |
| get_org_analytics | Get analytics for a company page (share stats, follower counts, top posts) |
Inspirations
| Tool | Description |
|------|-------------|
| get_inspirations | Curated news-based LinkedIn post ideas tailored to your topics |
| use_inspiration_as_draft | Convert an inspiration into a draft post |
Example Workflows
Morning content routine:
"Check my analytics, generate 3 hooks about AI productivity, pick the best one, write a full post, and schedule it for next available slot"
Company page management:
"List my organizations, then create a product announcement draft and schedule it as my company page"
Content repurposing:
"Get my top performing post from this week, remix it with a different angle, and save as draft"
Environment Variables
| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| WRITIO_API_TOKEN | Yes | — | API token from Writio Settings |
| WRITIO_API_URL | No | https://app.writio.ai | Base URL for the Writio API |
Requirements
- Node.js 18+
- A Writio account (free tier available)
- LinkedIn account connected in Writio
Architecture
@writio/mcp-server
├── src/
│ ├── index.ts # MCP server — tool definitions and handlers
│ └── api-client.ts # Typed Writio REST API client
├── package.json
├── tsconfig.json
└── README.mdThe server uses stdio transport (standard for MCP) and authenticates against Writio's REST API using a Bearer token. All tools map directly to existing Writio API endpoints.
Links
- Website: writio.ai
- App: app.writio.ai
- Support: app.writio.ai/settings/feedback
License
MIT
