npm package: @mlllm/threads-mcp
Description: Enhanced Threads (Meta) MCP server with 50+ methods for Claude AI integration.
Author: Serge Kostenchuk
Latest version: 1.0.0

# mlllm-threads-mcp

Enhanced Threads (Meta) MCP server with 50+ methods for comprehensive Claude AI integration.

This project is a TypeScript-based Node MCP (Model Context Protocol) Server that creates and manages posts on Threads (a social media platform by Meta).

The goal of this project is to have the LLM generate complete social media posts—ready to publish on Threads with images, analytics, conversation management, and advanced features. The MCP server handles visual content retrieval, post orchestration, engagement tracking, and comprehensive Threads API integration.

## Project Structure

```
mlllm-threads-mcp
├── src
│   ├── index.ts                # Basic entry point
│   ├── enhanced-index.ts        # Enhanced entry point with 50+ methods
│   ├── stock-photos.ts         # Unsplash http client
│   ├── threads-api.ts           # Threads API HTTP Client
│   ├── threads-server.ts        # Basic Threads MCP Server
│   ├── enhanced-threads-server.ts  # Enhanced server with analytics & management
│   └── types.ts                # Type definitions
├── package.json              # NPM package configuration
├── tsconfig.json             # TypeScript configuration
└── README.md                 # Project documentation
```

## Quick Start
### Prerequisites 
- Obtain the API Key from Unsplash
- Create an app on Meta Developer platform https://developers.facebook.com/apps 
- Choose ___Access The Threads API___ as use case 
- On main dashboard, click ___Access The Threads API___ > ___Settings___ > Enter ___Redirect Callback URLS___ 
- Obtain these keys : **Threads App ID** , **Threads App secret** , **Redirect Callback URL** and save them in the env section of **threads-dev** in the config file :

```
**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`  
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
```

1. Clone the repository:
```bash
git clone https://github.com/sergekostenchuk/mlllm-threads-mcp
cd mlllm-threads-mcp
```

2. Install dependencies:
```bash
npm install
```

3. Build:
```bash
npm run build
```

4. Run:
```bash
npm start
```

5. Create a Meta Developer account and get your keys 

6. Add this configuration to your Claude Desktop config file:

**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`  
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`

```json
{
  "threads-dev": {
      "command": "node",
      "args": [
        "/Users/path/to/project/build/index.js"
      ],
      "env": {
        "HOST": "https://graph.threads.net",
        "APP_ID": "threads_app_id",
        "APP_SECRET": "threads_app_secret",
        "REDIRECT_URI": "public_url",
        "INITIAL_USER_ID": "threads_user_id",
        "UNSPLASH_ACCESS_KEY":"access_key",
        "PORT": "3000",
      }
    },
}
```

3. Restart Claude Desktop

That's it, the tool is officially connected to Claude Desktop! You still need to go through an authorization process to obtain the long lived token but dw, Claude will walk you through it. 

- `post_thread`: Post a new thread and fetch stock photos from Unsplash

## Example Usage

Try asking Claude:
- "Can you post a thread about cats with photos"

## Development

If you want to contribute or run from source:

1. Clone the repository:
```bash
git clone https://github.com/sergekostenchuk/mlllm-threads-mcp
cd mlllm-threads-mcp
```

2. Install dependencies:
```bash
npm install
```

3. Build:
```bash
npm run build
```

4. Run:
```bash
npm start
```

## License

This project is licensed under the MIT License. See the LICENSE file for more details.