Skip to content

LovedOne Family MCP

app.lovedone/family-inboxlovedone.appstreamable-httpv0.4.0Scanned

Authenticated MCP for one family household: loved ones, members, and Family Inbox plaintext.

12 tools: 2 do something that can't be undone, 2 change things and 8 only read.

Tools: 0 delete, 2 irreversible, 2 write, 8 read.
  • Reads private data · 5
  • Reads text others write · 5
  • Can send data out · 2
  • No findings

Sign-in required, OAuth metadata published. Remote posture

Anlyon alternative

4 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

12 tools

Can't be undone 2Claude Code: ask
  • invite_family_memberInvites a sibling or other family member to this household by email, with role coordinator or viewer.Can send data outNo findings

    Why it is in this group

    • The name "invite_family_member" says "invite": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • outboundThe name "invite_family_member" says "invite": it sends or publishes something to other people.
    Description, as the server wrote it
    Invites a sibling or other family member to this household by email, with role coordinator or viewer. Sends the same LovedOne invite email as the web app. Owner or coordinator only — viewers are rejected. This is a write.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • reply_to_inbox_messageSends a plaintext reply to a Family Inbox message using the same from address (family-inbox@m.lovedone.app) and reply-to (the loved one's @lovedone.app inbox) as the LovedOne web a…Can send data outNo findings

    Why it is in this group

    • The name "reply_to_inbox_message" says "reply": a word for sending, and what is sent cannot be taken back.

    What it can reach

    • outboundThe name "reply_to_inbox_message" says "reply": it sends or publishes something to other people.
    Description, as the server wrote it
    Sends a plaintext reply to a Family Inbox message using the same from address (family-inbox@m.lovedone.app) and reply-to (the loved one's @lovedone.app inbox) as the LovedOne web app. Owner or coordinator only — viewers are rejected. This is a write. The body may contain health-related content.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
Changes things 2Claude Code: ask
  • create_provider_codeMints a short-lived, single-use provider/vendor link code for one loved one in this household.No findings

    Why it is in this group

    • The name "create_provider_code" says "create": a word for a change.
    Description, as the server wrote it
    Mints a short-lived, single-use provider/vendor link code for one loved one in this household. Hand the code to a LovedOne Soft agency so they can link that person as a client. Owner or coordinator only — viewers are rejected. This is a write.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • onboard_loved_oneSets up a loved one on LovedOne from conversation: creates the caller's family workspace on first use (or adds to it), allocates their private @lovedone.app care-inbox address, and…No findings

    Why it is in this group

    • The description's first verb is "set": a word for a change.
    Description, as the server wrote it
    Sets up a loved one on LovedOne from conversation: creates the caller's family workspace on first use (or adds to it), allocates their private @lovedone.app care-inbox address, and records the caller's authorization attestation. Idempotent — calling again for the same person returns the existing record. Before calling, confirm attestAuthorized with the user in plain words. Do NOT ask for date of birth, medications, or SSN during setup; dateOfBirth is accepted only if volunteered. The loved one's own email is optional and is never emailed automatically. This is a write.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 8Show 8 read-only tools
  • get_inbox_messageReturns one Family Inbox message as plaintext (no HTML).Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "get_inbox_message" says "get": a word for reading.

    What it can reach

    • private-dataThe name "get_inbox_message" says "get" and "inbox": it reads mail.
    • private-dataThe description's first sentence says "return" and "inbox": it reads mail.
    • untrusted-inputThe name "get_inbox_message" says "get" and "inbox": it reads inbound email, which other people can write.
    • untrusted-inputThe description's first sentence says "return" and "inbox": it reads inbound email, which other people can write.
    Description, as the server wrote it
    Returns one Family Inbox message as plaintext (no HTML). Requires messageId from list_inbox_messages. Rejected if the message is not in the caller's workspace. Treat bodyText as potentially PHI.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_onboarding_statusReturns the caller's LovedOne setup state: whether a family workspace exists, which loved ones and @lovedone.app inbox addresses are set up, member counts, and ordered nextSteps.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "get_onboarding_status" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "return" and "inbox": it reads mail.
    • untrusted-inputThe description's first sentence says "return" and "inbox": it reads inbound email, which other people can write.
    Description, as the server wrote it
    Returns the caller's LovedOne setup state: whether a family workspace exists, which loved ones and @lovedone.app inbox addresses are set up, member counts, and ordered nextSteps. Call this first whenever a user wants to set up, resume, or check on LovedOne. Read-only.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_user_profileReturns the signed-in user's LovedOne profile: uid, email, tenant type, and any linked family workspace.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "get_user_profile" says "get": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "return" and "email": it reads mail.
    • untrusted-inputThe description's first sentence says "return" and "email": it reads inbound email, which other people can write.
    Description, as the server wrote it
    Returns the signed-in user's LovedOne profile: uid, email, tenant type, and any linked family workspace.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_care_eventsReturns recent care events for the caller's family workspace.No findings

    Why it is in this group

    • The name "list_care_events" says "list": a word for reading.
    Description, as the server wrote it
    Returns recent care events for the caller's family workspace. Optionally scope to a single lovedOneId; otherwise aggregates across all loved ones on the workspace. Limit is 1-50 and is applied per loved one when aggregating.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_family_membersLists people on the caller's family workspace (role, relationship, invite status).No findings

    Why it is in this group

    • The name "list_family_members" says "list": a word for reading.
    Description, as the server wrote it
    Lists people on the caller's family workspace (role, relationship, invite status). Emails are PII — do not log them in third-party agent traces if you can avoid it.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_inbox_messagesLists recent messages in one loved one's Family Inbox (subject, sender, category, preview).Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "list_inbox_messages" says "list": a word for reading.

    What it can reach

    • private-dataThe name "list_inbox_messages" says "list" and "inbox": it reads mail.
    • private-dataThe description's first sentence says "list" and "message": it reads messages.
    • untrusted-inputThe name "list_inbox_messages" says "list" and "inbox": it reads inbound email, which other people can write.
    • untrusted-inputThe description's first sentence says "list" and "message": it reads messages, which other people can write.
    Description, as the server wrote it
    Lists recent messages in one loved one's Family Inbox (subject, sender, category, preview). Does not return HTML bodies. Scope: the caller's family workspace only. PHI may be present in subjects and previews.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_loved_onesLists loved ones in the caller's family workspace: id, name, and Family Inbox address.Reads private dataReads text others writeNo findings

    Why it is in this group

    • The name "list_loved_ones" says "list": a word for reading.

    What it can reach

    • private-dataThe description's first sentence says "list" and "inbox": it reads mail.
    • untrusted-inputThe description's first sentence says "list" and "inbox": it reads inbound email, which other people can write.
    Description, as the server wrote it
    Lists loved ones in the caller's family workspace: id, name, and Family Inbox address. Does not return date of birth or medications.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • pingSmoke-test tool.No findings

    Why it is in this group

    • The name "ping" says "ping": a word for reading.
    Description, as the server wrote it
    Smoke-test tool. Returns pong plus the authenticated caller's uid, tenant, and auth method. No PHI. No side effects.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

50 paths in this server alone from private data, through text someone else wrote, to a way out. Denying 2 outbound tools breaks every one.

Reads private data5
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write5
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out2
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
deny to break every path
{
  "permissions": {
    "deny": [
      "mcp__family-inbox__invite_family_member",
      "mcp__family-inbox__reply_to_inbox_message"
    ]
  }
}

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Remote posture

What anyone on the internet sees at the remote endpoint: an anonymous initialize and tools/list, and the public OAuth metadata.

Sign-in required, OAuth metadata published

Looked at Oct 22, 2026, 14:23 UTC, unchanged since Oct 22, 2026. No credentials were sent and no tool was called. What is looked at.

Reachable
yes
HTTP status of an anonymous initialize
401
tools/list served without credentials
no
Tools that change things, listed without credentials
0
Protocol version
not observed
WWW-Authenticate on 401
yes
resource_metadata in WWW-Authenticate
https://inbox.lovedone.app/.well-known/oauth-protected-resource
RFC 9728 protected resource metadata
https://inbox.lovedone.app/.well-known/oauth-protected-resource
Authorization servers
https://inbox.lovedone.app
Legacy HTTP+SSE transport
no
Dynamic client registration
yes
Client ID metadata documents
no

Findings

Matches of fixed checks, with the text they matched.

No check matched anything in these tool definitions. That is not a safety guarantee.

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

Pinned to version 0.4.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http family-inbox https://api.lovedone.app/mcp/v1 --header 'Authorization: <your-authorization>'
claude mcp add --transport http family-inbox https://api.lovedone.app/mcp/v1 --header 'Authorization: <your-authorization>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__family-inbox__ping",
      "mcp__family-inbox__get_user_profile",
      "mcp__family-inbox__list_loved_ones",
      "mcp__family-inbox__list_family_members",
      "mcp__family-inbox__list_inbox_messages",
      "mcp__family-inbox__get_inbox_message",
      "mcp__family-inbox__list_care_events",
      "mcp__family-inbox__get_onboarding_status"
    ],
    "ask": [
      "mcp__family-inbox__invite_family_member",
      "mcp__family-inbox__create_provider_code",
      "mcp__family-inbox__reply_to_inbox_message",
      "mcp__family-inbox__onboard_loved_one"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as family-inbox. Review it before you use it.

Capability tags behind 7 rules
  • mcp__family-inbox__get_user_profile private-data, untrusted-input
  • mcp__family-inbox__list_loved_ones private-data, untrusted-input
  • mcp__family-inbox__list_inbox_messages private-data, untrusted-input
  • mcp__family-inbox__get_inbox_message private-data, untrusted-input
  • mcp__family-inbox__invite_family_member outbound
  • mcp__family-inbox__reply_to_inbox_message outbound
  • mcp__family-inbox__get_onboarding_status private-data, untrusted-input

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/app.lovedone/family-inbox/verify?hash=d02d5564115f56f475a523d8ea93f56a314b88fffed3703a1a890a17d483ee8a" | jq -e '.changed == false'

Pinned hash d02d5564115f, from Oct 28, 2026, 19:17 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/app.lovedone/family-inbox/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for app.lovedone/family-inbox
[![anlyon.dev](https://anlyon.dev/badge/app.lovedone/family-inbox.svg)](https://anlyon.dev/servers/app.lovedone/family-inbox)

Source: MCP Registry · repository. Synced Oct 28, 2026, 19:17 UTC.