TwoTruthsAndATwist
Two Truths and a Twist: The world's first Model Context Protocol (MCP) game
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:
-
First, install
uvif you don't have it already:curl -LsSf https://astral.sh/uv/install.sh | sh
-
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:
- The AI creates a round with three statements about a topic - two truths and one "twist" (a playful, false statement)
- Players try to identify which statement is the twist
- 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 statementssubmit_guess: Lets players submit their guess for which statement is the twistreveal_twist: Reveals the answer with explanations for each statementget_round: Retrieves details for a specific roundget_last_round: Gets details of the most recent roundget_stats: Retrieves game statistics
Metadata
Release files for ttaat 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ttaat-0.1.6.tar.gz | 10.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ttaat-0.1.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 20.9 kB
Release files / ttaat-0.1.6.tar.gz
| Download URL | ttaat-0.1.6.tar.gz |
|---|---|
| Size | 10.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d0022c3fa4b2eb6b65f4729130f1bb5912f2b5e9c4006156d51c25c389448dec
|
|
BLAKE2b-256 checksum How to use checksums |
b3c19c590473c2bf1c996ba4669818ea8270784f2237f225cba225959f8fe34c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.6
|
Release files / ttaat-0.1.6-py3-none-any.whl
| Download URL | ttaat-0.1.6-py3-none-any.whl |
|---|---|
| Size | 10.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cec9d9cb3eafbcf5bc771a24a03b92fcd29c923d163da52c0ad26b1bac942208
|
|
BLAKE2b-256 checksum How to use checksums |
36609d315ecdaa8b8b7db5bfc565afb676c576e565da69721b711777f04d07ba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.6
|