Commit Graph

21 Commits

Author SHA1 Message Date
marcus 70b1f73079 feat: add get_members tool, refactor get_circles via _famlistfamily helper (v0.4.7)
famlistfamily response already contains members[] on each circle object.
get_members(circle_id=None) extracts id, name, email, role, right, color,
avatar, circle_id and circle_name. get_circles refactored to use the new
_famlistfamily() helper, eliminating duplicated auth/call/logout logic.
SPEC.md updated with full famlistfamily response structure.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 16:22:59 +02:00
marcus 4cd0bdc499 fix: use moodStarShortcut+moodMap for liked state, warn on silent fail (v0.4.6)
FW_DEBUG=1 investigation revealed:
- wallmood can silently fail (200 OK, frozen modifDate, no state change) due to
  self-like restriction, unsupported post type (FAMILY_CREATED), or rate limit
- Response contains two complementary like indicators: moodStarShortcut (primary)
  and moodMap (secondary) — both must be checked
- liked: false with like=True now surfaces a warning instead of silently
  returning a misleading result
- SPEC.md documents silent-fail scenarios and dual indicator pattern

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 16:12:05 +02:00
marcus da5be55070 fix: unlike not supported — wallmood is idempotent SET, not toggle (v0.4.5)
Extensive FW_DEBUG=1 testing revealed:
- wallmood with moodType=STAR is an idempotent SET operation, not a toggle
- Tested: all moodType variations, moodStarShortcut param, 9 alternative
  endpoints — none could remove a like
- Service Worker in the web app prevents intercepting the real unlike payload
- like=False now returns a clear error; like=True continues to work correctly
- SPEC.md updated with full investigation notes and ruled-out approaches

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 16:02:08 +02:00
marcus a3274b349a fix: use moodType=STAR for wallmood, parse moodMap from response (v0.4.4)
FW_DEBUG=1 verification revealed:
- moodType "LIKE" was silently mapped to "STAR" server-side; use "STAR" directly
- Response a00.r.r contains full wall object with moodMap showing actual like state
- liked status now derived from moodMap rather than echoing the input bool
- SPEC.md updated with fully verified wallmood endpoint details

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 15:48:54 +02:00
marcus 9534658472 fix: correct wallmood parameter name to wall_message_id (v0.4.3)
API error message confirmed the expected parameter is 'wall_message_id',
not 'wallId'. SPEC.md updated to reflect verified finding.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 15:37:53 +02:00
marcus c412c24c86 feat: add like_post tool via wallmood endpoint (v0.4.2)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 15:32:12 +02:00
marcus 332b01718e fix: correct get_activities field mapping, document wallget response (v0.3.2) 2026-04-15 14:47:59 +02:00
marcus e3b4e613ad fix: reduce tools/list payload – remove return annotations and shorten docstrings (v0.3.1) 2026-04-15 14:26:56 +02:00
marcus 8276647fcf feat: add get_activities tool via wallget endpoint (v0.3.0) 2026-04-15 14:15:20 +02:00
marcus f680633b59 feat: add SYS-CAT-TODOS translation (v0.2.5) 2026-04-15 14:09:14 +02:00
marcus c954a245ca feat: use taskgettasklists endpoint for get_lists (v0.2.4) 2026-04-15 14:05:58 +02:00
marcus eedf9c2ce5 fix: set list id correctly in _extract_lists (v0.2.3) 2026-04-15 13:51:12 +02:00
marcus 8cf707e3bd fix: extract list IDs from sortingIndexByTaskList, remove tasklistsync (v0.2.2) 2026-04-15 13:38:52 +02:00
marcus 8262c8440c fix: add tasklistsync, fix get_circles response, update SPEC (v0.2.1) 2026-04-15 13:29:01 +02:00
marcus 119a0b577e feat: Gruppe 2 – MCP Tools get_circles, get_lists, get_tasks (v0.2.0) 2026-04-15 13:22:48 +02:00
marcus 7372648894 fix: login response parsing a00.r.r (v0.1.5) 2026-04-15 13:15:08 +02:00
marcus a680fb2e51 fix: remove type parameter from login request (v0.1.4) 2026-04-15 13:12:30 +02:00
marcus dc608e8c09 fix: login type parameter EMAIL (v0.1.3) 2026-04-15 13:03:37 +02:00
marcus e24f9a8b7e fix: login error logging + E-Mail label (v0.1.2) 2026-04-15 12:40:36 +02:00
marcus 6c3c3c9b48 fix: add PyYAML dependency (v0.1.1) 2026-04-15 12:36:47 +02:00
marcus 38da31b0cb feat: Gruppe 1 – Projektgerüst, Auth, CLI (v0.1.0)
- pyproject.toml: hatchling build, mcp-familywall entry-point, deps
- src/mcp_familywall/__init__.py: version 0.1.0
- src/mcp_familywall/config.py: YAML config loader (schema_version: 1)
- src/mcp_familywall/auth.py: keyring credential resolution (FW_EMAIL/FW_PASSWORD → keyring)
- src/mcp_familywall/fw_client.py: httpx client, login/logout/call, FW_DEBUG logging
- src/mcp_familywall/cli.py: click CLI with setup / check / serve commands
- .gitignore, README.md, CLAUDE.md, SPEC.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 12:18:37 +02:00