npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

typefully-mcp-server

v1.0.0

Published

MCP server for Typefully API integration

Downloads

6

Readme

Typefully MCP Server

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.

Features

  • 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

Prerequisites

  • Node.js 18.x or higher
  • A Typefully account with API access
  • Typefully API key (get it from Settings > Integrations in Typefully)

Installation

Option 1: NPX (Recommended)

Run directly without installation:

npx typefully-mcp-server

Option 2: Global Installation

npm install -g typefully-mcp-server
typefully-mcp-server

Option 3: From Source

  1. Clone the repository:
git clone https://github.com/yourusername/typefully-mcp-server.git
cd typefully-mcp-server
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Configuration

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

Usage

Running the Server

npm start

Or for development:

npm run dev

Claude Desktop Integration

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

Option 1: Using Absolute Node Path (Recommended for Local Development):

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"
      }
    }
  }
}

Option 2: Using NPX (After Publishing to NPM):

{
  "mcpServers": {
    "typefully": {
      "command": "npx",
      "args": ["typefully-mcp-server"],
      "env": {
        "TYPEFULLY_API_KEY": "your_api_key_here"
      }
    }
  }
}

Available Tools

create_draft

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."

get_scheduled_drafts

Retrieve your recently scheduled drafts.

Example:

Show me my scheduled tweets.

get_published_drafts

Retrieve your recently published drafts.

Example:

Show me my recent published tweets.

Thread Creation

To create multi-tweet threads, separate individual tweets with four consecutive newlines (\n\n\n\n) in your content.

Development

Scripts

  • 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

Project Structure

src/
├── index.ts        # Entry point
├── server.ts       # MCP server implementation
├── client.ts       # Typefully API client
└── types.ts        # Type definitions

API Reference

This server integrates with the Typefully API v1. For more information about the API, visit the official documentation.

Error Handling

The server includes comprehensive error handling for:

  • Invalid API keys
  • Network failures
  • Malformed requests
  • API rate limiting

Common Issues

"spawn node ENOENT" Error in Claude Desktop

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:

  1. Find your node path: which node
  2. 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"
      }
    }
  }
}

Publishing to NPM

To publish this package so users can run npx typefully-mcp-server:

  1. Update package.json with your details (author, repository URLs)
  2. Check name availability: npm view typefully-mcp-server
  3. Login to NPM: npm login
  4. Build and publish: npm run build && npm publish

See PUBLISHING.md for detailed instructions.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests and linting
  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Acknowledgments