trello-sumar
# Trello sumár — vlastný MCP server
Domáca úloha z kurzu **Vibe Coding**.
Vlastný MCP server v Pythone, ktorý dá AI asistentovi (Claude Code) schopnosť
čítať Trello nástenky a robiť z nich zrozumiteľné zhrnutia. Namiesto klikania
po Trelle napíšem do terminálu vetu v bežnej reči a dostanem sumár postavený
na živých dátach.

## Čo to vie
| Čo napíšem | Ktorý nástroj sa zavolá | Čo dostanem |
|---|---|---|
| „Urob mi sumár projektu X" | `sumar_projektu` | Vyplnený template — osem sekcií, vždy rovnaká štruktúra |
| „Čo je hotové a čo ešte treba?" | `stav_projektu` | Karty rozdelené na hotové / prebieha / čaká |
| „Aké sú tam priority?" | `priority` | Zoradené podľa štítkov a termínov, plus poradie práce |
| „Čo sa dialo za posledný týždeň?" | `aktivita` | Posunuté karty, nové karty, komentáre |
| „Aké mám v Trelle nástenky?" | `zoznam_boardov` | Zoznam nástenok aj s odkazmi |
Nástroj si vyberá AI sama podľa popisov v kóde. Žiadne príkazy sa netreba učiť.
## Ako je to poskladané
```
trello-mcp/
├─ src/trello_mcp/
│ ├─ trello_client.py komunikácia s Trello REST API (jediné miesto)
│ └─ server.py MCP server — päť nástrojov a logika sumáru
├─ priprav_board.py jednorazový skript, ktorý postaví cvičný board
├─ overenie.py skúška nasucho, bez MCP a bez AI
├─ SUMAR_TEMPLATE.md pevná štruktúra sumáru
├─ .mcp.json prihláška servera do Claude Code
└─ .env API kľúč a token (do gitu nejde)
```
Sumár sa počíta v Pythone, nie v hlave AI. Percentá, počty a triedenie kariet
robí kód, asistent len ukáže hotový text. Vďaka tomu čísla vždy sedia
a template ostáva pri každom spustení rovnaký.
## Spustenie
Potrebné: Python 3.14, [uv](https://docs.astral.sh/uv/), Trello účet.
```bash
git clone <adresa-tohto-repozitara>
cd trello-mcp
uv sync
```
Vytvor súbor `.env` podľa vzoru `.env.example`:
```
TRELLO_API_KEY=...
TRELLO_TOKEN=...
```
Kľúč získaš na https://trello.com/power-ups/admin (vytvor Power-Up →
Generate a new API key). Token potom cez adresu:
```
https://trello.com/1/authorize?expiration=never&scope=read,write&name=Trello%20sumar%20MCP&response_type=token&key=TVOJ_API_KLUC
```
Overenie, že komunikácia funguje:
```bash
uv run python overenie.py "názov nástenky"
```
Zapojenie do Claude Code — stačí spustiť `claude` v tejto zložke.
Súbor `.mcp.json` sa načíta sám, potvrdíš dôveru serveru a v `/mcp`
uvidíš `trello-sumar · connected · 5 tools`.
## Bezpečnosť
Kľúč a token sa posielajú v hlavičke `Authorization`, nie v adrese, takže
sa nedostanú do logov ani do histórie prehliadača. Logovanie knižnice `httpx`
je stlmené z rovnakého dôvodu. Súbor `.env` je v `.gitignore`.
Server Trello iba číta. Nič nemaže ani neupravuje — jediná výnimka je
`priprav_board.py`, ktorý sa spúšťa ručne a raz.
## Čo by sa dalo dorobiť
- zápis do Trella (zakladanie kariet priamo z konverzácie)
- porovnanie dvoch sumárov v čase, aby bolo vidieť posun
- export sumáru do súboru alebo do e-mailu
TDQS
Scored across 5 tools
Each tool targets a distinct reporting question: boards, full summary, short status, priorities, and recent activity. sumar_projektu and stav_projektu are the closest pair, but their descriptions clearly separate a complete templated summary from a shorter done/doing/todo status.
Names are all lowercase and domain-relevant, but the pattern is not uniform: zoznam_boardov, sumar_projektu and stav_projektu are two-word noun phrases, while priority and aktivita are single nouns. The naming is readable and predictable enough, but it is not a consistent verb_noun scheme.
Five tools is a well-scoped set for a Trello summary/status server; each covers a distinct aspect and none feel redundant. It is neither too thin nor overloaded.
The core reporting domain is well covered: board discovery, full summary, status, priorities, and recent activity. The only minor gap is lack of a raw card/list detail tool, but agents can usually get the needed information through the existing summary and priority tools.