dc21416a61
Implements `delete_circle(circle_id)` using the verified `adminwipefamily` endpoint. Protects the primary circle via `isFirstFamily` check. Probe circles family/23447370 and family/23447378 cleaned up during testing. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
101 lines
3.5 KiB
Markdown
101 lines
3.5 KiB
Markdown
# mcp-familywall
|
|
|
|
MCP server for [Family Wall](https://www.familywall.com) -- read and manage your family's circles, lists, tasks, and recipes directly from Claude.
|
|
|
|
## Features (v0.7.2)
|
|
|
|
### Read
|
|
|
|
- `get_circles` -- list all family circles
|
|
- `get_members` -- list members of a circle (or all circles)
|
|
- `get_lists` -- list all task lists (includes `emoji`, `color`, `circle_id`; `null` when unset); optional `scope` parameter filters by circle metaId or circle name
|
|
- `get_tasks` -- list tasks in a specific list (includes `category_id`, `due_date`, `assignee_ids`)
|
|
- `get_categories` -- list categories for a list (locale-filtered; custom categories always included; `custom` flag marks user-created ones)
|
|
- `get_activities` -- list recent wall activities (author resolved to display name)
|
|
- `get_recipes` -- list all family recipes (compact summary: id, name, prep/cook time, serves)
|
|
- `get_recipe` -- get a single recipe in full detail (ingredients, instructions, ingredients_parsed, etc.)
|
|
|
|
### Write (with confirmation prompt)
|
|
|
|
- `create_task` -- create a new task in a list (supports `category_id`, `due_date`, `assignee_ids`); use `"Äpfel (5x)"` format for quantities
|
|
- `update_task` -- update text, description, category, due date, assignees, or move to a different list; supports `clear_due_date=True` to remove a due date
|
|
- `toggle_task` -- mark a task complete or reopen it
|
|
- `delete_task` -- permanently delete a task
|
|
- `create_list` -- create a new task list (SHOPPING_LIST or TODOS; optional `emoji`, `color`, and `circle_id` to target a specific circle)
|
|
- `delete_list` -- permanently delete a list and all its tasks (system lists are protected)
|
|
- `create_category` -- create a custom category for a shopping list (with optional icon)
|
|
- `delete_category` -- delete a custom category (system categories are protected)
|
|
- `like_post` -- like a wall post/activity
|
|
- `create_recipe` -- create a new recipe (name, description, ingredients, instructions, prep/cook time, serves, url); use `\n` to separate ingredient lines
|
|
- `update_recipe` -- update any field of an existing recipe (partial update — omitted fields unchanged)
|
|
- `delete_recipe` -- permanently delete a recipe (only own recipes)
|
|
- `create_circle` -- create a new Family Wall circle (group)
|
|
- `delete_circle` -- permanently delete a circle and all its content (primary circle is protected)
|
|
- `add_member_to_circle` -- invite a person to a circle by e-mail (for new Family Wall users only; existing accounts require in-app invitation)
|
|
|
|
## Requirements
|
|
|
|
- Python 3.12+
|
|
- [uv](https://docs.astral.sh/uv/)
|
|
- A Family Wall account
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
uv tool install mcp-familywall
|
|
```
|
|
|
|
## Setup
|
|
|
|
Run the interactive setup wizard once to store your credentials securely in the OS keyring:
|
|
|
|
```bash
|
|
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`:
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"familywall": {
|
|
"command": "uvx",
|
|
"args": ["mcp-familywall", "serve"]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Verify
|
|
|
|
```bash
|
|
mcp-familywall check
|
|
```
|
|
|
|
## Debug logging
|
|
|
|
Set `FW_DEBUG=1` to log full request/response bodies to stderr (passwords are masked):
|
|
|
|
```bash
|
|
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
|