Day One MCP Server
What is the Day One MCP Server?
The Day One MCP (Model Context Protocol) Server enables AI assistants like Claude to interact directly with your Day One journals. This integration allows you to create entries, search your journal history, and manage your journaling workflow naturally through conversations with AI.
With the MCP Server, you can ask your AI assistant to:
- Create journal entries from your conversations
- Search through your past entries
- Add tags, photos, and other metadata to entries
- Retrieve entries from specific dates or journals
Important: The Day One MCP server is currently available only for Day One for Mac. The server accesses your journal data directly from the Mac app’s local database.
How It Works
The Day One MCP server is a local server that runs entirely on your Mac. Here’s how it works:
- Fully Opt-In: This feature is completely inactive until you install the CLI, enable it in Labs preferences, and grant journal-specific permissions.
- Local Processing: When you use an AI assistant with Day One MCP, the server runs on your Mac and accesses your journal data directly from Day One’s local database.
- How Data Flows: The MCP server acts as a bridge between your AI assistant and your local Day One data. When you ask your AI assistant to read or create journal entries, the MCP server retrieves or updates the data locally, then returns the results to your AI assistant.
- Communication Flow:
AI Assistant (Claude, Cursor, etc.)
↓ Request (e.g., "create an entry")
Day One MCP Server (on your Mac)
↓ Accesses local data
Day One Database (on your Mac)
↓ Returns result
AI Assistant receives response
↓ Sends to LLM provider (Anthropic, OpenAI, etc.)
- Privacy Considerations: The MCP server itself doesn’t send your journal data to external services. However, the AI assistant you’re using will send any journal content it retrieves to its LLM provider (such as Anthropic for Claude, OpenAI for ChatGPT, etc.) for processing. You have full control over which journals are accessible through the MCP Access Control settings.
Setup
Prerequisites
Before setting up the MCP server, you need to install the Day One Command Line Interface (CLI).
Setting Up MCP for Claude Desktop
The easiest way to set up Day One MCP for Claude Desktop is using our MCP bundle file:
- Download the Day One MCP Bundle (
.mcpbfile) from this download link (On GitHub) - Double click the
.mcpbfile in Finder - Follow the prompts to complete installation
That’s it! Day One MCP is now installed.
Setting Up MCP for Other AI Tools
For other AI tools that support the Model Context Protocol, you’ll need to manually configure the MCP server. Here are instructions for popular tools:
Claude Code
claude mcp add --scope user --transport stdio dayone-cli /usr/local/bin/dayone mcp
Cursor
Add the following to your ~/.cursor/mcp.json file:
{
"mcpServers": {
"dayone-cli": {
"command": "/usr/local/bin/dayone",
"args": ["mcp"]
}
}
}
Gemini CLI
Add the following to your ~/.gemini/settings.json file:
{
"mcpServers": {
"dayone-cli": {
"command": "/usr/local/bin/dayone",
"args": ["mcp"]
}
}
}
Configure Journal Access
For security and privacy, you need to explicitly grant the MCP server access to specific journals:
- Open Day One on your Mac
- Go to Preferences → Labs
- Enable “Mac CLI MCP Server”
- Click “MCP Access Control”
- Toggle on the journals you want to make accessible to AI assistants
Important: Only journals with MCP access enabled will be visible to AI assistants. This gives you complete control over which journals can be accessed.

Available Tools
The Day One MCP Server provides the following tools to AI assistants:
List Journals
Returns a list of all journals that have MCP access enabled, including their IDs and names.
Use cases:
- “Show me all my journals”
- “What journals do I have?”
Create Entry
Creates a new journal entry with text content and optional metadata.
Parameters:
- text (required): The content of the journal entry in markdown format
- journal_id or journal_name (optional): Specify which journal to use
- date (optional): Entry date in ISO8601 format (e.g., ‘2025-08-20T15:30:00Z’)
- tags (optional): Comma-separated list of tags (e.g., ‘work,meeting,important’)
- attachments (optional): Comma-separated file paths to attach (images, videos, audio, PDFs)
- starred (optional): Mark the entry as starred/favorite
- all_day (optional): Mark the entry as an all-day event
Use cases:
- “Create a journal entry about today’s meeting”
- “Add a new entry to my Work Journal with tags ‘project’ and ‘ideas'”
- “Write a journal entry dated yesterday about my trip”
Get Entries
Retrieves journal entries by search query, date range, or from specific journals.
Parameters:
- journal_ids or journal_names (optional): Specify which journals to search
- query (optional): Search text to find entries
- start_date (optional): Filter entries from this date onwards (YYYY-MM-DD)
- end_date (optional): Filter entries up to this date (YYYY-MM-DD)
- limit (optional): Maximum number of entries to return (default: 10, max: 50)
Use cases:
- “Find all entries about ‘vacation’ from last year”
- “Show me entries from my Travel Journal in August”
- “What did I write about on this day in previous years?”
- “Search for entries mentioning ‘project alpha'”
Update Entry
Updates an existing journal entry’s content or metadata.
Parameters:
- entry_id (required): The ID of the entry to update
- journal_id (optional): Journal ID for unique identification
- text (optional): New content for the entry in markdown format
- tags (optional): Comma-separated list of tags (replaces existing tags)
- attachments (optional): File paths to add as attachments
- starred (optional): Update starred status
- all_day (optional): Update all-day event status
Use cases:
- “Update yesterday’s entry to add more details”
- “Add the tag ‘important’ to my last entry”
- “Edit my most recent entry to fix a typo”
Privacy and Security
Password Lock
If you have password lock enabled in Day One, the MCP server will not start. This ensures your journals remain secure when your Mac is unlocked but Day One requires authentication.
Journal-Level Access Control
You have granular control over which journals are accessible through the MCP server. Only journals you explicitly enable in the MCP Access Control panel can be accessed by AI assistants.
Local Processing
The Day One MCP server runs entirely on your Mac. Your journal data is never sent to external servers – it’s only accessible to AI assistants you’ve configured to use the MCP server.
Troubleshooting
“CLI Not Installed” Error
Make sure you’ve installed the Day One CLI by following the installation guide.
You can check if Day One CLI is properly installed by executing the following command in Terminal.app:
$ /usr/local/bin/dayone -version
If it’s installed correctly, you should see output similar to the following.
Version: 2025.23.1709
Loaded From: /Applications/Day One.app/Contents/Frameworks/CLIKit.framework
Also, you can check if Day One MCP server is enabled in the Labs by the following command.
$ /usr/local/bin/dayone mcp
If it’s enabled, you should see output similar to the following. (Then, Ctrl + C to stop the MCP server)
2025-11-20 09:13:06:950 [main ] I <App> **** NEW SESSION ****
2025-11-20 09:13:06:950 [main ] I <App> **** NEW SESSION ****
2025-11-20 09:13:06:951 [main ] I <App> dayone/0 (en_US; macOS/26.1; MacBook Pro; MacBookPro18,2; Release/0; Core/1709) <11/20/2025 09:13:06 EST(-0500)> <11/20/2025 07:13:06 MST(-0700)>
2025-11-20 09:13:06:951 [main ] I <App> dayone/0 (en_US; macOS/26.1; MacBook Pro; MacBookPro18,2; Release/0; Core/1709) <11/20/2025 09:13:06 EST(-0500)> <11/20/2025 07:13:06 MST(-0700)>
2025-11-20 09:13:06:955 [com.apple.root.u] I <Core> Starting Day One MCP Server
2025-11-20 09:13:06:955 [com.apple.root.u] I <Core> Starting Day One MCP Server
“No Journals Available” Message
This means no journals have MCP access enabled. Go to Day One → Preferences → Labs → MCP Access Control and enable access for the journals you want to use.
MCP Server Not Working in AI Assistant
- Verify the CLI is installed: Open Terminal and run
/usr/local/bin/dayone --version - Check that MCP access is enabled for at least one journal
- Restart your AI assistant application
- For Claude Desktop: Check Settings → Extensions to ensure Day One MCP is installed
FAQs
Q: Is the MCP server included in Day One?
A: The MCP server code is included in Day One’s frameworks, but it is completely inactive by default. To use it, you must:
- Manually install the Day One Command Line Interface (CLI) through Day One → Help → Install Command Line Tools
- Enable “MCP Access” in Day One → Preferences → Labs
- Grant explicit access to each journal you want to make available
Without these deliberate steps, the MCP functionality remains dormant and cannot access your journals.
Q: How do I completely disable or remove MCP access?
A: You have several options depending on your needs:
- Temporary disable: Toggle off “MCP Access” in Day One → Preferences → Labs
- Remove specific journals: Revoke access to individual journals in the MCP Access Control settings
- Complete removal: Uninstall the Day One CLI by deleting
/usr/local/bin/dayone(or wherever you installed it)
