app.onehaus/haus
Owner verifiedREMOTE · MCP.ONEHAUS.APP · SCANNED SEP 20
OneHaus household tools: tasks, calendar, contacts, pets, vehicles, documents and more.
Available components
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. How we score → Why this is hard to score →
Endpoint Security91
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token. See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability97
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 7141 tokens (~102/item across 70 items; 69 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
- Tools include usage examples.Pass
Stability & Change Management99
- Stability check failed: schema churn in the 30 days we've observed: 0 tool removals, 1 breaking changes, 0 auth/transport breaks, 1 additions. See how to fix → Fail
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 13 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 71 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
- Supports UI / widget rendering.Pass
How do I install the app.onehaus/haus MCP server?
app.onehaus/haus is a hosted endpoint at https://mcp.onehaus.app/, 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.
remote · mcp.onehaus.app
claude mcp add --transport http app-onehaus-haus 'https://mcp.onehaus.app/'
{
"mcpServers": {
"app-onehaus-haus": {
"url": "https://mcp.onehaus.app/"
}
}
} {
"servers": {
"app-onehaus-haus": {
"type": "http",
"url": "https://mcp.onehaus.app/"
}
}
} [mcp_servers.app-onehaus-haus] url = "https://mcp.onehaus.app/"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"app-onehaus-haus": {
"type": "remote",
"url": "https://mcp.onehaus.app/",
"enabled": true
}
}
} openclaw mcp add app-onehaus-haus --url 'https://mcp.onehaus.app/' --transport streamable-http
mcp_servers:
app-onehaus-haus:
url: "https://mcp.onehaus.app/" {
"McpServers": {
"app-onehaus-haus": {
"Transport": "http",
"Url": "https://mcp.onehaus.app/"
}
}
} assistant mcp add app-onehaus-haus -t streamable-http -u 'https://mcp.onehaus.app/'
{
"mcpServers": {
"app-onehaus-haus": {
"type": "http",
"url": "https://mcp.onehaus.app/"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 19 Sept 26 −1
- Authorization: pass → fail ▼ security
- DNSSEC: fail → pass ▲ security
- 16 Sept 26 −1
- DNSSEC: pass → fail ▼ security
- 8 Sept 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
- Stability: pass → fail ▼ security
- Tool “delete_meal_plan” rewrote its description, which is the text the model reads security
- Tool “delete_vehicle” rewrote its description, which is the text the model reads security
- Tool “list_house_members” rewrote its description, which is the text the model reads security
- Tool “update_recipe” rewrote its description, which is the text the model reads security
- Tool “update_task” rewrote its description, which is the text the model reads security
- Tool “list_vehicles” rewrote its description, which is the text the model reads security
- Tool “get_house” rewrote its description, which is the text the model reads security
- Tool “list_global_recipes” rewrote its description, which is the text the model reads security
- Tool “delete_recipe” rewrote its description, which is the text the model reads security
- Tool “create_recurring_calendar_event” rewrote its description, which is the text the model reads security
- Tool “update_document” rewrote its description, which is the text the model reads security
- Tool “update_subscription” rewrote its description, which is the text the model reads security
- Tool “get_weather_forecast” rewrote its description, which is the text the model reads security
- Tool “add_shopping_list_item” rewrote its description, which is the text the model reads security
- Tool “delete_subscription” rewrote its description, which is the text the model reads security
- Tool “create_recipe” rewrote its description, which is the text the model reads security
- Tool “create_pet” rewrote its description, which is the text the model reads security
- Tool “list_subscriptions” rewrote its description, which is the text the model reads security
- Tool “delete_calendar_event” rewrote its description, which is the text the model reads security
- Tool “update_meal_plan” rewrote its description, which is the text the model reads security
- Tool “get_profile” rewrote its description, which is the text the model reads security
- Tool “list_calendar_events” rewrote its description, which is the text the model reads security
- Tool “delete_task” rewrote its description, which is the text the model reads security
- Tool “create_subscription” rewrote its description, which is the text the model reads security
- Tool “list_appliances” rewrote its description, which is the text the model reads security
- Tool “update_pet” rewrote its description, which is the text the model reads security
- Tool “defer_recommendation” rewrote its description, which is the text the model reads security
- Tool “list_tasks” rewrote its description, which is the text the model reads security
- Tool “create_contact” rewrote its description, which is the text the model reads security
- Tool “list_recipes” rewrote its description, which is the text the model reads security
- Tool “skip_recommendation” rewrote its description, which is the text the model reads security
- Tool “list_shopping_list_items” rewrote its description, which is the text the model reads security
- Tool “create_recurring_task” rewrote its description, which is the text the model reads security
- Tool “get_house_review” rewrote its description, which is the text the model reads security
- Tool “batch_add_shopping_list_items” rewrote its description, which is the text the model reads security
- Tool “create_document” rewrote its description, which is the text the model reads security
- Tool “update_vehicle” rewrote its description, which is the text the model reads security
- Tool “buy_shopping_list_item” rewrote its description, which is the text the model reads security
- Tool “list_meal_plans” rewrote its description, which is the text the model reads security
- Tool “list_pets” rewrote its description, which is the text the model reads security
- “assign_task” changed the type of “assignedToMemberId”: string → string|null ▼ functional
- Schema quality: 134 → 102 ▲ functional
- The server now declares the “prompts” capability functional
- Server version: 1.4.0 → 1.5.0 functional
- New tool “list_shopping_lists” functional
- “list_shopping_list_items” added an optional parameter “shoppingListId” cosmetic
- “create_vehicle” reworded the description of “notes” cosmetic
- “update_vehicle” reworded the description of “year” cosmetic
- “update_recurring_task” reworded the description of “maxOccurrences” cosmetic
- “create_document” reworded the description of “notes” cosmetic
- “create_vehicle” reworded the description of “year” cosmetic
- “list_calendar_events” reworded the description of “startDateTo” cosmetic
- “delete_recurring_task” reworded the description of “id” cosmetic
- “remove_shopping_list_item” reworded the description of “id” cosmetic
- “update_recipe” reworded the description of “instructions” cosmetic
- “update_document” reworded the description of “fee” cosmetic
- “buy_shopping_list_item” reworded the description of “id” cosmetic
- “update_recurring_calendar_event” reworded the description of “description” cosmetic
- “assign_task” reworded the description of “id” cosmetic
- “update_vehicle” reworded the description of “model” cosmetic
- “create_meal_plan” reworded the description of “recipeSource” cosmetic
- “create_calendar_event” reworded the description of “isAllDay” cosmetic
- “create_appliance” reworded the description of “warrantyExpiryDate” cosmetic
- “update_task” reworded the description of “notes” cosmetic
- “update_subscription” reworded the description of “remindMe” cosmetic
- “delete_meal_plan” reworded the description of “id” cosmetic
- “update_task” reworded the description of “title” cosmetic
- “update_subscription” reworded the description of “fee” cosmetic
- “create_contact” reworded the description of “displayName” cosmetic
- “update_shopping_list_item” reworded the description of “category” cosmetic
- “create_task” reworded the description of “assignedToMemberId” cosmetic
- “create_calendar_event” reworded the description of “description” cosmetic
- “create_meal_plan” reworded the description of “servings” cosmetic
- “update_document” reworded the description of “id” cosmetic
- “update_recipe” reworded the description of “url” cosmetic
- “create_meal_plan” reworded the description of “date” cosmetic
- “update_recurring_calendar_event” reworded the description of “maxOccurrences” cosmetic
- “update_meal_plan” reworded the description of “notes” cosmetic
- “uncomplete_task” reworded the description of “id” cosmetic
- “update_memory” reworded the description of “description” cosmetic
- “create_appliance” reworded the description of “serialNumber” cosmetic
- “update_recurring_task” reworded the description of “endDate” cosmetic
- “update_subscription” reworded the description of “name” cosmetic
- “update_calendar_event” reworded the description of “endDateTime” cosmetic
- “update_meal_plan” reworded the description of “servings” cosmetic
- “update_pet” reworded the description of “microchipNumber” cosmetic
- “create_appliance” reworded the description of “purchaseDate” cosmetic
- “create_pet” reworded the description of “insuranceDocumentId” cosmetic
- “create_pet” reworded the description of “notes” cosmetic
- “batch_add_shopping_list_items” reworded the description of “items” cosmetic
- “update_document” reworded the description of “documentType” cosmetic
- “create_subscription” reworded the description of “name” cosmetic
- “update_meal_plan” reworded the description of “name” cosmetic
- “update_recurring_calendar_event” reworded the description of “id” cosmetic
- “list_tasks” reworded the description of “cursor” cosmetic
- “create_vehicle” reworded the description of “colour” cosmetic
- “update_pet” reworded the description of “dateOfBirth” cosmetic
- “update_recurring_calendar_event” reworded the description of “location” cosmetic
- “create_contact” reworded the description of “phone” cosmetic
- “update_document” reworded the description of “renewalCronExpression” cosmetic
- “create_recurring_calendar_event” reworded the description of “notes” cosmetic
- “update_appliance” reworded the description of “model” cosmetic
- “update_subscription” reworded the description of “status” cosmetic
- “update_task” reworded the description of “preparationDate” cosmetic
- “update_contact” reworded the description of “lastName” cosmetic
- “store_memory” reworded the description of “type” cosmetic
- “update_task” reworded the description of “id” cosmetic
- “update_vehicle” reworded the description of “id” cosmetic
- “update_appliance” reworded the description of “brand” cosmetic
- “update_pet” reworded the description of “notes” cosmetic
- “create_subscription” reworded the description of “fee” cosmetic
- “create_vehicle” reworded the description of “vin” cosmetic
- “update_contact” reworded the description of “address” cosmetic
- “create_task” reworded the description of “title” cosmetic
- “create_pet” reworded the description of “vetContactId” cosmetic
- “create_vehicle” reworded the description of “motDueDate” cosmetic
- “defer_recommendation” reworded the description of “recommendationId” cosmetic
- “update_contact” reworded the description of “prepareBirthdayPresent” cosmetic
- “create_calendar_event” reworded the description of “startDateTime” cosmetic
- “list_tasks” reworded the description of “includeCompleted” cosmetic
- “create_document” reworded the description of “documentType” cosmetic
- “create_subscription” reworded the description of “status” cosmetic
- “update_calendar_event” reworded the description of “description” cosmetic
- “update_appliance” reworded the description of “notes” cosmetic
- “create_recurring_calendar_event” reworded the description of “duration” cosmetic
- “update_recurring_task” reworded the description of “assigneeRotation” cosmetic
- “create_contact” reworded the description of “email” cosmetic
- “add_shopping_list_item” reworded the description of “name” cosmetic
- “list_tasks” reworded the description of “assignedToMemberId” cosmetic
- “update_calendar_event” reworded the description of “timezone” cosmetic
- “create_recurring_task” reworded the description of “assigneeRotation” cosmetic
- “create_subscription” reworded the description of “renewalCronExpression” cosmetic
- “update_subscription” reworded the description of “id” cosmetic
- “update_contact” reworded the description of “firstName” cosmetic
- “update_recurring_calendar_event” reworded the description of “timezone” cosmetic
- “update_memory” reworded the description of “content” cosmetic
- “update_pet” reworded the description of “insuranceDocumentId” cosmetic
- “create_contact” reworded the description of “address” cosmetic
- “update_recurring_calendar_event” reworded the description of “isAllDay” cosmetic
- “update_meal_plan” reworded the description of “recipeId” cosmetic
- “create_recipe” reworded the description of “ingredients” cosmetic
- “create_recurring_calendar_event” reworded the description of “description” cosmetic
- “update_recipe” reworded the description of “ingredients” cosmetic
- “update_document” reworded the description of “issuingAuthority” cosmetic
- “update_task” reworded the description of “dueDate” cosmetic
- “update_meal_plan” reworded the description of “date” cosmetic
- “create_recipe” reworded the description of “instructions” cosmetic
- “create_recurring_task” reworded the description of “notes” cosmetic
- “create_appliance” reworded the description of “brand” cosmetic
- “create_calendar_event” reworded the description of “notes” cosmetic
- “create_appliance” reworded the description of “name” cosmetic
- “create_recurring_task” reworded the description of “cronExpression” cosmetic
- “buy_shopping_list_item” reworded the description of “quantityToBuy” cosmetic
- “create_document” reworded the description of “renewalCronExpression” cosmetic
- “update_task” reworded the description of “assignedToMemberId” cosmetic
- “list_calendar_events” reworded the description of “startDateFrom” cosmetic
- “update_vehicle” reworded the description of “taxDueDate” cosmetic
- “update_contact” reworded the description of “notes” cosmetic
- “update_vehicle” reworded the description of “colour” cosmetic
- “update_recurring_task” reworded the description of “preparationDays” cosmetic
- “update_meal_plan” reworded the description of “recipeSource” cosmetic
- “list_tasks” reworded the description of “dueDateOnOrAfter” cosmetic
- “create_recurring_task” reworded the description of “preparationDays” cosmetic
- “create_vehicle” reworded the description of “insuranceDocumentId” cosmetic
- “update_appliance” reworded the description of “warrantyExpiryDate” cosmetic
- “update_memory” reworded the description of “name” cosmetic
- “update_pet” reworded the description of “vetContactId” cosmetic
- “update_recurring_calendar_event” reworded the description of “startDate” cosmetic
- “create_meal_plan” reworded the description of “name” cosmetic
- “list_tasks” reworded the description of “limit” cosmetic
- “delete_task” reworded the description of “id” cosmetic
- “create_vehicle” reworded the description of “model” cosmetic
- “update_appliance” reworded the description of “id” cosmetic
- “create_recipe” reworded the description of “servings” cosmetic
- “create_task” reworded the description of “preparationDate” cosmetic
- “create_pet” reworded the description of “dateOfBirth” cosmetic
- “create_recurring_calendar_event” reworded the description of “title” cosmetic
- “create_pet” reworded the description of “microchipNumber” cosmetic
- “create_document” reworded the description of “fee” cosmetic
- “list_documents” reworded the description of “documentType” cosmetic
- “update_appliance” reworded the description of “warrantyDocumentId” cosmetic
- “update_recurring_task” reworded the description of “id” cosmetic
- “create_recurring_calendar_event” reworded the description of “startDate” cosmetic
- “update_calendar_event” reworded the description of “notes” cosmetic
- “update_vehicle” reworded the description of “registration” cosmetic
- “update_calendar_event” reworded the description of “id” cosmetic
- “create_recurring_calendar_event” reworded the description of “cronExpression” cosmetic
- “recall_memory” reworded the description of “type” cosmetic
- “update_shopping_list_item” reworded the description of “quantity” cosmetic
- “create_calendar_event” reworded the description of “location” cosmetic
- “update_vehicle” reworded the description of “make” cosmetic
- “create_contact” reworded the description of “notes” cosmetic
- “update_recurring_calendar_event” reworded the description of “cronExpression” cosmetic
- 24 Aug 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
- 22 Aug 26 96
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Probed https://mcp.onehaus.app
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=onehaus.app | CN=WE1,O=Google Trust Services,C=US | 16 Sept 2026 | 15 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | 717287978c0a709013d68e5b8356b36a |
| SANs: onehaus.app, *.onehaus.app | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of mcp.onehaus.app. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| app. | present | 23684 | 8 | Verified |
| onehaus.app. | present | 2371 | 13 | Verified |
| mcp.onehaus.app. | Verified address RRset verified with the apex keys |
Authentication Challenged, unverified
The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.
| Result | Challenged, unverified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer resource_metadata="https://mcp2.onehaus.app/.well-known/oauth-protected-resource"
Bearer resource_metadata="https://mcp2.onehaus.app/.well-known/oauth-protected-resource" | Header | Value |
|---|---|
| strict-transport-security | max-age=2592000; includeSubDomains; preload |
| x-content-type-options | nosniff |
Protected resource metadata
| Document | https://mcp2.onehaus.app/.well-known/oauth-protected-resource |
|---|---|
| Retrieved | No |
| Problem | metadata_unreachable |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.onehaus.app | Verified | 200 | |
| http (plaintext) | http://mcp.onehaus.app | HTTPS enforced | 301 | https://mcp.onehaus.app/ |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
list_tasks ~169
List tasks, filterable by assignee, due-date range and completion, with cursor pagination. Excludes completed tasks by default and sorts by due date ascending, undated first.
| Name | Type | Req | Description |
|---|---|---|---|
| assignedToMemberId | string | – | Member id to filter by. Omit for all assignees. |
| cursor | string | – | nextCursor from a previous response. Omit for the first page. |
| dueDateOnOrAfter | string | – | Earliest due date, YYYY-MM-DD. Undated tasks never match. |
| dueDateOnOrBefore | string | – | Latest due date, YYYY-MM-DD. Undated tasks never match. |
| includeCompleted | boolean | – | Include completed tasks. Defaults to false. |
| limit | integer | – | Page size, 1-100, default 50. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"assignedToMemberId":"7f3a9c2e1b4d8f6a0c5e3b7d9a1f4c6e","dueDateOnOrAfter":"2026-07-01","dueDateOnOrBefore":"2026-07-31","includeCompleted":false,"limit":20} list_vehicles ~42
List the household's vehicles with make, model, year, registration, VIN and MOT, tax and service due dates. Answers questions like when the MOT is due.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{} recall_memory ~101
Recall long-term memories stored about the current household. Call this at the start of advisory or open-ended turns. Filter by type when only one author's notes are relevant.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | – | nextCursor from a previous response. Omit for the first page. |
| limit | integer | – | Max number of memories to return in this page. 1-100, default 20. |
| type | string | – | Filter by author. Omit for both. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"limit":20,"type":"user"} remove_shopping_list_item ~65
Remove an item from the household's shopping list without marking it as bought. This soft-deletes the item so it no longer appears in list_shopping_list_items.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Item id from add_shopping_list_item or list_shopping_list_items. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"0189c8d4f2b1712a9e4d6c9a1b2e3f4a"} skip_recommendation ~48
Permanently suppress a House Review recommendation so get_house_review stops returning it. Use it when the suggestion does not apply.
| Name | Type | Req | Description |
|---|---|---|---|
| recommendationId | string | yes | Recommendation id from get_house_review. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"recommendationId":"0195e3c1a2b34c5d6e7f8091a2b3c4d5"} store_memory ~128
Store a long-term memory about the household. Use sparingly for durable preferences, routines, constraints, or insights worth recalling in a future conversation. Recall first to avoid duplicates.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | Free-text body. Max 8000 chars. |
| description | string | yes | Single-line summary used to decide relevance later. Max 200 chars. |
| name | string | yes | Short kebab-case slug, e.g. 'preferred-cleaning-day'. Max 80 chars. |
| type | string | yes | 'user' for what the user stated, 'system' for insights you derived. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"content":"The user said they'd rather have the house cleaned Saturday mornings instead of Friday evenings, because they work late on Fridays.","description":"User prefers the house cleaned on Saturday mornings","name":"preferred-cleaning-day","type":"user"} uncomplete_task ~52
Reopens a completed task, clearing its completion timestamp and completed-by user. Fails with a conflict if the task is not currently completed.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Task id from create_task or list_tasks. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"018f2c9a1b2c7d3e9a4f5b6c7d8e9f0a"} update_appliance ~185
Update an appliance's details; omitted fields keep their current value. Rejects the update if the resulting warranty expiry date would fall before the purchase date.
| Name | Type | Req | Description |
|---|---|---|---|
| brand | string | – | New manufacturer or brand. |
| id | string | yes | Appliance id from list_appliances. |
| insuranceDocumentId | string | – | Insurance document id from create_document. |
| model | string | – | New model. |
| name | string | – | New name. |
| notes | string | – | Freeform notes. |
| purchaseDate | string | – | Purchase date, YYYY-MM-DD. Must not follow warrantyExpiryDate. Empty string clears it. |
| serialNumber | string | – | New serial number. |
| warrantyDocumentId | string | – | Warranty document id from create_document. |
| warrantyExpiryDate | string | – | Warranty expiry, YYYY-MM-DD. Must not precede purchaseDate. Empty string clears it. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"01933f9c-7a2b-7c3d-8e4f-1a2b3c4d5e6f","notes":"Repaired ice maker under warranty, June 2026.","warrantyExpiryDate":"2026-11-04"} update_calendar_event ~213
Updates fields on an existing single calendar event; only the fields supplied are changed, all others keep their current value. Imported (subscription-sourced) events cannot be edited.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | New description. |
| endDateTime | string | – | New end, ISO 8601 UTC. Must not precede startDateTime. |
| id | string | yes | Event id from create_calendar_event or list_calendar_events. |
| isAllDay | boolean | – | True for all-day, false for timed. |
| location | object | – | Replaces the location outright. $type 'Address' takes line1-3/postalCode/countryCode; 'OnlineLocation' takes url/notes. |
| notes | string | – | New notes. |
| startDateTime | string | – | New start, ISO 8601 UTC. |
| timezone | string|null | – | IANA zone for the wall-clock times, e.g. 'Europe/London'. Null means UTC. |
| title | string | – | New event title. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"endDateTime":"2026-08-04T15:30:00Z","id":"0198f3a1b2c34d5e6f7089ab1c2d3e4f","notes":"Moved to Thursday","startDateTime":"2026-08-04T14:30:00Z"} update_contact ~189
Update a contact by id. Only the fields supplied are changed; omitted fields keep their current value (dateOfBirth is the exception: an empty string explicitly clears it).
| Name | Type | Req | Description |
|---|---|---|---|
| address | object | – | Postal address. Replaces the stored one outright. |
| dateOfBirth | string | – | Date of birth, YYYY-MM-DD. Empty string clears it. |
| displayName | string | – | Name to show instead of first/last, e.g. a nickname or company. |
| string | – | Email address. | |
| firstName | string | – | First name. |
| id | string | yes | Contact id from create_contact or list_contacts. |
| lastName | string | – | Last (family) name. |
| notes | string | – | Free-text notes. |
| phone | string | – | Phone number, any format. |
| prepareBirthdayPresent | boolean | – | Whether to flag a birthday present for them. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"01928e4a7d3f7b9ac1e3f6d8b2a4c710","notes":"Prefers texts over calls.","phone":"+44 7911 123456"} update_document ~177
Update a stored document's type, title, reference number, issuing authority, fee or notes, returning the updated document. Only the fields you send change. renewalCronExpression is the one exception: it is accepted but not yet stored or acted on, so sending it changes nothing.
| Name | Type | Req | Description |
|---|---|---|---|
| documentNumber | string | – | Reference or serial number, e.g. a passport or policy number. |
| documentType | string | – | Kind of document. |
| fee | object | – | Cost. Replaces the stored fee outright. |
| id | string | yes | Document id from create_document or list_documents. |
| issuingAuthority | string | – | Who issued it. |
| notes | string | – | Free-text notes. |
| renewalCronExpression | string | – | Accepted but not yet stored or acted on; has no effect. |
| title | string | – | Custom title. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"01928e4a7d3f7b9ac1e3f6d8b2a4c710","issuingAuthority":"HM Passport Office","notes":"Renewed for another 10 years."} update_meal_plan ~194
Update a planned meal. Only the fields you send change. recipeId links a recipe and clears any custom name; name makes it custom and clears the link; recipeId wins if both are sent.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | – | Date, YYYY-MM-DD. Must be today or within the next 28 days, so work it out from today's date. |
| id | string | yes | Entry id from list_meal_plans. |
| mealType | string | – | Meal slot of the day. |
| name | string | – | Custom meal name when no recipe is linked. |
| notes | string | – | Free-text notes. |
| recipeId | string | – | Recipe id from list_recipes or list_global_recipes. |
| recipeSource | string | – | Use 'global' when recipeId came from list_global_recipes. Defaults to 'household'. |
| servings | integer | – | Servings, 1-100. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"8f14e45f-ceea-467e-8a2f-1a2b3c4d5e6f","servings":6} update_memory ~80
Update an existing memory's name, description, or content. Type is immutable; to reclassify, forget and store again.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | – | New body. |
| description | string | – | New single-line summary. |
| id | string | yes | Id from a prior recall_memory result. |
| name | string | – | New kebab-case slug. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"content":"Updated 2026-07-14: the user now prefers Sunday mornings instead of Saturday mornings for cleaning.","description":"User now prefers the house cleaned on Sunday mornings","id":"0195e3c1a2b34c5d6e7f8091a2b3c4d5"} update_pet ~136
Update a pet's name, microchip number, date of birth, notes, or its linked vet contact and insurance document. Only the fields you send change.
| Name | Type | Req | Description |
|---|---|---|---|
| dateOfBirth | string | – | Date of birth, YYYY-MM-DD. Empty string clears it. |
| id | string | yes | Pet id from list_pets. |
| insuranceDocumentId | string | – | Insurance document id from create_document. |
| microchipNumber | string | – | New microchip number. |
| name | string | – | New name. |
| notes | string | – | Freeform notes. |
| vetContactId | string | – | Vet contact id from create_contact. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"01933f9c-7a2b-7c3d-8e4f-1a2b3c4d5e6f","notes":"Started prescription diet on vet's advice."} update_recipe ~105
Update a recipe. Only the fields you send change, except ingredients, which replaces the whole existing list rather than merging.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Recipe id from list_recipes. |
| ingredients | array | – | Ingredients. Replaces the whole existing list rather than merging. |
| instructions | string | – | Cooking method. |
| name | string | – | Name. |
| servings | integer | – | Servings the recipe yields, minimum 1. |
| url | string | – | Source URL. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"8f14e45f-ceea-467e-8a2f-1a2b3c4d5e6f","servings":6} update_recurring_calendar_event ~306
Update a recurring calendar event. Changes to title/description/notes patch existing instances. Changes to frequency/dates/time regenerate future instances.
| Name | Type | Req | Description |
|---|---|---|---|
| cronExpression | string | – | New interval as 'N Unit', Unit one of Day, Week, Month, Year, e.g. '2 Week'. Not cron syntax. |
| description | string | – | New description, patched onto existing instances. |
| duration | string | – | Length of each instance, ISO 8601 duration e.g. 'PT30M'. |
| endDate | string | – | New last date, YYYY-MM-DD. Empty string leaves it unbounded. |
| id | string | yes | Template id from create_recurring_calendar_event. |
| isAllDay | boolean | – | True for all-day instances, false for timed. |
| location | object | – | Replaces the location outright. $type 'Address' takes line1-3/postalCode/countryCode; 'OnlineLocation' takes url/notes. |
| maxOccurrences | integer | – | New cap on instances generated. |
| notes | string | – | New notes. |
| startDate | string | – | New first-instance date, YYYY-MM-DD. Empty string clears it. |
| startTime | string | – | New local start time, HH:mm:ss. |
| timezone | string|null | – | IANA zone for startTime, e.g. 'Europe/London'. Occurrences follow its DST. |
| title | string | – | New title, patched onto existing instances. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"cronExpression":"2 Week","endDate":"2027-01-31","id":"0198f3a1b2c34d5e6f7089ab1c2d3e4f"} update_recurring_task ~217
Update a recurring task. Title/notes changes patch existing instances; frequency/date changes regenerate future instances.
| Name | Type | Req | Description |
|---|---|---|---|
| assigneeRotation | array | – | A member id from list_house_members. |
| cronExpression | string | – | New interval as 'N Unit', Unit one of Day, Week, Month, Year, e.g. '2 Week'. Not cron syntax. |
| endDate | string | – | New inclusive end date, YYYY-MM-DD. Empty string makes it open-ended. |
| id | string | yes | Template id from create_recurring_task. |
| maxOccurrences | integer | – | New cap on instances generated. |
| notes | string | – | New notes, copied to uncompleted instances. |
| preparationDays | integer | – | Days before each due date to set that instance's preparation date. Applies to instances generated after this change. |
| startDate | string | – | New start date, YYYY-MM-DD. Empty string clears it. |
| title | string | – | New title. Uncompleted instances are updated to match; completed ones keep theirs. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"assigneeRotation":["7f3a9c2e1b4d8f6a0c5e3b7d9a1f4c6e"],"cronExpression":"2 Week","id":"5c3d2e1f0a9b8c7d6e5f4a3b2c1d0e9f","title":"Take out the recycling"} update_shopping_list_item ~159
Update a shopping list item's name, quantity, and/or category. Only the fields provided are changed; any field left out keeps its current value.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | New store-aisle category, overriding the auto-assigned one. |
| id | string | yes | Item id from add_shopping_list_item or list_shopping_list_items. |
| name | string | – | New item name. |
| quantity | integer | – | New quantity, 1-9999. Replaces rather than adds to the current one. |
| shoppingListId | string | – | Move the item to a different list, an id from list_shopping_lists. Omit to leave it where it is; name the default list explicitly to move it back. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"category":"DairyAndEggs","id":"0189c8d4f2b1712a9e4d6c9a1b2e3f4a","quantity":3} update_subscription ~131
Update a subscription. Only the fields you send change; for renewalCronExpression and notes an empty string clears the stored value.
| Name | Type | Req | Description |
|---|---|---|---|
| fee | object | – | Recurring charge. |
| id | string | yes | Subscription id from list_subscriptions. |
| name | string | – | New name. |
| notes | string | – | Free-text notes. Empty string clears them. |
| remindMe | boolean | – | Whether to remind the household before each renewal. |
| renewalCronExpression | string | – | Cron expression for the renewal cadence, no more often than daily. Empty string clears it. |
| status | string | – | New status. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"0198c1f4b2c07a1b9e4d5f6a7b8c9d0e","notes":"Paused while travelling","status":"Paused"} update_task ~137
Update a task's title, assignee, due date, preparation date or notes. Only the fields you send change.
| Name | Type | Req | Description |
|---|---|---|---|
| assignedToMemberId | string | – | Member id to assign. Empty string unassigns. |
| dueDate | string | – | New due date, YYYY-MM-DD. Empty string clears it. |
| id | string | yes | Task id from create_task or list_tasks. |
| notes | string | – | Freeform notes. Not for assignment info. |
| preparationDate | string | – | New preparation date, YYYY-MM-DD. Must not follow dueDate. Empty string clears it. |
| title | string | – | New title. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"dueDate":"2026-08-01","id":"018f2c9a1b2c7d3e9a4f5b6c7d8e9f0a","title":"Take out the recycling"} update_vehicle ~215
Update a vehicle. Only the fields you send change; for text and due-date fields an empty string clears the stored value.
| Name | Type | Req | Description |
|---|---|---|---|
| colour | string | – | Colour. |
| id | string | yes | Vehicle id from list_vehicles. |
| insuranceDocumentId | string | – | Insurance document id from list_documents. |
| make | string | – | Manufacturer, e.g. 'Toyota'. |
| model | string | – | Model, e.g. 'Corolla'. |
| motDueDate | string | – | Next MOT (roadworthiness test) due date, YYYY-MM-DD. |
| notes | string | – | Free-text notes. |
| registration | string | – | Registration as shown on the plate; format varies by country. |
| serviceDueDate | string | – | Next service due date, YYYY-MM-DD. |
| taxDueDate | string | – | Next road tax due date, YYYY-MM-DD. |
| vin | string | – | Vehicle Identification Number, 17 alphanumeric characters. |
| year | integer | – | Model year, 1900-2100. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| message | string | – | – |
| title | string | – | – |
| variant | string | – | – |
{"id":"0198c1f4b2c07a1b9e4d5f6a7b8c9d0e","notes":"Renewed tax disc","taxDueDate":"2027-09-01"} What is the app.onehaus/haus MCP server?
app.onehaus/haus is an MCP server listed in the public MCP registry as app.onehaus/haus. OneHaus household tools: tasks, calendar, contacts, pets, vehicles, documents and more. This page covers its hosted endpoint (https://mcp.onehaus.app). Its publisher has verified ownership with us.
Is the app.onehaus/haus MCP server safe to use?
app.onehaus/haus scores 96 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 app.onehaus/haus MCP server expose?
app.onehaus/haus exposes 69 tools: create_contact, update_contact, delete_contact, list_contacts, create_appliance, and 64 more. Their descriptions and schemas cost roughly 7,081 tokens of context every time the server is loaded.
Does the app.onehaus/haus MCP server require authentication?
Yes. app.onehaus/haus 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 app.onehaus/haus MCP server still maintained?
app.onehaus/haus is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.