Play Face to Face

Create instant multiplayer browser-game rooms friends join from a link. No account or app needed.

Should I use this

Quality & Safety

A
Description quality
90%
Schema completeness
75%
Naming quality
97%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'get_game_options' description lacks action verbin get_game_options

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~984Tokens (tool definitions)
~930 BTypical response size
Moderate attention impact (0.77% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "play-face-to-face": {
      "url": "https://mcp.playfacetoface.com/mcp"
    }
  }
}

Remote endpoints

https://mcp.playfacetoface.com/mcpstreamable-http

What it can do

Tool inventory

Tools (7)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_games

Returns multiplayer games currently available for browser room creation.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_game_options(game)

Returns server-supported rules and defaults for one game.

Input Schema

{
  "type": "object",
  "properties": {
    "game": {
      "type": "string",
      "minLength": 1,
      "description": "A game ID returned by list_games."
    }
  },
  "required": [
    "game"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢recommend_games(player_count, max_duration_minutes, preferences, complexity)

Returns currently available Play Face to Face games ranked against player count, available time, complexity, and preferences.

Input Schema

{
  "type": "object",
  "properties": {
    "player_count": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "max_duration_minutes": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "preferences": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "maxItems": 10
    },
    "complexity": {
      "type": "string",
      "enum": [
        "easy",
        "medium",
        "high"
      ]
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_game_room(game, player_count, options, idempotency_key)

Creates an ephemeral Play Face to Face multiplayer room that friends can join from browsers. The result includes a canonical guest link, a room-scoped host link, public room metadata, and an expiry time. The idempotency key associates retries with one creation intent.

Input Schema

{
  "type": "object",
  "properties": {
    "game": {
      "type": "string",
      "minLength": 1,
      "description": "A game ID returned by list_games."
    },
    "player_count": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "options": {
      "type": "object",
      "additionalProperties": {},
      "default": {}
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 8,
      "maxLength": 128
    }
  },
  "required": [
    "game",
    "player_count",
    "idempotency_key"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_room_status(room_id)

Returns the public waiting or expiry status of a Play Face to Face room.

Input Schema

{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128
    }
  },
  "required": [
    "room_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢render_game_room(room_id, game, game_name, status, player_count, ...)

Renders a Play Face to Face room result as an invitation card with the room code, QR invitation, guest link, and host action.

Input Schema

{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string"
    },
    "game": {
      "type": "string"
    },
    "game_name": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "player_count": {
      "type": "integer"
    },
    "joined_players": {
      "type": "integer"
    },
    "options": {
      "type": "object",
      "additionalProperties": {}
    },
    "join_url": {
      "type": "string",
      "format": "uri"
    },
    "host_url": {
      "type": "string",
      "format": "uri"
    },
    "qr_payload": {
      "type": "string",
      "format": "uri"
    },
    "expires_at": {
      "type": "string"
    }
  },
  "required": [
    "room_id",
    "game",
    "game_name",
    "status",
    "player_count",
    "joined_players",
    "options",
    "join_url",
    "host_url",
    "qr_payload",
    "expires_at"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪record_invite_copied(room_id)

Record that the room card copied a guest invitation. This tool is available only to the room card.

Input Schema

{
  "type": "object",
  "properties": {
    "room_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128
    }
  },
  "required": [
    "room_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded7 tools