Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
Description from the maker (original English)
Your notes in one folder on your own server; AI clients read and edit it under write policies
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
EVERKEEP_VAULT, EVERKEEP_CONFIGYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"everkeep": {
"command": "npx",
"args": [
"-y",
"everkeep"
],
"env": {
"EVERKEEP_VAULT": "your-value",
"EVERKEEP_CONFIG": "your-value"
}
}
}
}Run this in your terminal
claude mcp add everkeep --env EVERKEEP_VAULT=your-value --env EVERKEEP_CONFIG=your-value -- npx -y everkeepFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"everkeep": {
"command": "npx",
"args": [
"-y",
"everkeep"
],
"env": {
"EVERKEEP_VAULT": "your-value",
"EVERKEEP_CONFIG": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"everkeep": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"everkeep"
],
"env": {
"EVERKEEP_VAULT": "your-value",
"EVERKEEP_CONFIG": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
EVERKEEP_CONFIG envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account st412m, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: EVERKEEP_VAULT
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.1.0) reached the registry 10 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Agent-Native Google Calendar - manage events, sync, and public booking
Lets AI create and edit Excel files itself, including formulas, charts and PivotTables, without Excel installed.
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Stop re-explaining yourself to your AI.
Everkeep keeps your notes, decisions and projects in one folder on your own server. Your AI assistant reads it when a chat starts and writes down what you worked out — so tomorrow's conversation picks up where today's ended. You decide what it may change; it can't delete or overwrite anything you haven't allowed.
Works with Claude and any MCP client · runs on Linux, Docker or Home Assistant
Drop contracts, invoices, manuals, price lists and exported reports into the folder as they are — PDF, Word, Excel, PowerPoint, e-mails. Your AI reads them as text, searches all of them at once and tells you where it found the answer: *"which contract has a 30-day payment term?"* comes back with the file and the page. No uploading files into every chat, no copy-pasting; a new version of a file is read the next time it is needed. Scanned pages it looks at as images.
Files go into the folder by ordinary copying, like into any other folder: see putting your files in.
This gets Everkeep running on your own computer with Docker and connects Claude to it. You need about ten minutes and no programming.
1. Install Docker. On Windows or macOS, install Docker Desktop and start it; wait until it says Docker is running. On Linux, install Docker Engine.
2. Start Everkeep. Open a terminal (on Windows: PowerShell; on macOS: Terminal) and paste the two lines for your system. The first creates the folder everkeep-notes in your home folder; that folder is where your notes will live. The second downloads Everkeep and starts it in the background; it starts again by itself after a reboot.
Windows (PowerShell):
mkdir $HOME\everkeep-notes
docker run -d --name everkeep --restart unless-stopped -p 127.0.0.1:3100:3100 -v "$HOME\everkeep-notes:/vault" -v everkeep-data:/data ghcr.io/st412m/everkeep:1.1.0
macOS or Linux:
mkdir -p ~/everkeep-notes
docker run -d --name everkeep --restart unless-stopped -p 127.0.0.1:3100:3100 -v "$HOME/everkeep-notes:/vault" -v everkeep-data:/data ghcr.io/st412m/everkeep:1.1.0
On Linux the folder must be writable by user id 1000. If the command id -u prints a different number, follow Docker: who owns the folder instead.
3. Protect your notes. One more line, in the same terminal:
docker exec everkeep everkeep policy set . --mode rev --trash
From now on Claude can create new files in the folder, but it can change an existing file only after reading it, so it never overwrites what it has not seen. Nothing is deleted: a file Claude discards goes into the folder .vault-trash inside everkeep-notes, and you can take it back from there.
4. Get your token. Everkeep made a secret token on its first start. Show it:
docker exec everkeep everkeep token
It prints two lines. The first is the secret path for claude.ai, the second the header for other clients:
/private_<token>/mcp
Authorization: Bearer
Treat both like a password: whoever has them can read and change your notes.
5. Connect Claude.
claude mcp add --transport http everkeep http://127.0.0.1:3100/mcp --header "Authorization: Bearer <token>"
https:// /private_ /mcp.6. Try it.
about-me.md with what you know about my current projects."* The file appears in your everkeep-notes folder.explorer $HOME\everkeep-notes in the same PowerShell (or go to This PC → Users → your name → everkeep-notes); on macOS, type open ~/everkeep-notes in Terminal (or Finder → your home folder); on Linux, open your home folder in the file manager.contracts/, projects/….To have Claude read your notes at the start of every chat, add a line like this in Settings → Account → Instructions for Claude, or to a project's instructions: *"At the start of a chat, read /vault/about-me.md with Everkeep."* Inside Docker your folder is /vault.
To change the rules for a folder, see Write policies.
Everkeep is an MCP server. MCP is the way AI clients such as Claude call tools on other machines. Everkeep's tools work on one directory tree, the *vault*: read, search, edit, move and discard files, read documents and PDFs, query SQLite databases read-only. Nothing outside the vault can be reached through it.
What the assistant may change is set per directory with *write policies*: a directory can be read-only, editable only by someone who has read the current version of a file, open to new files only, or free. There is no delete: discarding moves a file into a trash directory of its zone. The assistant cannot change the policies; you set them on the server.
It runs as one process, over HTTP for remote clients such as claude.ai and over stdio for local ones such as Claude Desktop.
The assistant lists a directory. The first line says what is allowed there:
Policy: overwrite=rev, trash=.vault-trash, auto-purge after 30 d — own marker (/vault/wiki/.vault-policy)
[FILE] .vault-policy [DIR] .vault-trash [FILE] decisions.md [FILE] todo.md
It tries to overwrite todo.md without having read it, and is refused:
Error: Refused — policy "overwrite: rev": changing an existing file requires its current rev, which is 5db20d56. Nothing was written. Repeat the call with rev: "5db20d56".
It searches, gets line numbers and the file's rev, and edits one line:
/vault/wiki/todo.md · rev 5db20d56 · 212 lines
148: - [ ] Check backup-rotation settings on the NAS
— 1 match(es) in 1 file(s) · scanned 37/37 files, 190 KB, 12 ms
| Docker | Docker Desktop (Windows, macOS) or Docker Engine (Linux); images for amd64 and arm64 (Raspberry Pi 4/5) |
| Linux without Docker | Node.js ≥ 22.17, poppler-utils (pdfinfo, pdftoppm), sqlite3 |
| Home Assistant | OS or Supervised, through the ha-filesystem-mcp app |
| Disk | the Docker image is about 340 MB; the npm package with its dependencies about 48 MB |
| For claude.ai | a public HTTPS address: see remote access |
The image ghcr.io/st412m/everkeep runs everkeep serve on port 3100 as user id 1000, with the vault at /vault and its own state (token, document cache) in the volume /data. The Quick start shows docker run; compose.example.yaml does the same with Docker Compose. Folder ownership, updates and building the image yourself: installation.
Install poppler-utils and sqlite3 with your package manager, then run it with npx:
npx --yes --package=everkeep everkeep serve --vault /home/me/notes
On first start it prints the token once; everkeep token shows it again. For a permanent everkeep command, a CPU without AVX (some Celeron, Atom and Pentium models) and a systemd service, see installation. Windows and macOS are not supported without Docker.
Install the ha-filesystem-mcp app. It runs Everkeep with the vault under /media or /share and adds the Vault policies page to the sidebar.
Settings come from flags, environment variables and an optional JSON file (EVERKEEP_CONFIG, else ~/.config/everkeep/config.json). The ones to know first:
| Setting | Flag / variable | Default |
|---|---|---|
vault | --vault, EVERKEEP_VAULT | none, required |
host | --host | 127.0.0.1 |
port | --port | 3100 |
state_dir | EVERKEEP_STATE_DIR | ~/.local/state/everkeep |
| token | --token-file, EVERKEEP_TOKEN | generated into /token |
everkeep check-config prints what is in force and checks the tools Everkeep needs. Every key, the token rules and the request log: configuration.
https:// /private_ /mcp. The address must be public HTTPS: remote access. claude mcp add --transport stdio everkeep -- npx --yes --package=everkeep everkeep --vault /home/me/notes
http://127.0.0.1:3100/mcp (or your HTTPS address) with the header Authorization: Bearer , see installation.There is no OAuth: the token is the only key. A wrong path gets an empty 404, a wrong Bearer token 401.
20 tools. Parameters and return formats: tools.
Reading
read_text_file — a whole file, head/tail lines, or an offset/limit range with line count and rev; documents as numbered linesread_multiple_files — several whole files in one responseread_media_file — image or audio as base64read_pdf_text — text of a PDF or a page range, numbered like read_text_fileread_pdf_page — one PDF page rendered as JPEGSearching
grep_files — regex search of file contents, documents included; returns path, rev, line count and matching linessearch_files — find files and directories by nameWriting
write_file — create or overwrite a fileedit_file — literal oldText replacement, or line-addressed edits guarded by revcreate_directory — create a directory and its parentsmove_file — move or rename a file or directory; also restores from the trashcopy_file — copy a file; the destination follows the rules of write_filetrash_file — move a file into its zone's trash; there is no deleteListing
list_directory — entries of one directory, after the policy linelist_directory_with_sizes — entries with file sizes, sorted by name or sizedirectory_tree — tree view, two levels deepget_file_info — size, times and format, plus line count and rev for text filesOnly the beginning is shown; read the rest in the repo