Memstate + Gemini CLI
Give Google's Gemini CLI persistent, structured memory via MCP.
Gemini CLI is a powerful terminal-based AI agent from Google. Memstate adds a structured memory layer via MCP — so Gemini remembers your architecture, past decisions, and project context across every session.
Get Your API Key
Sign up for free at Memstate AI and create an API key from your dashboard. No credit card required.
Sign Up FreeAlready have an account? Go to API Keys →
Add MCP Configuration
Add the following to your Gemini CLI MCP configuration file. Replace YOUR_API_KEY_HERE with your key.
{
"mcpServers": {
"memstate": {
"command": "npx",
"args": ["-y", "@memstate/mcp"],
"env": {
"MEMSTATE_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}📁 Where to put this config:
~/.gemini/settings.json%USERPROFILE%\.gemini\settings.jsonRestart Gemini CLI
Gemini CLI reads MCP servers from its settings file. After editing, restart the Gemini CLI process.
Gemini CLI MCP Support
Gemini CLI added MCP support in recent versions. Make sure you're running the latest version: npm update -g @google/gemini-cli
Add Agent Instructions
Paste this into your project's AGENTS.md, CLAUDE.md, or GEMINI.md. This tells your agent how to use Memstate automatically.
# Memstate MCP - Memory Storage
This project uses Memstate MCP for versioned memory. Keypaths are hierarchical (e.g. `project.myapp.database`).
## Which tool when
- **memstate_remember** — PREFERRED for markdown, task summaries, meeting notes. Server extracts keypaths automatically.
- **memstate_set** — Only for single keypath = single short value (e.g. config.port).
- **memstate_get** — Browse project, fetch existing knowledge before tasks.
- **memstate_search** — Find by meaning when you don't know the keypath.
- **memstate_history** — View version history of a keypath.
## Before each task
Check what already exists: `memstate_get(project_id="myproject")`
## After each task
Save a summary: `memstate_remember(project_id="myproject", content="## Summary\n- What was done\n- Key decisions", source="agent")`Why this matters
Without instructions, your agent won't know to use Memstate proactively. This snippet tells it to check existing memories before tasks and save summaries after — keeping your project context current across every session.
Verify the Connection
Restart Gemini CLI, then ask your agent:
Use memstate_get() to list all my projects and confirm Memstate is connected.You're all set!
Gemini CLI now has access to structured, versioned memory. It will automatically look up existing knowledge before tasks and save summaries after completion — keeping your project context current and organized across every session.
Alternative: Install as an Agent Skill
Prefer a portable, project-committed approach? Install the Memstate skill directly into your repo. Skills are loaded automatically by compatible agents (Claude Code, Cline, Cursor) without needing manual AGENTS.md edits.
npx @memstate/skills setupSee the Skills documentation for full details on supported agents and manual installation options.