A Model Context Protocol (MCP) server that provides integration with Fatebook, a prediction tracking platform. This server allows AI assistants like Claude to create, manage, and track predictions directly through MCP.
- Create Questions: Make predictions with forecasts (0-100% probability)
- List Questions: View your predictions with filtering options
- Get Question Details: Retrieve comprehensive information about specific questions
- Add Forecasts: Update your predicted probabilities on existing questions
- Add Comments: Add commentary to track your reasoning
- Resolve Questions: Mark questions as resolved (YES/NO/AMBIGUOUS)
- Edit Questions: Update question titles, resolve dates, and notes
- Delete Questions: Remove questions you no longer need
- Count Forecasts: Track your forecasting activity
This MCP server has been tested on Mac OS X 14.5 with:
- Claude Code (CLI)
- Claude Desktop
- MCP Inspector
As far as I know, it doesn't violate any MCP protocol requirements but given that MCP is an evolving protocol, certain features or MCP clients may not be fully supported. If you encounter issues with other MCP implementations, please report them as GitHub issues.
- Python 3.13 or higher
- uv (recommended) or pip
- A Fatebook account and API key
Install the package directly from PyPI:
pip install fatebook-mcpOr using uv:
uv add fatebook-mcpFor development or the latest features:
- Clone the repository:
git clone https://github.com/an1lam/fatebook-mcp.git
cd fatebook-mcp- Install dependencies using uv:
uv syncThe easiest way to test the server after installation is with uvx:
# Run directly from PyPI (no installation needed)
uvx fatebook-mcp
# Or run from local directory during development
uvx --from . fatebook-mcpThe server will start and wait for MCP client connections via stdio. Use Ctrl+C to stop it.
Usage with Claude Desktop and Claude Code
Add one of the following configurations to your Claude Desktop configuration file:
Location: ~/Library/Application Support/Claude/claude_desktop_config.json
Location: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"fatebook": {
"command": "uvx",
"args": ["fatebook-mcp"],
"env": {
"FATEBOOK_API_KEY": "your-api-key-here"
}
}
}
}Note: If Claude Desktop can't find uvx, use the full path instead:
{
"mcpServers": {
"fatebook": {
"command": "/Users/yourusername/.local/bin/uvx",
"args": ["fatebook-mcp"],
"env": {
"FATEBOOK_API_KEY": "your-api-key-here"
}
}
}
}Find your uvx path with: which uvx
{
"mcpServers": {
"fatebook": {
"command": "uv",
"args": [
"--directory",
"/path/to/fatebook-mcp",
"run",
"python",
"-m",
"fatebook_mcp"
],
"env": {
"FATEBOOK_API_KEY": "your-api-key-here"
}
}
}
}Replace /path/to/fatebook-mcp with the actual path to where you cloned this repository.
For Claude Code, you can add this server in several ways:
# Add the Fatebook MCP server using uvx
claude mcp add fatebook --env FATEBOOK_API_KEY=your-api-key-here -- uvx fatebook-mcp
# Verify it was added successfully
claude mcp listIf you already have this configured in Claude Desktop, you can import those settings:
claude mcp add-from-claude-desktopCreate a .mcp.json file in your project:
Using PyPI package:
{
"mcpServers": {
"fatebook": {
"command": "uvx",
"args": ["fatebook-mcp"],
"env": {
"FATEBOOK_API_KEY": "your-api-key-here"
}
}
}
}If uvx is not found, use the full path (find with which uvx):
{
"mcpServers": {
"fatebook": {
"command": "/Users/yourusername/.local/bin/uvx",
"args": ["fatebook-mcp"],
"env": {
"FATEBOOK_API_KEY": "your-api-key-here"
}
}
}
}Using development/source installation:
{
"mcpServers": {
"fatebook": {
"command": "uv",
"args": ["--directory", "/path/to/fatebook-mcp", "run", "python", "-m", "fatebook_mcp"],
"env": {
"FATEBOOK_API_KEY": "your-api-key-here"
}
}
}
}Replace /path/to/fatebook-mcp with the actual path to where you cloned this repository.
Beyond the above setup that's needed even just to use the MCP server, running the MCP server as standalone and running its tests require fetching your API key and exporting it in your environment.
You can do this either by exporting it directly:
export FATEBOOK_API_KEY="your-api-key-here"Or create a .env file:
FATEBOOK_API_KEY=your-api-key-here
Run the integration tests to verify your setup:
uv run pytest test_client.pyThis will test all available endpoints and confirm the server is working correctly.
Note: These tests will only succeed if you have the right API key for the test user. If you're developing such that you need to run these tests, for now email me (the author).
Using uvx (recommended):
uvx --from . fatebook-mcpUsing uv run with module:
uv run python -m fatebook_mcpThe server will start and wait for MCP client connections.
This MCP server has been tested with:
- Claude Code (CLI)
- Claude Desktop
- MCP Inspector
As MCP is an evolving protocol, certain features or MCP clients may not be fully supported. If you encounter issues with other MCP implementations, please report them as GitHub issues.
If Claude Desktop shows "command not found" errors for uvx:
-
Find your uvx path:
which uvx
-
Use the full path in your configuration:
"command": "/Users/yourusername/.local/bin/uvx"
-
Common uvx locations:
- macOS:
/Users/yourusername/.local/bin/uvx - Linux:
/home/yourusername/.local/bin/uvx
- macOS:
- Ensure your API key is valid and active
- Check that the API key is properly set in environment or config
- Try providing the API key directly in the request
- Verify the server path in your Claude Desktop config is correct
- Check that Python 3.13+ is installed and accessible
- Ensure uv dependencies are properly installed with
uv sync
- Dates should be in YYYY-MM-DD format
- Forecast values must be between 0.0 and 1.0
- Question IDs are provided when creating questions
Creating and tracking a prediction:

For more details about the Fatebook API, see:
Contributions are welcome! Please feel free to submit issues or pull requests.
For issues with:
- This MCP server: Open an issue on GitHub
- Fatebook API: Contact Fatebook support
- MCP/Claude Desktop: See MCP documentation

