Unofficial MCP to talk with your Cozi Family Organizer account.
概览
An unofficial Model Context Protocol server that lets AI assistants like Claude read and update your Cozi Family Organizer lists and calendar. Each user runs their own instance against their own Cozi account. Your credentials are stored in your MCP client's secure config (Claude Desktop's OS keychain or your local environment) and never leave your machine — the author of this server has no access to your data. Download the latest .mcpb from the Releases page and double-click to install in Claude Desktop. You'll be prompted for your Cozi username and password — they're stored securely in your OS keychain. This path requires no Node, npm, or Python install on your machine. Add this to your Claude Desktop claude_desktop_config.json (or any other MCP client config file): Requires Node 20+. The package will be downloaded on first run. Set COZI_READ_ONLY=true to expose only read operations.
README
以下为原文 README 节选,完整内容请查看原文。
Cozi MCP Server
An unofficial Model Context Protocol server that lets AI assistants like Claude read and update your Cozi Family Organizer lists and calendar.
Each user runs their own instance against their own Cozi account. Your credentials are stored in your MCP client’s secure config (Claude Desktop’s OS keychain or your local environment) and never leave your machine — the author of this server has no access to your data.
Install
1. MCPB (recommended for Claude Desktop)
Download the latest .mcpb from the Releases page and double-click to install in Claude Desktop. You’ll be prompted for your Cozi username and password — they’re stored securely in your OS keychain.
This path requires no Node, npm, or Python install on your machine.
2. npx (any other MCP client)
Add this to your Claude Desktop claude_desktop_config.json (or any other MCP client config file):
{
"mcpServers": {
"cozi": {
"command": "npx",
"args": ["-y", "@mjucius/cozi-mcp"],
"env": {
"COZI_USERNAME": "[email protected]",
"COZI_PASSWORD": "your-password",
"COZI_READ_ONLY": "true"
}
}
}
}
Requires Node 20+. The package will be downloaded on first run.
Set COZI_READ_ONLY=true to expose only read operations. In read-only mode, the server registers
family_members, get_lists, get_list_items, get_calendar, search_calendar, and today; tools that create, update, or
delete Cozi data are hidden from MCP clients. Omit the variable, or set it to any value other than
1, true, yes, or on, for the default read-write tool surface.
Troubleshooting
Tools fail with “Authentication failed” even after I corrected my password
COZI_USERNAME and COZI_PASSWORD are read once, when the server process
starts. Editing them in your MCP client’s settings updates the stored config but
does not reach a server that is already running — it keeps presenting the old
credentials until it is respawned.
Fully quit and relaunch your MCP client (on macOS, Cmd-Q rather than closing the window). Reloading, reconnecting, or toggling the extension off and on is usually not enough.
How do I tell which version is actually running?
The running server advertises its version in the MCP handshake; your client
displays it (Claude Desktop: Settings > Extensions). That is independent of what
is in your working tree — installing an MCPB installs whatever is inside the
.mcpb file, which is only as current as the last npm run bundle:mcpb. Build
the bundle immediately before installing it, or install from a GitHub release.
Repeated failures start returning “Too many failed login attempts”
Five consecutive failed authentications for a username trigger an exponential
安装
npx -y @mjucius/cozi-mcp配置
{
"mcpServers": {
"cozi": {
"command": "npx",
"args": ["-y", "@mjucius/cozi-mcp"],
"env": {
"COZI_USERNAME": "[email protected]",
"COZI_PASSWORD": "your-password",
"COZI_READ_ONLY": "true"
}
}
}
}