A Model Context Protocol (MCP) server for Typefully API integration, built with TypeScript and Node.js. This server allows AI assistants (like Claude) to create and manage Twitter drafts through Typefully.
- Create Drafts: Create single tweets or multi-tweet threads
- Schedule Posts: Schedule tweets for specific times
- Auto Features: Enable auto-retweet and auto-plug
- Retrieve Drafts: Get scheduled and published drafts
- Thread Support: Automatic thread creation using newline separators
- Node.js 18.x or higher
- A Typefully account with API access
- Typefully API key (get it from Settings > Integrations in Typefully)
Run directly without installation:
npx typefully-mcp-server
npm install -g typefully-mcp-server
typefully-mcp-server
- Clone the repository:
git clone https://github.com/yourusername/typefully-mcp-server.git
cd typefully-mcp-server
- Install dependencies:
npm install
- Build the project:
npm run build
Set your Typefully API key as an environment variable:
export TYPEFULLY_API_KEY="your_api_key_here"
Or create a .env
file:
TYPEFULLY_API_KEY=your_api_key_here
npm start
Or for development:
npm run dev
Add this server to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
Important: If you get a "spawn node ENOENT" error, Claude Desktop can't find the node
command. Use the absolute path to node instead:
First, find your node path: which node
{
"mcpServers": {
"typefully": {
"command": "/opt/homebrew/opt/nvm/versions/node/v22.16.0/bin/node",
"args": ["/path/to/your/project/dist/index.js"],
"env": {
"TYPEFULLY_API_KEY": "your_api_key_here"
}
}
}
}
{
"mcpServers": {
"typefully": {
"command": "npx",
"args": ["typefully-mcp-server"],
"env": {
"TYPEFULLY_API_KEY": "your_api_key_here"
}
}
}
}
Create a new draft on Typefully.
Parameters:
-
content
(required): The tweet content or thread -
threadify
(optional): Auto-split content into tweets -
schedule_date
(optional): ISO date string for scheduling -
auto_retweet_enabled
(optional): Enable auto-retweet -
auto_plug_enabled
(optional): Enable auto-plug
Example:
Create a tweet: "Hello world! This is my first tweet via MCP."
Thread Example:
Create a thread about AI:
"AI is transforming how we work and live.
\n\n\n\n
From automating routine tasks to enabling creative breakthroughs, AI tools are becoming essential.
\n\n\n\n
The key is learning to collaborate with AI rather than compete against it."
Retrieve your recently scheduled drafts.
Example:
Show me my scheduled tweets.
Retrieve your recently published drafts.
Example:
Show me my recent published tweets.
To create multi-tweet threads, separate individual tweets with four consecutive newlines (\n\n\n\n
) in your content.
-
npm run build
- Build the TypeScript project -
npm run dev
- Run in development mode with auto-reload -
npm run lint
- Run ESLint -
npm run typecheck
- Run TypeScript type checking
src/
├── index.ts # Entry point
├── server.ts # MCP server implementation
├── client.ts # Typefully API client
└── types.ts # Type definitions
This server integrates with the Typefully API v1. For more information about the API, visit the official documentation.
The server includes comprehensive error handling for:
- Invalid API keys
- Network failures
- Malformed requests
- API rate limiting
This error occurs when Claude Desktop can't find the node
command because GUI applications don't inherit the same PATH as your terminal.
Solution: Use the absolute path to node in your Claude Desktop configuration:
- Find your node path:
which node
- Use the full path in your config instead of just "node"
Example:
{
"mcpServers": {
"typefully": {
"command": "/opt/homebrew/opt/nvm/versions/node/v22.16.0/bin/node",
"args": ["/path/to/dist/index.js"],
"env": {
"TYPEFULLY_API_KEY": "your_api_key_here"
}
}
}
}
To publish this package so users can run npx typefully-mcp-server
:
- Update package.json with your details (author, repository URLs)
-
Check name availability:
npm view typefully-mcp-server
-
Login to NPM:
npm login
-
Build and publish:
npm run build && npm publish
See PUBLISHING.md for detailed instructions.
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests and linting
- Submit a pull request
MIT License - see LICENSE file for details.
- Inspired by the Python Typefully MCP Server
- Built with the Model Context Protocol SDK