# Familia (remote · mcp.family.asynq.org)

Private family planner for schedules, tasks, checklists, attachments, and availability.

- Trust score: 85/100 (high trust)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-21

## Components

- remote · `mcp.family.asynq.org`: 85/100 (this document), [markdown](https://verifymcp.io/servers/com-familiaplanner-familia/mcp.md), [page](https://verifymcp.io/servers/com-familiaplanner-familia/mcp)

## Channel facts

- Endpoint: `https://mcp.family.asynq.org/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `0.9.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-21.

- **Endpoint Security**: 91/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC is configured correctly; the domain's records validate against the full chain to the root.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 70/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 4820 tokens (~192/item across 25 items; 25 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 57/100
  - Stability observed for 17 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 99% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - All 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.
  - An AI judge read all 26 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Familia MCP server?

Familia is a hosted endpoint at https://mcp.family.asynq.org/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-familiaplanner-familia 'https://mcp.family.asynq.org/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "com-familiaplanner-familia": {
      "url": "https://mcp.family.asynq.org/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-familiaplanner-familia": {
      "type": "http",
      "url": "https://mcp.family.asynq.org/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-familiaplanner-familia]
url = "https://mcp.family.asynq.org/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-familiaplanner-familia": {
      "type": "remote",
      "url": "https://mcp.family.asynq.org/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-familiaplanner-familia --url 'https://mcp.family.asynq.org/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-familiaplanner-familia:
    url: "https://mcp.family.asynq.org/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "com-familiaplanner-familia": {
      "Transport": "http",
      "Url": "https://mcp.family.asynq.org/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-familiaplanner-familia -t streamable-http -u 'https://mcp.family.asynq.org/mcp'
```

### Other

```json
{
  "mcpServers": {
    "com-familiaplanner-familia": {
      "type": "http",
      "url": "https://mcp.family.asynq.org/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-21 (score 85, +1)

No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-18 (score 84, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “familia_batch_write” rewrote its description, which is the text the model reads
- [security] Tool “familia_create_list_task” rewrote its description, which is the text the model reads
- [security] Tool “familia_create_plan” rewrote its description, which is the text the model reads
- [security] Tool “familia_create_task” rewrote its description, which is the text the model reads
- [security] Tool “familia_delete_plan” rewrote its description, which is the text the model reads
- [security] Tool “familia_update_plan” rewrote its description, which is the text the model reads
- [security] Tool “familia_update_task” rewrote its description, which is the text the model reads
- [security] Tool “familia_create_list_task” is now declared destructive
- [security] Tool “familia_create_plan” is now declared destructive
- [security] Tool “familia_create_task” is now declared destructive
- [functional] Server version: 0.10.3 → 0.10.4

### 2026-09-16 (score 83, +1)

No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-14 (score 82, +1)

No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-12 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-09 (score 80, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-08 (score 79, 0)

- [functional] Server version: 0.9.0 → 0.10.3
- [cosmetic] “familia_get_day_overview” added an optional parameter “includeCompleted”
- [cosmetic] “familia_search_items” added an optional parameter “offset”

### 2026-09-07 (score 79, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (25)

### `familia_list_households` (~53 tokens)

List Familia households

Use this when the user asks which Familia households, families, or shared boards are available. Includes member names and user ids for assigning tasks or plans. Do not use for listing tasks, plans, or calendar events.

Output parameters:

- `configuration` (object)
- `currentUser`
- `households` (array)
- `selectedHouseholdId` (string|null)

### `familia_list_household_members` (~77 tokens)

List Familia household members

Use this when a task or plan must be assigned to, owned by, or shared with a named household member and their Familia user id is not already known.

Input parameters:

- `householdId` (string, required): Familia household id whose active and pending members should be listed.
- `timezone` (string): IANA timezone used by the backend request.

Output parameters:

- `count` (integer)
- `householdId` (string)
- `members` (array)

### `familia_get_day_overview` (~176 tokens)

Get day overview

Use this when the user asks for Familia items on a specific date or in a specific time window. Includes tasks, plans, and connected calendar events. Do not use for broad text search or multi-week availability.

Input parameters:

- `date` (string): Date as YYYY-MM-DD, ISO datetime, or omitted for today in the selected timezone.
- `endAt` (string): Optional ISO datetime for a narrower time window. Defaults to one hour after startAt.
- `householdId` (string): Optional Familia household id. Omit to aggregate across all accessible memberships.
- `includeCompleted` (boolean): Include completed tasks when looking through history.
- `startAt` (string): Optional ISO datetime for a narrower time window.
- `timezone` (string): IANA timezone, defaults to ASYNQ_TIMEZONE or the local runtime timezone.

Output parameters:

- `count` (integer)
- `counts` (object)
- `date` (string)
- `householdId` (string|null)
- `intent` (string)
- `items` (array)
- `links` (object)
- `overdueSummary`
- `securityNotice` (string)
- `timezone` (string)
- `window`

### `familia_get_today_schedule` (~99 tokens)

What am I doing today?

Use this when the user asks about today's agenda, today's tasks, what they are doing today, or what they should do today. Includes tasks, plans, Google/calendar events, and an overdue summary.

Input parameters:

- `householdId` (string): Optional Familia household id. Omit to use all accessible households.
- `timezone` (string): IANA timezone, e.g. Europe/Prague. Defaults to ASYNQ_TIMEZONE or runtime timezone.

Output parameters:

- `count` (integer)
- `counts` (object)
- `date` (string)
- `householdId` (string|null)
- `intent` (string)
- `items` (array)
- `links` (object)
- `overdueSummary`
- `securityNotice` (string)
- `timezone` (string)
- `window`

### `familia_get_tomorrow_schedule` (~102 tokens)

What am I doing tomorrow?

Use this when the user asks about tomorrow's agenda, tomorrow's tasks, tomorrow's plans, or what they should prepare for tomorrow. Includes tasks, plans, Google/calendar events, and an overdue summary.

Input parameters:

- `householdId` (string): Optional Familia household id. Omit to use all accessible households.
- `timezone` (string): IANA timezone, e.g. Europe/Prague. Defaults to ASYNQ_TIMEZONE or runtime timezone.

Output parameters:

- `count` (integer)
- `counts` (object)
- `date` (string)
- `householdId` (string|null)
- `intent` (string)
- `items` (array)
- `links` (object)
- `overdueSummary`
- `securityNotice` (string)
- `timezone` (string)
- `window`

### `familia_get_next_up` (~163 tokens)

Next up

Use this when the user asks what is next, what they should do now, their next task, or the next upcoming family item. Defaults to personal assigned items; use household scope only for family-wide wording. Never describe owner-only tasks as assigned to the current user.

Input parameters:

- `householdId` (string): Optional Familia household id. Omit to use all accessible households.
- `limit` (integer): Maximum number of upcoming items to return. Defaults to 5.
- `scope` (string): Use personal for “my”, “for me”, or “what should I do”; use household for family-wide next items.
- `timezone` (string): IANA timezone, e.g. Europe/Prague. Defaults to ASYNQ_TIMEZONE or runtime timezone.

Output parameters:

- `count` (integer)
- `currentUserId` (string|null)
- `householdId` (string|null)
- `items` (array)
- `now` (string)
- `otherHouseholdItems` (array)
- `overdueSummary` (object)
- `scope` (string)
- `timezone` (string)

### `familia_get_weekly_overview` (~133 tokens)

Weekly overview

Use this when the user asks about this week, the next week, upcoming days, family schedule for the week, or a multi-day planning overview.

Input parameters:

- `days` (integer): Number of days to include, from 1 to 14. Defaults to 7.
- `householdId` (string): Optional Familia household id. Omit to use all accessible households.
- `startDate` (string): YYYY-MM-DD or ISO datetime. Defaults to today.
- `timezone` (string): IANA timezone, e.g. Europe/Prague. Defaults to ASYNQ_TIMEZONE or runtime timezone.

Output parameters:

- `dayOverviews` (array)
- `days` (integer)
- `endDate` (string)
- `householdId` (string|null)
- `overdueSummary` (object)
- `startDate` (string)
- `timezone` (string)

### `familia_get_inbox` (~107 tokens)

Inbox / needs attention

Use this when the user asks for inbox, items needing attention, overdue tasks, past leftovers, unfinished responsibilities, or what is waiting on them.

Input parameters:

- `householdId` (string): Optional Familia household id. Omit to use all accessible households.
- `limit` (integer): Maximum number of attention items to return. Defaults to 20.
- `timezone` (string): IANA timezone, e.g. Europe/Prague. Defaults to ASYNQ_TIMEZONE or runtime timezone.

Output parameters:

- `categories`
- `count` (integer)
- `date` (string)
- `householdId` (string|null)
- `items` (array)
- `timezone` (string)

### `familia_list_past_due` (~114 tokens)

List past leftovers

Use this when the user asks for overdue items, past leftovers, missed tasks, unfinished items from previous days, or Czech “resty”. Calendar events are excluded.

Input parameters:

- `householdId` (string): Optional Familia household id. Omit to use all accessible households.
- `limit` (integer): Maximum number of past-due items to return. Defaults to 20.
- `timezone` (string): IANA timezone, e.g. Europe/Prague. Defaults to ASYNQ_TIMEZONE or runtime timezone.

Output parameters:

- `categories`
- `count` (integer)
- `date` (string)
- `householdId` (string|null)
- `items` (array)
- `timezone` (string)

### `familia_search_items` (~141 tokens)

Search family board items

Use this when the user asks to find Familia tasks, plans, or connected calendar events by title, notes, description, or location. Do not use for public web search or unrelated document search.

Input parameters:

- `householdId` (string): Optional Familia household id. Omit to search all accessible households.
- `limit` (integer): Maximum number of matches to return. Defaults to 12.
- `offset` (integer): Pagination offset, defaults to 0.
- `query` (string, required): Search text, e.g. "dentist", "school trip", or "groceries".
- `timezone` (string): IANA timezone used when formatting matched timeline items.

Output parameters:

- `count` (integer)
- `hasMore` (boolean)
- `matches` (array)
- `query` (string)
- `securityNotice` (string)
- `totalCount` (integer)

### `familia_create_task` (~493 tokens)

Create task

Use this when the user asks to create a responsibility-style Familia task, agreement, reminder, or chore. If the same task repeats across several days, weeks, or months, provide repeatRule and create one recurring task instead of multiple one-time tasks. Do not use for calendar-style events, trips, school activities, or holidays; use familia_create_plan instead. When the primary intent is a shopping list, packing list, or standalone checklist, use familia_create_list_task. Assigning to another household member queues a push notification; schedules can also queue reminders, and delivered notifications cannot be recalled.

Input parameters:

- `allDay` (boolean): Whether the due date is an all-day task.
- `assigneeUserId` (string): Optional Familia user id responsible for the task.
- `description` (string): Optional task details, notes, or context.
- `dueAt` (string): Accepts YYYY-MM-DD for all-day items or an RFC 3339 datetime. When using a datetime without an offset, provide timezone.
- `householdId` (string, required): Familia household id where the task should be created.
- `idempotencyKey` (string): Optional stable retry key. Reusing the same key for the same create operation returns the original result instead of creating a duplicate.
- `leadMinutes` (integer): Reminder lead time in minutes before dueAt. Defaults to 0.
- `ownerUserId` (string): Optional Familia user id that owns the task.
- `recurrenceEndDate` (string): Optional YYYY-MM-DD end date for a recurring schedule. Use this for bounded repeats such as "this week", "for three days", or "until Sunday".
- `repeatRule` (string): Optional RFC 5545 RRULE, e.g. FREQ=DAILY;INTERVAL=2 or FREQ=WEEKLY;BYDAY=MO,WE. Use this when the user says the same task or plan repeats across days, weeks, or months; create one recurring schedule…
- `timezone` (string): IANA timezone for dueAt, e.g. Europe/Prague.
- `title` (string, required): Short task title, e.g. "Pay school fee" or "Take bins out".
- `todoList` (object): Optional checklist/list to attach to the created task.

Output parameters:

- `agreementId` (string)
- `attachmentCreated` (boolean)
- `attachmentError` (string)
- `deeplink` (string)
- `schedule` (object)
- `taskId` (string)
- `todoListAttachment`

### `familia_create_list_task` (~488 tokens)

Create list task

Use this when the user asks to create a shopping list, packing list, checklist, or Familia task with list items. If the same list task repeats across several days, weeks, or months, provide repeatRule and create one recurring list task instead of multiple one-time tasks. Do not use when editing an existing list attachment. Assigning to another household member queues a push notification; schedules can also queue reminders, and delivered notifications cannot be recalled.

Input parameters:

- `allDay` (boolean): Whether the due date is an all-day task.
- `assigneeUserId` (string): Optional Familia user id responsible for the task.
- `description` (string): Optional task details, notes, or context.
- `dueAt` (string): Accepts YYYY-MM-DD for all-day items or an RFC 3339 datetime. When using a datetime without an offset, provide timezone.
- `householdId` (string, required): Familia household id where the list task should be created.
- `idempotencyKey` (string): Optional stable retry key. Reusing the same key for the same create operation returns the original result instead of creating a duplicate.
- `items` (array, required): Checklist items to attach to the new task. Supports nested subtasks.
- `leadMinutes` (integer): Reminder lead time in minutes before dueAt. Defaults to 0.
- `listTitle` (string): Optional title shown on the attached list. Defaults to the task title.
- `ownerUserId` (string): Optional Familia user id that owns the task.
- `recurrenceEndDate` (string): Optional YYYY-MM-DD end date for a recurring schedule. Use this for bounded repeats such as "this week", "for three days", or "until Sunday".
- `repeatRule` (string): Optional RFC 5545 RRULE, e.g. FREQ=DAILY;INTERVAL=2 or FREQ=WEEKLY;BYDAY=MO,WE. Use this when the user says the same task or plan repeats across days, weeks, or months; create one recurring schedule…
- `timezone` (string): IANA timezone for dueAt, e.g. Europe/Prague.
- `title` (string, required): Task title, e.g. “Groceries” or “Pack for trip”.

Output parameters:

- `agreementId` (string)
- `attachmentCreated` (boolean)
- `attachmentError` (string)
- `deeplink` (string)
- `schedule` (object)
- `taskId` (string)
- `todoListAttachment`

### `familia_list_attachments` (~105 tokens)

List attachments

Use this when the user asks what photos, checklists, or list attachments are attached to an existing Familia task or plan. Use before editing an existing list attachment when the attachment id is unknown.

Input parameters:

- `targetId` (string, required): Task id when targetType is task, or plan item id when targetType is plan.
- `targetType` (string, required): Type of Familia item that owns the attachments.
- `timezone` (string): IANA timezone used by the backend request.

Output parameters:

- `count` (integer)
- `items` (array)
- `targetId` (string)
- `targetType` (string)

### `familia_attach_image` (~230 tokens)

Attach image

Use this when the user asks to attach a JPEG, PNG, or WebP image to an existing Familia task or plan. Provide either dataUrl or base64Data plus mimeType. Do not use for non-image files.

Input parameters:

- `base64Data` (string): Raw base64 image bytes when dataUrl is not provided.
- `dataUrl` (string): Image data URL, e.g. data:image/png;base64,...
- `fileName` (string): Optional image filename shown in attachment metadata.
- `height` (integer): Optional image height in pixels.
- `mimeType` (string): Required when base64Data is provided without a dataUrl.
- `replaceExistingPhoto` (boolean): When true, replaces the latest existing photo attachment for the target.
- `targetId` (string, required): Task id when targetType is task, or plan item id when targetType is plan.
- `targetType` (string, required): Type of Familia item that should receive the image.
- `timezone` (string): IANA timezone used by the backend request.
- `width` (integer): Optional image width in pixels.

Output parameters:

- `attachment` (object)
- `attachmentId` (string)
- `link` (string)
- `targetId` (string)
- `targetType` (string)

### `familia_create_list_attachment` (~138 tokens)

Create list attachment

Use this when the user asks to add a new checklist, shopping list, packing list, or structured subtasks to an existing Familia task or plan. Do not use for editing an existing attachment.

Input parameters:

- `items` (array, required): Checklist/list items to attach. Supports nested subtasks.
- `targetId` (string, required): Task id when targetType is task, or plan item id when targetType is plan.
- `targetType` (string, required): Type of Familia item that should receive the list.
- `timezone` (string): IANA timezone used by the backend request.
- `title` (string): Optional title shown on the attached checklist/list.

Output parameters:

- `attachment` (object)
- `attachmentId` (string)
- `link` (string)
- `targetId` (string)
- `targetType` (string)

### `familia_update_list_attachment` (~113 tokens)

Update list attachment

Use this when the user asks to edit, add, remove, reorder, or mark items in an existing Familia checklist/list attachment. This replaces the existing list content; list attachments first if the attachment id is unknown.

Input parameters:

- `attachmentId` (string, required): Familia attachment id for the checklist/list to replace.
- `items` (array, required): Full replacement checklist/list content. Supports nested subtasks.
- `timezone` (string): IANA timezone used by the backend request.
- `title` (string): Optional replacement list title.

Output parameters:

- `attachment` (object)
- `attachmentId` (string)
- `link` (string)
- `targetId` (string)
- `targetType` (string)

### `familia_delete_attachment` (~70 tokens)

Delete attachment

Use this only when the user explicitly asks to delete or remove an existing Familia photo, checklist, or list attachment. Do not use for hiding or summarizing attachments.

Input parameters:

- `attachmentId` (string, required): Familia attachment id to delete.
- `timezone` (string): IANA timezone used by the backend request.

Output parameters:

- `attachmentId` (string)
- `deleted` (boolean)

### `familia_create_plan` (~591 tokens)

Create plan

Use this when the user asks to create a Familia plan item for an event, trip, holiday, school, activity, care coverage, travel, chore block, or other scheduled family plan. If the same plan repeats across several days, weeks, or months, provide rrule and create one recurring plan instead of multiple one-time plans. If the user gives multiple dated or timed actions that clearly belong to the plan, such as flights, leaving for the airport, pickup, packing, check-in, or return travel, put the main event/trip in the plan and create each dated action as a relatedTasks entry instead of stuffing them all into notes. Do not use for standalone responsibility-style task reminders; use familia_create_task or familia_batch_write instead. Related tasks assigned to another household member can queue push notifications; schedules can trigger reminders, and delivered notifications cannot be recalled.

Input parameters:

- `agreementIds` (array): Optional existing related task ids to link to the plan.
- `allDay` (boolean): Whether the plan is all-day.
- `endAt` (string): Optional ISO datetime.
- `householdId` (string, required): Familia household id where the plan should be created.
- `idempotencyKey`
- `kind` (string): Plan category. Use event when no more specific category fits.
- `location` (string): Optional location, venue, or address.
- `notes` (string): Optional plan notes or context. Do not use notes as the only place for separate dated actions; use relatedTasks for each distinct action with its own date or time.
- `participantUserIds` (array): Optional Familia user ids participating in the plan.
- `recurrenceEndDate` (string): Optional YYYY-MM-DD end date for a recurring schedule. Use this for bounded repeats such as "this week", "for three days", or "until Sunday".
- `relatedTasks` (array): Optional new tasks to create and link to this plan. Use one related task per distinct dated or timed action, such as leaving for an airport, outbound flight, return flight, pickup, packing, or check-…
- `requiresConfirmation` (boolean): Whether participants should confirm coverage or attendance.
- `rrule` (string): Optional RFC 5545 RRULE, e.g. FREQ=DAILY;INTERVAL=2 or FREQ=WEEKLY;BYDAY=MO,WE. Use this when the user says the same task or plan repeats across days, weeks, or months; create one recurring schedule…
- `startAt` (string): Optional ISO datetime.
- `timezone` (string): IANA timezone for startAt/endAt, e.g. Europe/Prague.
- `title` (string, required): Short plan title, e.g. "School concert" or "Long weekend trip".

Output parameters:

- `link` (string)
- `occurrenceIds` (array)
- `planItemId` (string)
- `relatedTaskIds` (array)
- `relatedTasks` (array)
- `schedule` (object)

### `familia_update_task` (~263 tokens)

Update task

Use this when the user asks to rename, reschedule, reassign, complete, cancel, or otherwise edit an existing Familia task. When status is done, this completes the next actionable occurrence so recurring tasks continue. Do not use to create a new task. Updates may notify household members and reschedule reminders; delivered notifications cannot be recalled.

Input parameters:

- `agreementId` (string, required): Familia task id to update. This field is named agreementId for legacy backend compatibility.
- `assigneeUserId` (string|null): Replacement assignee user id; null clears the assignee.
- `description`: Replacement task details; null clears the description.
- `dueAt` (string|null): ISO datetime, null to clear.
- `ownerUserId` (string|null): Replacement owner user id; null clears the owner.
- `repeatRule` (string|null): Replacement recurrence rule; null clears recurrence.
- `status` (string): Replacement task status. Use done to complete the next actionable occurrence, not to close a recurring task series.
- `timezone` (string): IANA timezone for dueAt, e.g. Europe/Prague.
- `title` (string): Replacement task title.
- `visibleToHousehold` (boolean): Whether the task is visible to the whole household.

Output parameters:

- `agreementId` (string)
- `link` (string)
- `taskId` (string)
- `updated` (boolean)

### `familia_cancel_task` (~88 tokens)

Cancel task

Use this only when the user explicitly asks to cancel, archive, or hide an existing Familia task without permanently deleting the record. Do not use to mark a task done; use familia_update_task instead.

Input parameters:

- `agreementId` (string, required): Familia task id to cancel. This field is named agreementId for legacy backend compatibility.
- `timezone` (string): IANA timezone used by the backend request.

Output parameters:

- `agreementId` (string)
- `deleted` (boolean)
- `deletionType` (string)
- `link` (string)
- `status` (string)
- `taskId` (string)

### `familia_delete_task` (~84 tokens)

Permanently delete task

Use this only when the user explicitly asks to permanently delete or hard delete an existing Familia task. This removes the record and related task schedules, occurrences, reminders, and attachments.

Input parameters:

- `agreementId` (string, required): Familia task id to permanently delete. This field is named agreementId for legacy backend compatibility.
- `timezone` (string): IANA timezone used by the backend request.

Output parameters:

- `agreementId` (string)
- `deleted` (boolean)
- `deletionType` (string)
- `link` (string)
- `status` (string)
- `taskId` (string)

### `familia_update_plan` (~253 tokens)

Update plan

Use this when the user asks to rename, reschedule, move, update location, link tasks, change participants, or otherwise edit an existing Familia plan. Do not use to create a new plan. Updates can synchronize copies already imported by invited guests and queue notifications; delivered notifications cannot be recalled.

Input parameters:

- `agreementIds` (array): Replacement related task ids.
- `allDay` (boolean): Whether the replacement schedule is all-day.
- `endAt` (string|null): ISO datetime for replacement end time; null clears end time.
- `kind` (string): Replacement plan category.
- `location`: Replacement location; null clears location.
- `notes`: Replacement plan notes; null clears notes.
- `participantUserIds` (array): Replacement participant user ids.
- `planItemId` (string, required): Familia plan item id to update.
- `requiresConfirmation` (boolean|null): Whether participants should confirm coverage or attendance; null clears the setting.
- `startAt` (string): ISO datetime. When provided, replaces the plan schedule with a one-time schedule.
- `timezone` (string): IANA timezone for startAt/endAt, e.g. Europe/Prague.
- `title` (string): Replacement plan title.

Output parameters:

- `link` (string)
- `planItemId` (string)
- `updated` (boolean)

### `familia_delete_plan` (~100 tokens)

Delete plan

Use this only when the user explicitly asks to delete, remove, or cancel an existing Familia plan item. Do not use to reschedule or complete a plan; use familia_update_plan instead. Cancelling a shared plan can update existing guest copies and queue cancellation notifications; delivered notifications cannot be recalled.

Input parameters:

- `planItemId` (string, required): Familia plan item id to delete or cancel.
- `timezone` (string): IANA timezone used by the backend request.

Output parameters:

- `deleted` (boolean)
- `link` (string)
- `planItemId` (string)

### `familia_batch_write` (~216 tokens)

Batch write Familia items

Use this when the user explicitly asks to create or modify multiple Familia tasks, list tasks, plans, or task attachments in one request, or when one prompt contains multiple standalone dated actions that should become separate tasks. When the same task or plan repeats, use repeatRule/rrule on one operation instead of creating duplicate one-time operations. For a main event/trip plus clearly related dated actions, prefer one create_plan operation with relatedTasks. Internally this runs bounded individual write operations one by one; it does not create a backend transaction. Operations can queue assignment notifications and reminders; delivered notifications cannot be recalled.

Input parameters:

- `continueOnError` (boolean): When true, continue after a failed operation and return partial-success results. Defaults to false.
- `idempotencyKey`
- `operations` (array, required): Ordered write operations to run. Later operations cannot reference IDs created by earlier operations in the same batch unless the user already provided those IDs.
- `timezone` (string): Default IANA timezone for operations that omit their own timezone.

Output parameters:

- `count` (integer)
- `failed` (integer)
- `results` (array)
- `succeeded` (integer)

### `familia_find_free_days` (~251 tokens)

Find consecutive free days

Use this when the user asks to find free days, open dates, vacation windows, long weekends, or consecutive days without hard Familia availability blockers. Do not use for listing tasks on one known date.

Input parameters:

- `blockingPolicy` (string): availability ignores soft reminders such as chores, checklists, birthdays/name days and ordinary tasks; strict treats any timeline item as busy.
- `busyEndHour` (integer): End hour of the day window to consider busy. Defaults to 24.
- `busyStartHour` (integer): Start hour of the day window to consider busy. Defaults to 0.
- `consecutiveDays` (integer): Required length of each free-day run. Defaults to 4.
- `horizonDays` (integer): How many days to scan forward from startDate. Defaults to 120.
- `householdId` (string): Optional Familia household id. Omit to use all accessible households.
- `limit` (integer): Maximum number of free-day runs to return. Defaults to 8.
- `startDate` (string): YYYY-MM-DD or ISO datetime. Defaults to today.
- `timezone` (string): IANA timezone used for day boundaries, e.g. Europe/Prague.

Output parameters:

- `blockingPolicy` (string)
- `caveat` (string)
- `consecutiveDays` (integer)
- `count` (integer)
- `horizonDays` (integer)
- `runs` (array)
- `securityNotice` (string)
- `startDate` (string)
- `timezone` (string)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-familiaplanner-familia/mcp#diagnostics

## Score history

- 2026-09-21: 85
- 2026-09-20: 84
- 2026-09-19: 84
- 2026-09-18: 84
- 2026-09-17: 83
- 2026-09-16: 83
- 2026-09-15: 82
- 2026-09-14: 82
- 2026-09-13: 81
- 2026-09-12: 81
- 2026-09-11: 80
- 2026-09-10: 80
- 2026-09-09: 80
- 2026-09-08: 79
- 2026-09-07: 79
- 2026-09-06: 78
- 2026-09-05: 78
- 2026-09-04: 77
- 2026-09-03: 36

## Common questions

### What is the Familia MCP server?

Familia is an MCP server listed in the public MCP registry as com.familiaplanner/familia. Private family planner for schedules, tasks, checklists, attachments, and availability. This page covers its hosted endpoint (https://mcp.family.asynq.org/mcp).

### Is the Familia MCP server safe to use?

Familia scores 85 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Familia MCP server expose?

Familia exposes 25 tools: familia_list_households, familia_list_household_members, familia_get_day_overview, familia_get_today_schedule, familia_get_tomorrow_schedule, and 20 more. Their descriptions and schemas cost roughly 4,648 tokens of context every time the server is loaded.

### Does the Familia MCP server require authentication?

Yes. Familia asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the Familia MCP server still maintained?

Familia is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://mcp.family.asynq.org/mcp
- Authorisation metadata: https://mcp.family.asynq.org/.well-known/oauth-protected-resource/mcp
- Repository: https://github.com/asynq-org/asynq-family
- Website: https://familiaplanner.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-familiaplanner-familia/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-familiaplanner-familia/mcp.json
- HTML version of this page: https://verifymcp.io/servers/com-familiaplanner-familia/mcp
