Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DATABASE_URLNoPostgres connection string, required when HOUSEWARDEN_DB=pg.
HOUSEWARDEN_DBNoDatabase type: 'pglite' (embedded, HOUSEWARDEN_DATA_DIR, default .data/pglite) or 'pg' (DATABASE_URL).pglite
HOUSEWARDEN_TOKENYesBearer token for /api/mcp (≥ 16 chars). Default: generated on first npm run dev.
HOUSEWARDEN_MCP_APPNo0 switches off the ui://housewarden/pending MCP App resource (on by default).1
HOUSEWARDEN_CURRENCYNoUsed when the demo household is created.PKR
HOUSEWARDEN_DATA_DIRNoDirectory for embedded PGlite data. Default: .data/pglite
HOUSEWARDEN_TIMEZONENoUsed when the demo household is created.Asia/Karachi
HOUSEWARDEN_PUBLIC_URLNoEndpoint URL shown on /settings. Default: derived from the request.
HOUSEWARDEN_ADMIN_SECRETYesConsole login secret (≥ 8 chars). Default: generated on first npm run dev.
HOUSEWARDEN_COOKIE_SECURENoSet 1 behind HTTPS.0
HOUSEWARDEN_ALLOWED_ORIGINSNoComma-separated browser origins allowed to call the endpoint.
HOUSEWARDEN_CONFIRM_TTL_SECONDSNoHow long a pending action waits for approval.600

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_membersA

Lists the people in the household with their roles. Needs nothing.

get_household_summaryA

Gives a spoken-ready overview of what is due, overdue, waiting for approval and whether the audit log is intact. Needs nothing.

list_billsA

Lists bills, unpaid ones by default, soonest first. Optionally needs a status filter.

get_billA

Reads one bill in detail. Needs the bill name or id.

list_choresA

Lists chores, open ones by default, with who they are assigned to. Optionally needs a status filter or a member.

list_shoppingA

Lists what is still to buy, grouped by category. Optionally includes checked-off items.

list_remindersA

Lists upcoming reminders, soonest first. Optionally needs a status, a member, or a time window in hours.

list_devicesA

Lists the smart-home devices with their current state, and the routines that can be run. Needs nothing.

get_budget_summaryA

Summarises spending for a month by category, with the previous month for comparison. Optionally needs the month as YYYY-MM.

list_pending_actionsA

Lists actions waiting for approval, with what each would change and when it expires. Optionally needs a status filter.

get_audit_logA

Reads the tamper-evident audit log, newest first. Optionally needs a limit, a starting point, or an action id.

verify_audit_chainA

Recomputes every hash in the audit log and reports whether the chain is intact. Needs nothing.

add_memberA

Adds a person to the household as an adult or a child. Needs a name and a role; a 4–8 digit PIN is optional.

add_billB

Adds a bill with an amount and due date, optionally recurring. Needs the name, amount and due date.

update_billB

Changes a bill's name, amount, currency, due date or recurrence. Needs the bill and at least one field to change.

mark_bill_paidA

Marks a bill as paid and, if it recurs, creates the next one. Needs the bill name or id.

add_choreB

Adds a chore, optionally assigned to someone and repeating. Needs a title.

assign_choreA

Assigns a chore to a member, or unassigns it. Needs the chore and the member (or null).

complete_choreA

Marks a chore done and, if it repeats, schedules the next one. Needs the chore.

rotate_choresA

Rotates every open, assigned chore to the next member in the household order. Needs nothing.

add_shopping_itemB

Adds an item to the shopping list with a quantity and category. Needs the item name.

check_off_shopping_itemA

Checks an item off the shopping list. Needs the item name or id.

clear_shopping_listA

Removes checked-off items from the shopping list, or everything if asked. Optionally needs include_unchecked.

add_reminderA

Adds a reminder at a specific time, optionally for one member. Needs the text and the time with timezone offset.

cancel_reminderB

Cancels a scheduled reminder. Needs the reminder id or its exact text.

record_expenseB

Records money spent in a category for the budget. Needs the amount and category.

set_device_stateA

Changes a device's state, such as locking a door or setting a thermostat. Needs the device and the fields to change.

run_routineB

Runs a saved routine, applying each of its steps together. Needs the routine name.

set_policyA

Changes how much confirmation a tool needs, for everyone or for one member. Needs the tool name and the new risk level.

confirm_actionA

Approves a waiting action so it runs exactly once. Needs the action id from a needs_confirmation reply.

reject_actionA

Declines a waiting action so it never runs. Needs the action id; a reason is optional.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
pending-approvalsHousewarden's confirmation cards: what the assistant proposed, what would change, and Approve / Reject. Rendered by hosts that support MCP Apps.

TDQS

A3.6/5.0

Scored across 31 tools

Disambiguation5/5

Each tool targets a distinct resource and action: chores, shopping, reminders, bills, devices, budget, members, and audit. Within each domain, verbs like list/add/get/update/complete clearly separate operations. No two tools appear to perform the same function, and even similar actions like confirm_action and reject_action are unambiguous opposites.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern (list_chores, add_bill, set_device_state, verify_audit_chain). The only minor variation is 'check_off_shopping_item' using a phrasal verb, but it remains readable and consistent with the overall style. Naming is highly predictable, aiding agent tool selection.

Tool Count2/5

With 31 tools, the server is well beyond the typical 3–15 tool range and into the 'too many' category (25+). While each tool appears purposeful and maps to a specific operation, the sheer number could overwhelm an agent and suggests possible consolidation. The count feels more like a complete application API than a scoped MCP tool surface.

Completeness4/5

The tool surface covers the major lifecycle operations for its domains: chores can be added, assigned, completed, and rotated; bills have full CRUD plus marking paid; reminders support add/cancel; the audit log supports reading and verification. Minor gaps exist (no delete chore, no remove member, no edit reminder), but agents can work around them, and overall coverage is robust.

Maintenance

ActivityMaintained
ResponsivenessNo issues