Skip to main content
Glama
acousland

TheirCare MCP

by acousland

TheirCare MCP

A local MCP server and companion for viewing and managing TheirCare / FullyBooked bookings through an AI assistant.

Read bookings, check availability, and prepare booking/cancellation previews. Review changes, fees and terms in the companion before personally saving.

Unofficial community project. Not affiliated with, endorsed by, or supported by TheirCare or FullyBooked. Early release using the undocumented family portal; requires an existing TheirCare account.

Quick start

Install Node.js 22 or newer and Git:

git clone https://github.com/acousland/theircare-mcp.git
cd theircare-mcp
npm ci
npm start

Open http://127.0.0.1:43817.

Choose Try sample data for a fictional demonstration without an account, or sign in with your TheirCare email/password. Browse Your bookings and Find a day. Selecting dates prepares an unsaved preview. Review the conditions and accept the terms before personally clicking the final save button.

To leave sample mode, select Disconnect, then sign in. Sample mode cannot save to a real account.

Terminal commands work on macOS, Linux and Windows with supported Node installations. Automated checks run across those platforms; live account testing has been performed on macOS.

Related MCP server: Twill

Connect your AI assistant

Uses stdio MCP. No OpenAI API key, cloud server or public tunnel is needed. Your assistant needs local MCP support.

npm run config

This prints configuration with the actual Node executable and absolute server path on your machine.

Codex

Run the registration command printed by npm run config, shaped like:

codex mcp add theircare-local -- "/absolute/path/to/node" "/absolute/path/to/theircare-mcp/src/mcp.js"

Ask the assistant to check theircare_status. If tools are missing, reconnect MCP or start a new chat. Remove the registration with:

codex mcp remove theircare-local

Other local MCP clients

Add the JSON printed by npm run config to your client's local MCP settings:

{
  "mcpServers": {
    "theircare-local": {
      "command": "/absolute/path/to/node",
      "args": ["/absolute/path/to/theircare-mcp/src/mcp.js"]
    }
  }
}

The MCP server automatically starts the companion. Open its URL to sign in personally; keep passwords out of AI conversations.

What you can ask

  • “What care is booked next week?”

  • “Is after-school care available next Wednesday?”

  • “Prepare a preview to cancel Friday's after-school care.”

The assistant should first call account_context for current child, service and care-type IDs. Never hard-code another account's IDs.

Tool

Purpose

theircare_status

Connection state and companion URL

theircare_account_context

Children, care types and services

theircare_list_bookings

Saved bookings

theircare_availability

Availability and session conditions

theircare_preview_changes

Unsaved booking, cancellation or waitlist review

theircare_discard_preview

Discard the preview

Date ranges use inclusive start / exclusive end, up to 93 days. Previews support 1–31 dates for one child, care type and calendar year.

There is no MCP tool for final saving or accepting terms. You confirm personally in the companion. One preview is active at a time, expiring after five minutes. Before saving, the adapter refreshes availability and review; changed fees/terms/state invalidate the old preview. It submits once, then checks the saved calendar. Check bookings before retrying an uncertain result.

Privacy and local operation

  • Passwords go over HTTPS only to theircare.fullybookedccms.com.au, never to disk or the AI.

  • Portal cookies stay in process memory. Disconnecting/stopping clears the session.

  • Only information needed for child/service selection is extracted. No payment, subsidy, medical-record or contact-editing tools are exposed.

  • MCP results go to your chosen AI client and may be processed by its model provider.

  • The companion listens only on 127.0.0.1:43817, with Host/Origin checks and separate browser/MCP access.

  • .runtime/connection.json holds a bridge credential. Git ignores it and packages exclude it. Never share .runtime.

  • The browser confirmation boundary prevents saving through the provided MCP tools; it is not isolation from malicious software running as your OS user.

  • Run on a trusted local computer. Do not expose through a proxy or public tunnel.

To stop and clear the session:

npm run stop

An enabled MCP client can restart the companion; remove/disable its registration to keep it stopped.

Updating

Stop the companion first, then:

git pull --ff-only
npm ci
npm start

Sign in again. Dependencies are pinned in package-lock.json.

Validation and limits

Live-verified: password sign-in, children/care types, bookings, availability, and unsaved booking/cancellation reviews with policies and terms. Test previews were discarded.

Final saving is implemented but tested only against fictional responses. No live final save was made during development. Check the official portal after any intended real change.

  • Password sign-in only; passkeys, CAPTCHA and extra verification are unsupported.

  • Waitlist actions have offline coverage but await live validation.

  • Multi-service accounts, alternate session types, block bookings and excursions/authorisations need more validation.

  • This release uses Australia/Melbourne, matching the live-tested service. Other service time zones are not supported yet.

  • FullyBooked's feed marks local clock components with Z. The adapter preserves official-portal display hours and emits Melbourne offsets.

  • Only TheirCare's portal hostname is supported, not all FullyBooked operators.

  • The undocumented portal can change without notice.

Troubleshooting

Problem

Next step

Port 43817 in use

Stop another copy; avoid simultaneous checkouts.

Expired sign-in

Disconnect and sign in again.

Unsupported/extra verification flow

Use the official portal.

Review mismatch

No final save occurs through preview. Report with synthetic/redacted details.

Uncertain save

Check the official calendar before retrying.

Missing MCP tools

Check paths from npm run config and reconnect.

Development

npm ci
npm run check
npm test

Tests use fictional responses and need no live account.

npm run test:mcp

The optional transport check verifies MCP initialization/tool discovery. In explicitly selected sample mode it reads fictional data and creates an unsaved sample preview. With a real account it checks status only. It never performs a final save.

See CONTRIBUTING.md, SECURITY.md and the MIT licence.

Codex registration follows the official MCP documentation.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Exposes authorized ChatGPT, DeepSeek, Kimi, and Grok web sessions to agents as MCP tools, including chat and local file attachments over HTTP or stdio.
    7
    MIT
  • A
    license
    C
    quality
    B
    maintenance
    Enables AI assistants and voice companions to control a Linux desktop over MCP, exposing desktop tools and system controls through stdio.
    46
    2
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables compatible AI clients to connect to a local Coinbase Agentic Wallet through stdio MCP, so they can read wallet status, public address, Base USDC balance, and saved operations without signing, transferring, trading, or making payments.
    MIT