Skip to main content

Two Truths and a Twist: A trivia game for users of AI

Project description

TwoTruthsAndATwist

Two Truths and a Twist: The world's first Model Context Protocol (MCP) game

Game design document

Installation

Requirements

  • Python 3.13 or higher
  • MCP-compatible LLM (like Claude 3)

You can install the game directly from PyPI:

pip install ttaat

Or if you prefer using uv:

uv pip install ttaat

Usage

Initialize the Database

First, initialize the game database:

ttaat db upgrade

Start the Game Server

To start the MCP server:

ttaat serve

This will start the Two Truths and a Twist MCP server, which LLMs can connect to for playing the game.

View Game Statistics

To see game statistics:

ttaat db stats

Connecting to the Server

To connect an MCP-compatible LLM to the game server, you'll need to configure the MCP connection.

Installation with uv (Recommended)

We recommend using uv for installation, as it provides faster and more reliable package management:

  1. First, install uv if you don't have it already:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Create a configuration file (e.g., claude_desktop_config.json) with the following content:

{
  "mcpServers": {
    "TwoTruthsAndATwist": {
      "command": "uvx",
      "args": ["-U", "ttaat", "serve"]
    }
  }
}

Traditional Installation

If you prefer using the traditional approach after installing with pip:

{
  "mcpServers": {
    "TwoTruthsAndATwist": {
      "command": "ttaat",
      "args": ["serve"]
    }
  }
}

For Claude Desktop, place this file in:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Game Mechanics

Two Truths and a Twist is a trivia game where:

  1. The AI creates a round with three statements about a topic - two truths and one "twist" (a playful, false statement)
  2. Players try to identify which statement is the twist
  3. The AI reveals the answer with entertaining explanations

The game leverages the MCP protocol to provide a fun, interactive trivia experience where AI models both generate the content and facilitate gameplay.

Example Prompts

Once connected to an MCP-enabled LLM, you can start a game with prompts like:

Let's play Two Truths and a Twist! Create a round about space exploration.
Create a game round about ancient civilizations.

For Developers

This package implements an MCP server that provides custom game tools:

  • create_round: Creates a new game round with a question and three statements
  • submit_guess: Lets players submit their guess for which statement is the twist
  • reveal_twist: Reveals the answer with explanations for each statement
  • get_round: Retrieves details for a specific round
  • get_last_round: Gets details of the most recent round
  • get_stats: Retrieves game statistics

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ttaat-0.1.4.tar.gz (9.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ttaat-0.1.4-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file ttaat-0.1.4.tar.gz.

File metadata

  • Download URL: ttaat-0.1.4.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.6

File hashes

Hashes for ttaat-0.1.4.tar.gz
Algorithm Hash digest
SHA256 bd33289e38d425ca2b07a3f1d60481563ee600c5b8e09f7d8341971a60c98a79
MD5 6f1265c979f619a94d91cc678623288e
BLAKE2b-256 7266a92edb2c8233a9d9c8293cb9fa5837f102c35713112780209ff512a5ad31

See more details on using hashes here.

File details

Details for the file ttaat-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: ttaat-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.6

File hashes

Hashes for ttaat-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 90957e3fcc9a013126e6fb8c42a288381d924b71f6bc9a743343f1c9a13c0c54
MD5 7e2737a967a98c976b3ad9db0c0795a3
BLAKE2b-256 bbd1922aaa2762bdd79b60f33ee45a884dd4cb575ea1172a1871cac54098d35e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page