estatehelm
v1.0.23
Published
CLI tools for EstateHelm - includes MCP server for Claude Code and other AI assistants
Maintainers
Readme
EstateHelm CLI
Command-line tools for EstateHelm, including an MCP (Model Context Protocol) server for AI assistants like Claude Code.
Installation
npm install -g estatehelmQuick Start
1. Login
estatehelm loginThis will:
- Open your browser for OAuth authentication
- Prompt for your Recovery Key
- Register this device as a trusted device
- Sync your encrypted data locally
2. Configure Claude Code
Windows:
claude mcp add --transport stdio estatehelm -- cmd /c npx estatehelm mcpMac/Linux:
claude mcp add --transport stdio estatehelm -- npx estatehelm mcpFor staging environment:
# Windows
claude mcp add --transport stdio estatehelm-staging -- cmd /c npx estatehelm mcp --staging
# Mac/Linux
claude mcp add --transport stdio estatehelm-staging -- npx estatehelm mcp --stagingVerify with claude mcp list.
3. Use with Claude Code
Start Claude Code and you can now ask questions like:
- "What pets do I have?"
- "Show me upcoming maintenance tasks"
- "What's the WiFi password for the cabin?"
- "What insurance policies are expiring soon?"
Commands
estatehelm login
Authenticate with EstateHelm and register this device.
estatehelm logout
Remove credentials and revoke device access.
estatehelm mcp [options]
Start the MCP server.
Options:
-m, --mode <mode>- Privacy mode:safe(default) orfull-t, --token <token>- MCP access token (or set ESTATEHELM_MCP_TOKEN env var)--poll <interval>- Background sync interval (e.g.,15m)
estatehelm status
Show current login status and cache information.
estatehelm sync [options]
Force sync cache from server.
Options:
-t, --token <token>- MCP access token (or set ESTATEHELM_MCP_TOKEN env var)
estatehelm cache clear
Clear local cache (keeps credentials).
estatehelm cache stats
Show cache statistics.
estatehelm config set <key> <value>
Set a configuration value.
Available keys:
defaultMode- Default privacy mode (fullorsafe)
estatehelm config get [key]
Get configuration value(s).
Privacy Modes
Safe Mode (default)
Sensitive fields (passwords, account numbers, etc.) are redacted. Use this when sharing your screen or when uncertain.
estatehelm mcp --mode safeFull Mode
All data is returned as-is. Use this when you're alone and want full access.
estatehelm mcp --mode fullRedacted fields by entity type:
password: password, notesidentity: password, recoveryKey, securityAnswersbank_account: accountNumber, routingNumberinvestment: accountNumberaccess_code: code, pincredential: documentNumber (shows last 4)
MCP Resources
The server exposes your EstateHelm data as MCP resources:
estatehelm://households- List all householdsestatehelm://households/{id}- Specific householdestatehelm://households/{id}/{entityType}- Entities by type
Supported entity types:
pet, property, vehicle, contact, insurance, bank_account, investment, subscription, maintenance_task, password, access_code, document, medical, prescription, credential, utility
MCP Tools
| Tool | Description | Parameters |
|------|-------------|------------|
| search_entities | Full-text search across entities | query (required), householdId, entityType |
| get_household_summary | Overview with entity counts | householdId (required) |
| get_expiring_items | Items expiring within N days | days (default: 30), householdId |
| get_file | Download and decrypt a file attachment | fileId, householdId, entityId, entityType (all required) |
| refresh | Force re-sync from server | none |
get_expiring_items checks:
- Insurance policies (
expiration_date) - Vehicle registrations (
registration_expiration) - Vehicle tabs (
tabs_expiration) - Subscriptions (
expiration_date)
get_file returns:
fileName: Original filenamemimeType: File MIME typesize: File size in bytesdata: Base64-encoded decrypted file content
MCP Prompts
| Prompt | Description |
|--------|-------------|
| household_summary | "Give me an overview of my household" |
| expiring_soon | "What's expiring in the next 30 days?" |
| emergency_contacts | "Show me emergency contacts" |
Security
- Zero-knowledge: Your data is encrypted locally. The server never sees plaintext.
- Recovery key: Only used locally for key derivation. Never uploaded.
- Device revocable: Remove from Settings → Trusted Devices in EstateHelm
- OS keychain: Credentials stored securely in your OS keychain
- Safe mode: Optional field-level redaction for sensitive data
Data Location
macOS: ~/Library/Application Support/estatehelm/
Windows: C:\Users\<name>\AppData\Roaming\estatehelm\
Linux: ~/.local/share/estatehelm/
Contents:
├── cache.db # SQLite database (encrypted entities)
├── config.json # User preferences
└── .device-id # Device identifierTroubleshooting
"Not logged in"
Run estatehelm login to authenticate.
"Failed to load encryption keys"
Your credentials may have been revoked. Run estatehelm logout then estatehelm login again.
"Device was removed"
The device was revoked from EstateHelm settings. Run estatehelm login to re-register.
Cache issues
Try clearing the cache: estatehelm cache clear, then estatehelm sync --token YOUR_TOKEN.
License
Proprietary. Copyright EstateHelm.
