Skip to main content
Glama
rhdeck

Social Media Handle Checker

by rhdeck
README.md
# Social Media Handle Checker MCP Server

[![npm version](https://img.shields.io/npm/v/%40raydeck/social-media-handle-checker-mcp.svg)](https://www.npmjs.com/package/%40raydeck/social-media-handle-checker-mcp)

A comprehensive Model Context Protocol (MCP) server that checks username availability across all major social media platforms. Perfect for qualifying brand names for your media business.

## Features

- šŸŽÆ **Multi-Platform Support**: Check usernames across YouTube, TikTok, Threads, X (Twitter), and Instagram
- šŸ“Š **Detailed Account Information**: Get follower counts, verification status, descriptions, and more
- šŸš€ **Batch Checking**: Check availability across ALL platforms with a single command
- ⚔ **Individual Platform Tools**: Target specific platforms when needed
- šŸ” **Comprehensive Data**: Extract profile names, IDs, descriptions, and engagement metrics
- šŸ’¼ **Brand Research**: Perfect for media business name qualification and competitive analysis




## Available Tools

#### 1. `check_all_platforms` - šŸŽÆ **RECOMMENDED**

Check username availability across **all supported platforms** at once. This is the most powerful tool for comprehensive brand research.

**Parameters:**
- `username` (string): The username to check across all platforms (with or without @ prefix)

**Platforms checked:**
- YouTube
- TikTok
- Threads
- X (Twitter)
- Instagram

**Example Response:**
```
Multi-Platform Check Results for "@statechange"

āœ… AVAILABLE ON (2/5 platforms):
• Threads
• TikTok

āŒ TAKEN ON (3/5 platforms):
• YouTube - State Change (8.09K subscribers)
• X (Twitter) - State Change āœ“ Verified
• Instagram - statechange (1.2M followers)

āš ļø Limited availability - this username is taken on most platforms.
```

#### 2. Individual Platform Tools

- `check_youtube_handle`: Check YouTube channel availability
- `check_tiktok_handle`: Check TikTok username availability  
- `check_threads_handle`: Check Threads username availability
- `check_x_handle`: Check X (Twitter) username availability
- `check_instagram_handle`: Check Instagram username availability

**Parameters for all individual tools:**
- `username` (string): The username to check (with or without @ prefix)

**Individual Tool Examples:**
- `statechange` - Check if @statechange is available
- `@statechange1` - Check if @statechange1 is available  
- `pewdiepie` - Check if @pewdiepie is available (spoiler: it's taken!)

**Response Format:**
- If taken: Returns detailed account information (name, followers, verification, description)
- If available: Confirms the username is available for registration

## How It Works

The server makes HTTP requests to social media platform profile pages to determine username availability:

**Platform URLs:**
- YouTube: `https://www.youtube.com/@{username}`
- TikTok: `https://www.tiktok.com/@{username}`
- Threads: `https://www.threads.net/@{username}`
- X (Twitter): `https://x.com/{username}`
- Instagram: `https://www.instagram.com/{username}/`

**Detection Logic:**
- If the page returns 404 or shows "not found" messages, the username is available
- If the page returns 200 with valid profile data, the username is taken
- When taken, we extract profile information like display names, follower counts, verification status, and descriptions

**Multi-Platform Checking:**
- Runs checks in parallel for maximum speed
- Handles errors gracefully (if one platform fails, others continue)
- Provides comprehensive availability summary with visual indicators

## Configuration for MCP Clients

Add this server to your MCP client configuration.

This is an MCP server that runs over STDIO. You can use it with any MCP-compatible client.


Option A — npx (recommended, zero install):

```json
{
  "mcpServers": {
    "social-media-handle-checker": {
      "command": "npx",
      "args": ["-y", "@raydeck/social-media-handle-checker-mcp"],
      "env": {}
    }
  }
}
```

## Windsurf Assistant UI

Add this MCP server to Windsurf Assistant UI using STDIO:

- Open Settings → MCP Servers → Add Server
- Name: `social-media-handle-checker`
- Command: `npx`
- Args: `-y @raydeck/social-media-handle-checker-mcp`
- Env: leave empty (not required)

Equivalent JSON (for builds that support JSON import):

```json
{
  "mcpServers": {
    "social-media-handle-checker": {
      "command": "npx",
      "args": ["-y", "@raydeck/social-media-handle-checker-mcp"],
      "env": {}
    }
  }
}
```

## Install in Cursor

Click to add this MCP server to Cursor.

[![Add to Cursor (light)](https://cursor.com/deeplink/mcp-install-light.png)](cursor://anysphere.cursor-deeplink/mcp/install?name=social-media-handle-checker&config=eyJzb2NpYWwtbWVkaWEtaGFuZGxlLWNoZWNrZXIiOnsiY29tbWFuZCI6Im5weCIsImFyZ3MiOlsiLXkiLCJAcmF5ZGVjay9zb2NpYWwtbWVkaWEtaGFuZGxlLWNoZWNrZXItbWNwIl19fQ==)

### Quick Start Usage

```bash
# Check all platforms at once (recommended)
check_all_platforms("mybrandname")
check_youtube_handle("mybrandname")
check_tiktok_handle("mybrandname")
check_instagram_handle("mybrandname")
```

## Development

```bash
# Install dependencies
npm install

# Build the project
npm run build

# Watch mode for development
npm run dev

# Run the server
npm start
```

## Use Cases

Perfect for:
- šŸŽ¬ **Media Businesses**: Check brand name availability across all major platforms
- šŸ“ŗ **Content Creators**: Explore username options and find consistent handles
- šŸš€ **Startups**: Validate social media presence before launching
- šŸ” **Brand Consultants**: Conduct comprehensive competitive research
- šŸ’¼ **Marketing Agencies**: Qualify client brand names across platforms
- šŸŽØ **Influencers**: Find available usernames for brand expansion
- šŸ•°ļø **Domain Hunters**: Check social media availability alongside domain research

## Real-World Examples

```bash
# Startup looking for consistent branding
check_all_platforms("techstartup2024")
# Result: Available on 4/5 platforms - perfect for consistent branding!

# Content creator checking variations
check_all_platforms("creativestudio")
check_all_platforms("creativestudio1")
check_all_platforms("creativestudiohq")
# Find the best available option across platforms

# Brand consultant competitive research
check_all_platforms("competitor1")
check_all_platforms("competitor2")
# Analyze competitor presence and find opportunities
```

## Limitations

- **Web Scraping Dependency**: Relies on web scraping, so platform changes could affect functionality
- **Rate Limiting**: May apply for excessive requests (recommended: max 1 request per second)
- **Privacy Settings**: Some account information might not be available due to privacy settings
- **Platform Updates**: Major platform redesigns may require updates to extraction logic
- **Temporary Failures**: Individual platform checks may fail due to network issues (other platforms continue working)

## License

MIT

TDQS

A4.3/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a clearly distinct purpose targeting specific platforms (Instagram, Threads, TikTok, X, YouTube) or a comprehensive multi-platform check. There is no overlap or ambiguity between tools, as they are all uniquely scoped by platform.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with 'check_' prefix and platform-specific suffixes (e.g., check_instagram_handle, check_all_platforms). The naming is uniform, predictable, and easy to understand across the entire set.

Tool Count5/5

With 6 tools, the server is well-scoped for its purpose of checking social media handle availability. It includes individual platform checks and a comprehensive multi-platform tool, which is a reasonable and efficient number for this domain.

Completeness5/5

The tool set provides complete coverage for the domain of social media handle checking. It includes individual checks for all major platforms (YouTube, TikTok, Threads, X, Instagram) and a bulk check tool, leaving no gaps in functionality for this specific purpose.

Maintenance

ActivityInactive
ResponsivenessNo issues