marcus 9bc6a54783 fix: get_categories locale filter and list-type filter (v0.4.9)
Bug 1: all 171 category locale variants were returned; now filtered by
locale parameter (default "de") → 13 German categories for shopping lists.

Bug 2: TODO lists returned 171 shopping categories because
sortingIndexByTaskList contains ALL list IDs regardless of type.
Fix: look up list's taskListType via taskgettasklists, then match against
category's taskListType. TODO lists (type=TODOS) return empty list since
all API categories are SHOPPING_LIST type.

sortingIndexByTaskList is explicitly documented as unreliable for type
filtering in both code comments and SPEC.md.

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

mcp-familywall

MCP server for Family Wall -- read and manage your family's circles, lists, and tasks directly from Claude.

Features (v0.4.9)

Read

  • get_circles -- list all family circles
  • get_members -- list members of a circle (or all circles)
  • get_lists -- list all task lists (optionally filtered by circle)
  • get_tasks -- list tasks in a specific list
  • get_categories -- list categories available for a list (locale-filtered, default: German)
  • get_activities -- list recent wall activities (author resolved to display name)

Write (with confirmation prompt)

  • create_task -- create a new task in a list
  • update_task -- update the text/description of an existing task
  • toggle_task -- mark a task complete or reopen it
  • delete_task -- permanently delete a task
  • like_post -- like or unlike a wall post/activity

Requirements

  • Python 3.12+
  • uv
  • A Family Wall account

Installation

uv tool install mcp-familywall

Setup

Run the interactive setup wizard once to store your credentials securely in the OS keyring:

mcp-familywall setup

This will:

  1. Prompt for your Family Wall email and password
  2. Verify the credentials against the API
  3. Store them in the OS keyring
  4. Print a Claude Desktop configuration snippet

Claude Desktop configuration

Add the printed snippet to your claude_desktop_config.json:

{
  "mcpServers": {
    "familywall": {
      "command": "uvx",
      "args": ["mcp-familywall", "serve"]
    }
  }
}

Verify

mcp-familywall check

Debug logging

Set FW_DEBUG=1 to log full request/response bodies to stderr (passwords are masked):

FW_DEBUG=1 mcp-familywall check

Credentials

Credentials are resolved in this order:

  1. Environment variables FW_EMAIL and FW_PASSWORD
  2. OS keyring (set by mcp-familywall setup)

License

MIT

S
Description
No description provided
Readme MIT 2.1 MiB
Languages
Python 100%