Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
Description from the maker (original English)
Shared memory for AI coding agents: summaries, symbol map, notes and agent-to-agent messages.
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.
MEMDEX_AGENT, MEMDEX_HOMEYou 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": {
"memdex": {
"command": "uvx",
"args": [
"memdex-mcp"
],
"env": {
"MEMDEX_AGENT": "your-value",
"MEMDEX_HOME": "your-value"
}
}
}
}Run this in your terminal
claude mcp add memdex --env MEMDEX_AGENT=your-value --env MEMDEX_HOME=your-value -- uvx memdex-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"memdex": {
"command": "uvx",
"args": [
"memdex-mcp"
],
"env": {
"MEMDEX_AGENT": "your-value",
"MEMDEX_HOME": "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": {
"memdex": {
"type": "stdio",
"command": "uvx",
"args": [
"memdex-mcp"
],
"env": {
"MEMDEX_AGENT": "your-value",
"MEMDEX_HOME": "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.
MEMDEX_AGENT envMEMDEX_HOME 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 7, 2026
The registry name was verified with the GitHub account ChoYugyeong, 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.
The registry does not list a required key, though some servers ask you to sign in on first use.
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 (0.3.1) reached the registry 6 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) 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.
memdex
Shared, token-saving memory for AI coding agents.
One SQLite file. Zero dependencies. Any MCP client. Claude Code, Codex, Cursor and DeepSeek can all remember the same things — and talk to each other.
Quick start · Adding agents · How it works · Tools · CLI · Configuration · Comparison · FAQ · 한국어
memdex is the memory coding agents share. One SQLite file, zero dependencies, no cloud. A session starts with what the last one left — summaries, decisions, messages, handoffs — instead of re-reading the same 3,000-token files and re-discovering the same pitfalls, while several agents work one repo without stepping on each other's edits.
pip install memdex-mcp # PyPI name is memdex-mcp; the command is `memdex`
memdex connect # wires claude, codex, cursor, vs code, chatgpt, … (serve-check included) memdex brief # what the last session left for you — run it now
claim what you're editing, post to other agents, read your inbox, leave a handoff for whoever comes next. All worktrees of a repository share one memory.On a real 66-file site repo, memdex bench measures 154,105 tokens to read every file versus 3,471 tokens of outlines — 98% smaller, before an agent saves a single summary. Run memdex bench in your own checkout; the token count is chars / 4, an estimate, and the ratio is the point.
Listed in the official MCP Registry as io.github.ChoYugyeong/memdex and on PyPI as memdex-mcp.
pipx install memdex-mcp # PyPI name is memdex-mcp; the command is `memdex`
memdex connect --agent claude # write the MCP entry into the agents on this machine
Claude Code (user scope, every project) — when the claude CLI is on PATH, memdex connect runs this line for you, and prints it when it is not:
claude mcp add memdex --scope user -e MEMDEX_AGENT=claude -- memdex serve
Everything else that keeps a config file — Claude Desktop, Cursor, VS Code (GitHub Copilot), Windsurf, Zed, Cline, Gemini CLI, Codex CLI, and DeepSeek Harness: memdex connect finds each one that is already installed, merges mcpServers.memdex into its config (servers.memdex with type: stdio for VS Code, context_servers.memdex for Zed, [mcp_servers.memdex] for Codex), preserves other settings, and saves a .bak before it writes. For DeepSeek Harness it adds a marked @deepseek-ai/dsh-mcp-client entry to each existing profile's cordis.patch.yml; only that managed block is replaced or removed. A client whose config folder does not exist is reported as not installed and left alone; an unreadable or malformed JSON/TOML config is left exactly as it was, and a Zed settings file with comments gets the block printed to paste instead of being rewritten (a rewrite would drop the comments). For DSH, a non-list root or a manual ID collision is also left untouched. --list shows what is installed and configured without writing, --dry-run shows the writes, --remove takes the entry out.
For DeepSeek Harness, run memdex connect --client deepseek-harness --agent deepseek --serve-check, then start a new Harness session. --serve-check verifies Memdex itself answers MCP initialize and tools/list; it does not claim the Harness loaded the plugin. Confirm the mcp__memdex__... tools appear in that session and call project_brief before delegating. The MCP entry runs the same Python package that ran connect, with the profile's current working directory as Memdex's project scope. A profile with a hand-written entry using id: memdex-memory, or a patch that is not a top-level YAML list, is left untouched for manual review.
If more than one Harness profile exists, connect stops before writing and asks for an explicit target: memdex connect --client deepseek-harness --profile desktop --agent deepseek --serve-check. The profile is the directory name under ~/.dsh/profiles (or $DSH_HOME/profiles); memdex connect --list shows the paths. This avoids silently adding the MCP server to every profile that happens to be installed.
`--serve-check` is the honest end of setup: after writing, memdex starts the server from the entry it just wrote and speaks MCP to it (initialize, then tools/list), so a wrong path, a missing interpreter or a database it cannot open is caught now instead of in the agent:
+ serve-check memdex answered: 15 tools, protocol 2024-11-05
Any model, MCP or not — MCP clients join through memdex connect; a model that can only run shell commands joins with nothing to configure. Both paths are in Adding agents.
Team scope — put the config in the repo so everyone who clones it gets memdex:
memdex connect --project # .vscode/mcp.json and .mcp.json, written with a bare `memdex` command
A committed config cannot carry this machine's absolute path, so project scope writes command: "memdex" and the teammate's PATH has to find it (pipx install memdex-mcp). With the claude CLI on PATH and --project, the CLI writes .mcp.json itself (claude mcp add memdex --scope project …) and memdex writes only the VS Code file, so one file never has two owners. --no-claude skips the CLI entirely, and --client claude-code runs only that step.
By hand, or for a client memdex does not know about:
{ "mcpServers": { "memdex": { "command": "memdex", "args": ["serve"], "env": { "MEMDEX_AGENT": "codex" } } } }
Give each agent its own MEMDEX_AGENT name; its id becomes name@checkout (e.g. claude@myrepo-wt). memdex config --agent prints the snippets above, plus an optional Claude Code SessionStart hook that injects the project brief automatically.
That's it. The server sends its own usage instructions in the MCP initialize response, so agents know the workflow (brief → file_summary before reading → remember → handoff), and when to use the task ledger for substantial work, without extra prompting.
Every agent — MCP client or not — joins the same loop in the same four steps:
MEMDEX_AGENT becomes its id (name@checkout). Two agents sharing one name cannot see each other's messages, so each gets its own.memdex doctor (✓ clients), codex mcp list for Codex, memdex connect --serve-check for the MCP handshake, memdex whoami for anything.brief, claim, post/inbox, handoff. For substantial work with independently omittable outcomes, add a tasks tree before execution so blockers and incomplete branches stay visible.MEMDEX_AGENT is a self-declared label, not an authenticated identity. A verified task means a different label recorded a peer check; it is a useful coordination signal, not cryptographic proof of who checked it.
For a long-running watcher, inbox --follow --poll 2 --notify-every 900 checks for messages every two seconds without consuming them, then prints a batch every 15 minutes. It flushes output before acknowledging the cursor; if the process stops between those steps, a numbered message may appear again, but is not lost. If a scheduler starts a fresh process on every check, use inbox --notify-every 900 instead. Its digest window is persisted per project and agent: the first check with unread messages opens a 15-minute window, later polls keep checking without consuming them, and due polls deliver the accumulated batch. Use the same agent id, project path, and interval on each run. The MCP inbox tool accepts the same notify_every value.
| Agent / model | How it joins | Verify with |
|---|---|---|
| Claude Code | memdex connect (runs claude mcp add …), plus the SessionStart hook | claude mcp list |
| Codex CLI | memdex connect → [mcp_servers.memdex] in ~/.codex/config.toml | codex mcp list |
| DeepSeek Harness | memdex connect --client deepseek-harness --agent deepseek --serve-check | new session, then call project_brief |
| Claude Desktop, Cursor, VS Code, Windsurf, Zed, Cline, Gemini CLI | memdex connect writes their config, one key each | memdex doctor |
| ChatGPT Desktop | app UI: Settings → MCP → add server (command memdex, args serve, env MEMDEX_AGENT=gpt); after the file exists, memdex connect manages it | the app's MCP panel |
| Any model that can run shell commands — a local LLM, a wrapper script, another harness | nothing to wire: set MEMDEX_AGENT and use the coordination commands | memdex whoami |
# a model with no MCP client, joining in ten seconds
MEMDEX_AGENT=codex memdex brief # what the last session left for you MEMDEX_AGENT=codex memdex claim src/store.py --intent "add retry" MEMDEX_AGENT=codex memdex task create --title "Retry support" --criterion "Retries are bounded and verified" MEMDEX_AGENT=codex memdex task create --parent 1 --title "Implement retry" --criterion "Retry path works" --owner codex MEMDEX_AGENT=codex memdex post "Retry work is underway" --group --to claude --task 1 MEMDEX_AGENT=codex memdex handoff "retry done" --next "wire timeout"
memdex connect --project puts the config in the repo so teammates get memdex on clone.
In the intended DeepSeek chat's shell, run memdex session routes --label "routing review". The CLI derives a project-local address from the checkout, agent and host conversation ID (DSH_SESSION_ID in DeepSeek or CODEX_THREAD_ID in Codex). Point both sides at the same project with `--path <che
Only the beginning is shown; read the rest in the repo