WhyNote
Read-only search, todo listing, and daily note access for a WhyNote account
What can you do with WhyNote?
search: search note lines by case-insensitive substringtodos: list incomplete or all todo itemsread_day: read one date's complete note and etagrecent_days: read existing note days around an anchor date
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
why-note-mcpclaude mcp add whynote -e 'NOTE_URL=<NOTE_URL>' -e 'NOTE_TOKEN=<your note_token>' -- npx -y why-note-mcp@0.1.0
{
"mcpServers": {
"whynote": {
"command": "npx",
"args": [
"-y",
"why-note-mcp@0.1.0"
],
"env": {
"NOTE_URL": "<NOTE_URL>",
"NOTE_TOKEN": "<your note_token>"
}
}
}
}
Environment variables
NOTE_URLrequired Base URL of the WhyNote serviceNOTE_TOKENrequired secret Read-only token generated in WhyNote settings
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
WhyNote MCP
A zero-dependency, read-only Model Context Protocol server for searching and reading the notes in one WhyNote account.
Install
Generate a read-only token in WhyNote settings, then configure your MCP client
to run npx -y why-note-mcp with NOTE_URL and NOTE_TOKEN.
Generic project configuration:
{
"mcpServers": {
"note": {
"command": "npx",
"args": ["-y", "why-note-mcp"],
"env": {
"NOTE_URL": "https://note.example.com",
"NOTE_TOKEN": "<read-only-token>"
}
}
}
}
Claude Code:
claude mcp add --scope user note \
-e NOTE_URL=https://note.example.com \
-e NOTE_TOKEN='<read-only-token>' \
-- npx -y why-note-mcp
Codex CLI:
codex mcp add note \
--env NOTE_URL=https://note.example.com \
--env NOTE_TOKEN='<read-only-token>' \
-- npx -y why-note-mcp
Values written directly in a command may be retained in shell history. Edit the client configuration instead if that is a concern.
Node.js 18 or newer is required.
Tools
search: search note lines by case-insensitive substringtodos: list incomplete or all todo itemsread_day: read one date's complete note and etagrecent_days: read existing note days around an anchor date
Security
The server reads NOTE_URL and NOTE_TOKEN only from its environment. It sends
the token only as a Bearer credential to the configured WhyNote URL. It never
receives the account password and exposes no write tool.
Changing the WhyNote account password revokes its read-only tokens. Generate a new token in WhyNote settings when a token expires or is revoked.
Development
npm ci
npm test
npm run pack:check
The test suite uses a local fake HTTP service; it does not require a WhyNote account, network access, or third-party dependencies.
License
Frequently asked questions
What is WhyNote?
Read-only search, todo listing, and daily note access for a WhyNote account
How do I install WhyNote?
It runs on your machine. In Claude Code: claude mcp add whynote -e 'NOTE_URL=<NOTE_URL>' -e 'NOTE_TOKEN=<your note_token>' -- npx -y why-note-mcp@0.1.0. For other clients, paste the JSON configuration from this page into their MCP settings.
Does WhyNote need an API key?
Yes. It expects NOTE_URL, NOTE_TOKEN, which you set in its configuration.
Is WhyNote open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains WhyNote?
It is published by Coooolinz. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.