kicktipp-agent
MCP server for kicktipp.com that enables AI assistants to view match data, leaderboards, and place bets through natural language.
README
kicktipp-agent
A CLI and MCP server for kicktipp.com — the German football prediction game. View leaderboards, schedules, league tables, and place bets from the terminal or let an AI agent do it for you.
Why?
Kicktipp has no public API. Everything goes through the website. This project gives you two ways to skip the browser:
-
CLI — Check scores, standings, and place bets in seconds from the terminal. No clicking through pages, no waiting for ads to load. Useful for quick lookups during matchday or scripting your predictions.
-
MCP Server — Connect an AI assistant (Claude Desktop, Claude Code, or any MCP client) to your kicktipp account. Ask it to show today's matches, check who's leading your league, or place bets for you — all through natural conversation. The assistant sees your community's data but never your password.
Headless Chromium with session caching keeps things fast. After the first login, subsequent commands reuse the saved session and skip the login flow entirely.
Installation
npm install
npx playwright install chromium
npm run build
npm link
This gives you two commands:
kicktipp— the CLIkicktipp-mcp— the MCP server
CLI
First-time setup
On first run, the CLI prompts for your kicktipp.com email and password. Credentials are stored locally in ~/.config/kicktipp-agent/config.ini (chmod 600).
$ kicktipp set-community
No credentials found. Please enter your kicktipp.com login:
Email: you@example.com
Password: ********
Credentials saved to ~/.config/kicktipp-agent/config.ini
Available communities:
[1] testspiel
[2] bundesliga-tipps
Select community (1-2): 1
Saved 'testspiel' as default community.
Optionally set your player name so the leaderboard highlights your position:
$ kicktipp set-player
Commands
| Command | Description |
|---|---|
communities |
List all communities you belong to |
set-community |
Select a default community |
players |
List players in the saved community |
set-player |
Select which player you are |
leaderboard |
Show the matchday leaderboard |
overview |
Show the season overview |
schedule |
Show the match schedule |
table |
Show the league table |
bets |
Show your bets for a matchday |
bet |
Place bets (interactive, by fixture, or bonus) |
today |
Show today's matches and which still need bets |
rules |
Show the game rules |
guide |
Print a detailed usage guide (useful for LLM agents) |
logout |
Remove stored credentials and session |
Placing bets
# Interactive — prompts for each match
kicktipp bet
# By fixture name (get exact names from `kicktipp bets`)
kicktipp bet "FC Bayern München vs Borussia Dortmund=2:1"
kicktipp bet "RB Leipzig vs Bayer 04 Leverkusen=0:0" --matchday 5
# Bonus questions — interactive
kicktipp bet --bonus
# Bonus questions — by name
kicktipp bet --bonus "Who will win the league?=FC Bayern München"
Options
--matchday <n>— Target a specific matchday (1-34)--bonus— Bonus question rankings (withleaderboard) or bonus bets (withbet)--view <value>— Overview type (withoverview)--home/--away— Home/away filter (withtable)
MCP Server
The MCP server exposes the same functionality as the CLI through the Model Context Protocol, allowing AI assistants like Claude to interact with kicktipp.com on your behalf.
Available tools
| Tool | Description |
|---|---|
get_status |
Check if credentials and community are configured |
get_today_matches |
Today's matches with bet status |
get_bets |
Matches and current bets for a matchday |
get_schedule |
Match schedule with results |
get_leaderboard |
Player rankings for a matchday |
get_overview |
Season overview across all matchdays |
get_table |
League table (actual football standings) |
get_rules |
Game rules and scoring system |
get_communities |
List communities the user belongs to |
get_players |
List players in the community |
get_bonus_questions |
Bonus questions with options |
set_community |
Set the active community |
set_player |
Set which player you are |
place_bets |
Place match bets by fixture name |
place_bonus_bets |
Place bonus question answers |
Setup with Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"kicktipp": {
"command": "kicktipp-mcp",
"env": {
"KICKTIPP_EMAIL": "you@example.com",
"KICKTIPP_PASSWORD": "yourpassword"
}
}
}
}
The env block passes credentials directly to the server process — Claude never sees them. If you prefer, you can omit env and set credentials via the CLI instead (kicktipp set-community).
After restarting Claude Desktop, the agent will have access to all kicktipp tools. It will call get_status first to check configuration, then prompt you to set a community if needed.
Setup with Claude Code
Add to .mcp.json in your home directory or project:
{
"mcpServers": {
"kicktipp": {
"command": "kicktipp-mcp",
"env": {
"KICKTIPP_EMAIL": "you@example.com",
"KICKTIPP_PASSWORD": "yourpassword"
}
}
}
}
Credentials
The MCP server accepts credentials in two ways (checked in this order):
- Environment variables —
KICKTIPP_EMAILandKICKTIPP_PASSWORDpassed via theenvblock in your MCP client config - Config file —
~/.config/kicktipp-agent/config.ini, shared with the CLI
If neither is found, the server returns an error guiding the agent to inform you.
Development
npm test # run tests
npm run build # compile TypeScript
Credits
Originally forked from schwalle/kicktipp-betbot by Stefan. The project has since been fully rewritten in TypeScript with a new CLI interface, MCP server, and Cheerio-based parsing.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.