Stravacz MCP Server
Provides tools to interact with the strava.cz meal ordering system, enabling users to view menus, check and place orders, and manage their canteen account.
README
Stravacz MCP Server
MCP (Model Context Protocol) server pro strava.cz - systém a webová/mobilní aplikace pro objednávání stravy v českých jídelnách, například školních. Strávníci mohou prostřednictvím systému kontrolovat jídelníčky, přihlašovat a odhlašovat jídlo, sledovat historii objednávek, platby a přeplatky.
<div align="center">
</div>
⚠️ Upozornění
!! K používání tohoto projektu je potřeba trošku umět s dockerem/pythonem a vědět, jak funguje připojení MCP k danému LLM klientu !!
💡 Poznámka: Tento projekt není nijak spojen se systémem strava.cz. Jedná se o neoficiální MCP server vytvořený komunitou na základě projektů strava-cz-python a strava-cli.
⚡ Rychlý start
🐳 Docker (doporučeno)
# CLI (stdio) verze
docker run --rm -i ghcr.io/mirecekd/stravacz-mcp:latest-cli \
--user USERNAME --password PASSWORD --canteen_number CANTEEN_NUMBER
# HTTP streaming verze (port 8809)
docker run -p 8809:8809 ghcr.io/mirecekd/stravacz-mcp:latest-http \
--user USERNAME --password PASSWORD --canteen_number CANTEEN_NUMBER
📦 uvx (PyPI)
# Instalace z PyPI a spuštění
uvx --from stravacz-mcp stravacz-mcp-server \
--user USERNAME --password PASSWORD --canteen_number CANTEEN_NUMBER
🔧 Dostupné transport metody
Stravacz MCP Server podporuje tři transport metody podle vzoru bakalari-mcp:
| Transport | Port | Docker Image | Popis |
|---|---|---|---|
| CLI (stdio) | - | ghcr.io/mirecekd/stravacz-mcp:latest-cli |
Přímá MCP komunikace přes stdin/stdout |
| HTTP Streaming | 8809 | ghcr.io/mirecekd/stravacz-mcp:latest-http |
Nativní HTTP streaming transport |
| HTTP Proxy | 8805 | ghcr.io/mirecekd/stravacz-mcp:latest-proxy |
HTTP server pomocí mcp-proxy |
🛠️ MCP Tools
Server poskytuje následující nástroje pro práci se strava.cz:
get_menu(datum=None)
Získání jídelníčku pro zadané datum (YYYY-MM-DD) nebo dnešní datum.
is_ordered(meal_id)
Kontrola, jestli je jídlo s daným ID objednané.
order_meals(*meal_ids)
Objednání více jídel podle jejich ID.
print_menu(include_soup=True, include_empty=False)
Formátované vypsání menu s možností filtrace.
get_user_info()
Získání informací o přihlášeném uživateli a jídelně.
logout()
Odhlášení ze strava.cz systému.
📋 MCP konfigurace
Claude Desktop (CLI verze)
{
"mcpServers": {
"stravacz-mcp": {
"command": "docker",
"args": [
"run", "--rm", "-i", "ghcr.io/mirecekd/stravacz-mcp:latest-cli",
"--user", "YOUR_USER",
"--password", "YOUR_PASSWORD",
"--canteen_number", "YOUR_CANTEEN_NUMBER"
],
"transportType": "stdio"
}
}
}
Claude Desktop (HTTP streaming)
{
"mcpServers": {
"stravacz-mcp": {
"url": "http://localhost:8809",
"transportType": "http"
}
}
}
🏗️ Vývoj a build
Lokální vývoj
# Klonování repositáře
git clone https://github.com/mirecekd/stravacz-mcp.git
cd stravacz-mcp
# Instalace závislostí
pip install -e .
# Spuštění ze zdrojových kódů
python src/stravacz_mcp_server/server.py --user USER --password PASS --canteen_number NUM
Docker build
# Build všech verzí
./build-all.sh
# Nebo jednotlivě
./build-cli.sh # CLI verze
./build-http.sh # HTTP streaming verze
./build-proxy.sh # HTTP proxy verze
Python packaging
# Build Python balíčku
python -m build
# Lokální instalace z wheel
pip install dist/stravacz_mcp-1.0.0-py3-none-any.whl
🔍 Technické detaily
Závislosti
- strava-cz >= 1.0.0 - Hlavní knihovna pro strava.cz API
- fastmcp >= 0.9.0 - MCP framework
- aiohttp >= 3.8.0 - Async HTTP klient
Async wrapper
Server používá async wrapper pro původně synchronní strava-cz knihovnu pomocí asyncio.to_thread(), což umožňuje neblokující operace.
Multi-arch Docker images
Všechny Docker images podporují:
- linux/amd64 (Intel/AMD x64)
- linux/arm64 (Apple Silicon, ARM64)
⚠️ Důležité upozornění
Tento projekt používa neoficiální web scraping API pro strava.cz. Server může přestat fungovat při změnách na webu strava.cz. Používejte zodpovědně a neautomatizujte masivní množství požadavků.
📄 Licence
MIT License - viz LICENSE soubor.
🤝 Přispívání
Contributions jsou vítané! Prosím vytvořte issue nebo pull request.
🔗 Související projekty
- strava-cz-python - Původní Python knihovna pro strava.cz
- bakalari-mcp - Další můj MCP server - pro Bakaláři API
- strava-cli - CLI nástroj pro strava.cz
Vytvořeno s ❤️ pro českou AI/MCP komunitu
Support
If this tool is useful to you, you can support development:
<div align="center">
</div>
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.

