feat(lists): get_lists() without scope returns all circles (v0.8.2)

Implement v0.8.2: When get_lists() is called without a scope parameter,
it now fetches lists from ALL circles instead of only the primary circle.

Implementation:
- Login once, call famlistfamily to get all circle IDs
- For each circle, call taskgettasklists(scope=<circle_id>)
- Merge results and return all lists with circle_id field

All tests passed: test_multi circle creation, list creation in secondary
circle, get_lists() without scope returns lists from both circles.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-04-17 06:40:09 +02:00
parent 74a8b83fde
commit b15af18606
5 changed files with 41 additions and 33 deletions
+5 -1
View File
@@ -379,12 +379,16 @@ POST https://api.familywall.com/api/taskgettasklists
|---|---|---|
| `scope` | nein | Kreis-metaId z.B. `"family/23447378"` (ohne scope → primärer Kreis) |
**Scope-Verhalten:**
**Scope-Verhalten (Server):**
- Ohne `scope`: Nur Listen des primären Kreises werden zurückgegeben
- Mit `scope=family/XXXX`: Nur Listen des angegebenen Kreises
- Es gibt keinen servereitigen Filter für mehrere Kreise gleichzeitig
- Andere Parameter (`familyId`, `circleId`, etc.) werden ignoriert
**Scope-Verhalten (MCP-Tool get_lists, v0.8.2+):**
- Ohne `scope`: Der MCP-Server ruft für **jeden Kreis** separate `taskgettasklists(scope=<circle_id>)`-Calls ab und merged die Ergebnisse
- Mit `scope=family/XXXX` oder `scope="Kreis Name"`: Nur dieser Kreis (wie bisher)
**Response-Struktur:**
```
a00.r.r[] → Liste aller Task-Listen des Kreises