Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Descripción del creador (original en inglés)
OurFamilyWizard co-parenting for Claude — messages, calendar, expenses, and journal
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
OFW_USERNAME, OFW_PASSWORD, OFW_WRITE_MODE, OFW_CALENDAR_WRITES, OFW_ALLOW_MARK_READ, OFW_CONFIRM_MARK_READ, OFW_FETCH_UNREAD_BODIES, OFW_READ_DAYS, OFW_NO_READ_DAYS, OFW_SESSION_CACHE, OFW_SESSION_FILE, OFW_EXPENSE_ONLY, OFW_EXPENSE_UPLOAD_ONLY, OFW_INLINE_ATTACHMENTS, OFW_ATTACHMENTS_DIR, OFW_UPLOAD_DIR, OFW_CACHE_IDENTITY, OFW_CACHE_DIR, OFW_DISABLE_FETCHPROXY, OFW_AUTO_REFRESH, OFW_FRESHNESS_TTL_SECONDS, OFW_SYNC_MAX_REQUESTS, OFW_REQUEST_TIMEOUT_MS, OFW_DEBUG_LOG, DISPLAY_TZ, FETCHPROXY_WS_PORT, FETCHPROXY_WS_HOST, FETCHPROXY_IDENTITY_DIRLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"ofw": {
"command": "npx",
"args": [
"-y",
"ofw-mcp"
],
"env": {
"OFW_USERNAME": "your-value",
"OFW_PASSWORD": "your-value",
"OFW_WRITE_MODE": "your-value",
"OFW_CALENDAR_WRITES": "your-value",
"OFW_ALLOW_MARK_READ": "your-value",
"OFW_CONFIRM_MARK_READ": "your-value",
"OFW_FETCH_UNREAD_BODIES": "your-value",
"OFW_READ_DAYS": "your-value",
"OFW_NO_READ_DAYS": "your-value",
"OFW_SESSION_CACHE": "your-value",
"OFW_SESSION_FILE": "your-value",
"OFW_EXPENSE_ONLY": "your-value",
"OFW_EXPENSE_UPLOAD_ONLY": "your-value",
"OFW_INLINE_ATTACHMENTS": "your-value",
"OFW_ATTACHMENTS_DIR": "your-value",
"OFW_UPLOAD_DIR": "your-value",
"OFW_CACHE_IDENTITY": "your-value",
"OFW_CACHE_DIR": "your-value",
"OFW_DISABLE_FETCHPROXY": "your-value",
"OFW_AUTO_REFRESH": "your-value",
"OFW_FRESHNESS_TTL_SECONDS": "your-value",
"OFW_SYNC_MAX_REQUESTS": "your-value",
"OFW_REQUEST_TIMEOUT_MS": "your-value",
"OFW_DEBUG_LOG": "your-value",
"DISPLAY_TZ": "your-value",
"FETCHPROXY_WS_PORT": "your-value",
"FETCHPROXY_WS_HOST": "your-value",
"FETCHPROXY_IDENTITY_DIR": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add ofw --env OFW_USERNAME=your-value --env OFW_PASSWORD=your-value --env OFW_WRITE_MODE=your-value --env OFW_CALENDAR_WRITES=your-value --env OFW_ALLOW_MARK_READ=your-value --env OFW_CONFIRM_MARK_READ=your-value --env OFW_FETCH_UNREAD_BODIES=your-value --env OFW_READ_DAYS=your-value --env OFW_NO_READ_DAYS=your-value --env OFW_SESSION_CACHE=your-value --env OFW_SESSION_FILE=your-value --env OFW_EXPENSE_ONLY=your-value --env OFW_EXPENSE_UPLOAD_ONLY=your-value --env OFW_INLINE_ATTACHMENTS=your-value --env OFW_ATTACHMENTS_DIR=your-value --env OFW_UPLOAD_DIR=your-value --env OFW_CACHE_IDENTITY=your-value --env OFW_CACHE_DIR=your-value --env OFW_DISABLE_FETCHPROXY=your-value --env OFW_AUTO_REFRESH=your-value --env OFW_FRESHNESS_TTL_SECONDS=your-value --env OFW_SYNC_MAX_REQUESTS=your-value --env OFW_REQUEST_TIMEOUT_MS=your-value --env OFW_DEBUG_LOG=your-value --env DISPLAY_TZ=your-value --env FETCHPROXY_WS_PORT=your-value --env FETCHPROXY_WS_HOST=your-value --env FETCHPROXY_IDENTITY_DIR=your-value -- npx -y ofw-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"ofw": {
"command": "npx",
"args": [
"-y",
"ofw-mcp"
],
"env": {
"OFW_USERNAME": "your-value",
"OFW_PASSWORD": "your-value",
"OFW_WRITE_MODE": "your-value",
"OFW_CALENDAR_WRITES": "your-value",
"OFW_ALLOW_MARK_READ": "your-value",
"OFW_CONFIRM_MARK_READ": "your-value",
"OFW_FETCH_UNREAD_BODIES": "your-value",
"OFW_READ_DAYS": "your-value",
"OFW_NO_READ_DAYS": "your-value",
"OFW_SESSION_CACHE": "your-value",
"OFW_SESSION_FILE": "your-value",
"OFW_EXPENSE_ONLY": "your-value",
"OFW_EXPENSE_UPLOAD_ONLY": "your-value",
"OFW_INLINE_ATTACHMENTS": "your-value",
"OFW_ATTACHMENTS_DIR": "your-value",
"OFW_UPLOAD_DIR": "your-value",
"OFW_CACHE_IDENTITY": "your-value",
"OFW_CACHE_DIR": "your-value",
"OFW_DISABLE_FETCHPROXY": "your-value",
"OFW_AUTO_REFRESH": "your-value",
"OFW_FRESHNESS_TTL_SECONDS": "your-value",
"OFW_SYNC_MAX_REQUESTS": "your-value",
"OFW_REQUEST_TIMEOUT_MS": "your-value",
"OFW_DEBUG_LOG": "your-value",
"DISPLAY_TZ": "your-value",
"FETCHPROXY_WS_PORT": "your-value",
"FETCHPROXY_WS_HOST": "your-value",
"FETCHPROXY_IDENTITY_DIR": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"ofw": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"ofw-mcp"
],
"env": {
"OFW_USERNAME": "your-value",
"OFW_PASSWORD": "your-value",
"OFW_WRITE_MODE": "your-value",
"OFW_CALENDAR_WRITES": "your-value",
"OFW_ALLOW_MARK_READ": "your-value",
"OFW_CONFIRM_MARK_READ": "your-value",
"OFW_FETCH_UNREAD_BODIES": "your-value",
"OFW_READ_DAYS": "your-value",
"OFW_NO_READ_DAYS": "your-value",
"OFW_SESSION_CACHE": "your-value",
"OFW_SESSION_FILE": "your-value",
"OFW_EXPENSE_ONLY": "your-value",
"OFW_EXPENSE_UPLOAD_ONLY": "your-value",
"OFW_INLINE_ATTACHMENTS": "your-value",
"OFW_ATTACHMENTS_DIR": "your-value",
"OFW_UPLOAD_DIR": "your-value",
"OFW_CACHE_IDENTITY": "your-value",
"OFW_CACHE_DIR": "your-value",
"OFW_DISABLE_FETCHPROXY": "your-value",
"OFW_AUTO_REFRESH": "your-value",
"OFW_FRESHNESS_TTL_SECONDS": "your-value",
"OFW_SYNC_MAX_REQUESTS": "your-value",
"OFW_REQUEST_TIMEOUT_MS": "your-value",
"OFW_DEBUG_LOG": "your-value",
"DISPLAY_TZ": "your-value",
"FETCHPROXY_WS_PORT": "your-value",
"FETCHPROXY_WS_HOST": "your-value",
"FETCHPROXY_IDENTITY_DIR": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
OFW_USERNAME envOFW_WRITE_MODE envOFW_CALENDAR_WRITES envOFW_ALLOW_MARK_READ envOFW_CONFIRM_MARK_READ envOFW_FETCH_UNREAD_BODIES envOFW_READ_DAYS envOFW_NO_READ_DAYS envOFW_SESSION_CACHE envOFW_SESSION_FILE envOFW_EXPENSE_ONLY envOFW_EXPENSE_UPLOAD_ONLY envOFW_INLINE_ATTACHMENTS envOFW_ATTACHMENTS_DIR envOFW_UPLOAD_DIR envOFW_CACHE_IDENTITY envOFW_CACHE_DIR envOFW_DISABLE_FETCHPROXY envOFW_AUTO_REFRESH envOFW_FRESHNESS_TTL_SECONDS envOFW_SYNC_MAX_REQUESTS envOFW_REQUEST_TIMEOUT_MS envOFW_DEBUG_LOG envDISPLAY_TZ envFETCHPROXY_WS_PORT envFETCHPROXY_WS_HOST envFETCHPROXY_IDENTITY_DIR envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 9 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub chrischall, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: OFW_PASSWORD
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (2.27.4) llegó al registro ayer.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Finance Toolkit, SolidInvoice, Korea Tax Calculator
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.
Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
A Model Context Protocol server that connects Claude to OurFamilyWizard, giving you natural-language access to your co-parenting messages, calendar, expenses, and journal.
[!WARNING]
AI-developed project. This codebase was entirely built and is actively maintained by Claude Sonnet 4.6. No human has audited the implementation. Review all code and tool permissions before use.
Ask Claude things like:
node:sqlite is the cache backend)By using this MCP server, you acknowledge and agree to the following:
1. This server accesses your own OurFamilyWizard account. Auth happens via your own credentials. It does not — and cannot — access your co-parent's account, your children's accounts, or anyone else's.
2. [OurFamilyWizard's Terms](https://www.ourfamilywizard.com/legal/terms) govern your use of this server, just as they govern your direct use of OFW. There is no explicit anti-scraping clause; the governing language is broader:
Users may not obtain or attempt to obtain any materials or information through any means not intentionally made available.
And on credentials: *"You are solely responsible for (1) maintaining the strict confidentiality of assigned Authentication Methods, (2) instructing any individual to whom the assigned Authentication Method is shared ('Authorized User') to not allow another person to use the Authentication Method."* OFW does contemplate "Authorized Users" and third-party-enabled integrations — but the account holder remains responsible.
You are agreeing to those terms — read by the maintainer 2026-05-23 — every time you invoke a tool in this server.
3. Personal, family use only. This project is not affiliated with, endorsed by, sponsored by, or in partnership with OurFamilyWizard, LLC or its parent. It is a personal automation tool for the named account holder. Do not use it on behalf of a co-parent without their consent, do not share credentials with anyone, and do not use it to bulk-extract another family's data.
4. OFW is a court-of-record platform. Messages, expenses, calendar entries, and journal entries on OFW may be entered into legal proceedings — including custody, divorce, and parenting-plan-modification cases. Anything this server writes to OFW (drafts you save, events you create, expenses you log) will appear with the same legal weight as if you had typed it yourself. Do not let this MCP send a message, create an event, or log an expense that you have not read and approved. Review every write operation before confirming.
5. You accept full responsibility for any consequences — both technical (account warnings, suspension) and legal (anything OFW records about your account activity). The MCP author is not your attorney; if you're using OFW in connection with an active legal matter, talk to your actual attorney before automating anything.
This section is the maintainer's good-faith summary of the terms — it is not legal advice and does not modify or supersede OurFamilyWizard's actual ToS.
git clone https://github.com/chrischall/ofw-mcp.git
cd ofw-mcp npm install npm run build
Edit your Claude Desktop config file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonAdd the ofw entry inside "mcpServers" (create the key if it doesn't exist):
{
"mcpServers": { "ofw": { "command": "node", "args": ["/absolute/path/to/ofw-mcp/dist/index.js"], "env": { "OFW_USERNAME": "your-email@example.com", "OFW_PASSWORD": "your-ofw-password" } } } }
Replace /absolute/path/to/ofw-mcp with the actual path where you cloned the repo. On Mac, run pwd inside the cloned directory to get it.
Quit completely (Cmd+Q on Mac, not just close the window) and relaunch.
Ask Claude: *"What does my OFW dashboard look like?"* — it should show your unread message count, upcoming events, and outstanding expenses.
ofw-mcp tries three auth paths in order; whichever succeeds first is used. Existing setups keep working unchanged.
OFW_USERNAME + OFW_PASSWORD and the server logs in via OFW's form endpoint. This is the path shown in the Claude Desktop config above.localStorage["auth"] once at startup from your already-signed-in ourfamilywizard.com tab via the ContextMint Bridge browser extension (built on fetchproxy). After that one read, all OFW API calls go directly from Node — the extension is not in the request hot path. Install ContextMint Bridge from its releases page (Chrome: download the Chrome zip, unzip it, and load it unpacked at chrome://extensions with Developer mode on; Safari is not available yet — it will ship inside the ContextMint app, which has no public download — so use Chrome for now), sign into OurFamilyWizard once, and the MCP just works. ContextMint Bridge is the fetchproxy browser extension under its new name, from the same maintainer — fetchproxy's own README (https://github.com/chrischall/fetchproxy#extension) points to it. Its source is public at https://github.com/nullnet-app/contextmint-bridge: build it yourself, or check a release zip against the .sha256 file published beside it (shasum -a 256 -c contextmint-bridge-chrome- .zip.sha256). If you have multiple OFW accounts and want them to use separate caches, set OFW_CACHE_IDENTITY to a label per profile.OFW_DISABLE_FETCHPROXY=1 to skip the fetchproxy fallback entirely (turns missing credentials into a hard error — useful in headless CI).Option A — env block in Claude Desktop config (shown above, recommended):
"env": {
"OFW_USERNAME": "your-email@example.com", "OFW_PASSWORD": "your-ofw-password" }
Option B — `.env` file in the project directory:
cp .env.example .env
Environment variables always take priority over the .env file. You can also pass them directly on the command line:
OFW_USERNAME=you@example.com OFW_PASSWORD=yourpass node dist/index.js
Read-only tools run automatically. Writes that reach your co-parent or the court-visible record — Confirm (server) below — are confirmed by the server itself before anything is sent (see Server-side confirmation); the other writes rely on your MCP host's own approval prompt (Confirm). The *Write mode* column shows the minimum OFW_WRITE_MODE a tool needs to be available at all — see Write protection below.
| Tool | What it does | Permission | Write mode |
|---|---|---|---|
ofw_get_profile | Your profile and co-parent info | Auto | any |
ofw_get_notifications | Dashboard counts (unread messages, upcoming events, outstanding expenses). Updates your co-parent-visible last-seen status, so it is not marked read-only | Confirm | any |
ofw_list_message_folders | Folders with unread counts — get folder IDs here before listing messages | Auto | any |
ofw_list_messages | Messages in a folder | Auto | any |
ofw_get_message | Full content of a single message | Auto | any |
ofw_sync_messages | Sync messages into the local cache and list every new message (newMessages). Unread inbox bodies are left unfetched, so a sync never marks anything read unless you ask for it; if it ever does, the response says so (warning, markedRead) | Auto | any |
ofw_get_unread_sent | Sent messages a recipient hasn't read yet (from local cache) | Auto | any |
ofw_check_freshness | Cheap live check that the cache still matches OFW — per id, whether it is still a draft or was sent/deleted, without a full sync | Auto | any |
ofw_status | One live call for "where does everything stand?" — the full verified draft inventory, and the current state of any ids or draft keys | Auto | any |
ofw_download_attachment | Download a message attachment to disk, inline as extracted content / bytes, or (hosted) as a private expiring link | Auto | any |
ofw_send_message | Send a message | Confirm (server) | all |
ofw_list_drafts | Draft messages | Auto | any |
ofw_save_draft | Create or update a draft | Confirm | drafts |
ofw_delete_draft | Delete a draft | Confirm | drafts |
ofw_upload_attachment | Upload files to My Files — from a hosted session via signed upload slots (uploadSlots → PUT → blobKeys) or base64 inline; locally from the upload directory (path). Returns fileIds to attach via ofw_send_message/ofw_save_draft (which can also take inlineAttachments/blobKeys directly). Sharing (shareClass: SHARED) needs mode all | Auto (PRIVATE) / Confirm (server) (SHARED) | drafts |
ofw_list_events | Calendar events and custody handoffs in a date range; filter with types, read in a per-call timeZone, or get iCalendar text with format: "ics" | Auto | any |
ofw_save_calendar_ics | Save a date range as an .ics file — custody schedule included, which OFW's own export leaves out. A private, expiring download link on a hosted connector; a file in the attachments directory locally | Auto | any |
ofw_create_event | Create a calendar event | Confirm (server) unless private | all (or drafts + OFW_CALENDAR_WRITES) |
ofw_update_event | Update a calendar event | Confirm (server) if shared | all (or drafts + OFW_CALENDAR_WRITES) |
ofw_delete_event | Delete a calendar event | Confirm (server) if shared | all (or drafts + OFW_CALENDAR_WRITES) |
ofw_get_expense_totals | Expense summary totals | Auto | any |
ofw_list_expenses | Expense history | Auto | any |
ofw_list_expense_categories | Expense category ids and split metadata | Auto | any |
ofw_upload_expense_pdf | Upload a receipt PDF to My Files for an expense (SHARED — the co-parent sees it in My Files at once, even on a private expense) | Confirm (server) | all |
ofw_create_expense | Log a new expense; supports private entries and one receipt PDF | Confirm (server) | all |
ofw_mark_expense_reimbursed | Irreversibly record full remaining external reimbursement; no transfer or partial payment; unavailable in upload-only mode | Confirm (server) | all |
ofw_update_expense | Change an expense, e.g. publish a private one. Pass only the fields to change; it reads the expense first so the rest are kept | Confirm (server) | all |
ofw_list_journal_entries | Journal entries | Auto | any |
| ofw_create_journal_entry | Create a journ
Solo se muestra el principio; lee el resto en el repo