tinder-mcp-node

mc422/tinder-mcp-node

3.2

If you are the rightful owner of tinder-mcp-node and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

A Model Context Protocol (MCP) server built with TypeScript that provides Tinder profile creation functionality for LLM models.

Tools
11
Resources
0
Prompts
0

Tinder MCP Server (TypeScript)

A Model Context Protocol (MCP) server built with TypeScript that provides Tinder profile creation functionality for LLM models.

Features

  • MCP Protocol Compliant: Implements the full MCP specification using @modelcontextprotocol/sdk
  • TypeScript: Built with TypeScript for type safety and better development experience
  • Session Management: Complete user profile session management with automatic cleanup
  • Background Cleanup: Automatic session cleanup every hour
  • Question Management: Loads questions from JSON file with fallback defaults
  • Profile Creation: Complete workflow for collecting user preferences

Installation

  1. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Run the server:
npm start

Development

For development with auto-reload:

npm run dev

Tool Functions

Profile Management

  • get_user_questions - Get complete question list for profile creation
  • get_question_by_id - Get specific question by ID
  • start_user_profile - Start new user profile session
  • store_answer - Store user's answer to a question
  • get_profile_data - Get current profile data and progress
  • create_final_profile - Create final profile from collected answers

Session Management

  • cleanup_session - Clean up specific session
  • cleanup_expired_sessions - Clean up all expired sessions
  • get_session_stats - Get session statistics
  • start_background_cleanup - Start background cleanup task
  • stop_background_cleanup - Stop background cleanup task

Configuration

Session Settings

  • Session Timeout: 1 hour (3600 seconds)
  • Max Sessions: 1000 concurrent sessions
  • Cleanup Interval: Every hour (3600 seconds)

Questions

Questions are loaded from questions.json file. If the file is missing or invalid, default questions are used.

File Structure

tinder-mcp-node/
├── src/
│   └── index.ts          # Main MCP server implementation
├── questions.json         # Question definitions
├── package.json          # Dependencies and scripts
├── tsconfig.json         # TypeScript configuration
└── README.md             # This file

Usage

The server communicates via JSON-RPC over stdin/stdout, following the MCP protocol.

Example MCP Client Usage

  1. Get Questions:
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_user_questions",
    "arguments": {}
  }
}
  1. Start Profile Session:
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "start_user_profile",
    "arguments": {
      "session_id": "user_123"
    }
  }
}
  1. Store Answer:
{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "store_answer",
    "arguments": {
      "session_id": "user_123",
      "question_id": "age_preference",
      "answer": "26-35"
    }
  }
}
  1. Create Final Profile:
{
  "jsonrpc": "2.0",
  "id": 4,
  "method": "tools/call",
  "params": {
    "name": "create_final_profile",
    "arguments": {
      "session_id": "user_123"
    }
  }
}

Dependencies

  • @modelcontextprotocol/sdk - Official MCP SDK for TypeScript
  • zod - Schema validation library
  • typescript - TypeScript compiler
  • ts-node - TypeScript execution for development

Error Handling

The server includes comprehensive error handling:

  • Missing or invalid questions.json file falls back to defaults
  • Session validation and error messages
  • Graceful shutdown handling
  • Background cleanup error recovery

Security Note

This server generates completely fake data for demonstration purposes. All user data is stored temporarily in memory and cleaned up automatically.