Skip to content

Gemini CLI emem, the verifiable memory protocol for the physical world fetch

How to: Gemini CLI emem, the verifiable memory protocol for the physical world fetch

client:Gemini CLI transport:streamable-http tool:fetch

Add emem, the verifiable memory protocol for the physical world to Gemini CLI

  1. 01

    Open ~/.gemini/settings.json and merge this in. Keep any servers already there.

{
  "mcpServers": {
    "emem": {
      "httpUrl": "https://emem.dev/mcp"
    }
  }
}
  1. 02

    Save the file and restart Gemini CLI.

  2. 03

    Ask for something fetch does. Gemini CLI lists the server's tools on connect and calls fetch itself — you do not invoke it by name.

  3. 04

    If nothing happens, check the server is running and that emem, the verifiable memory protocol for the physical world's identifier in your config matches the one above exactly.

Gemini expands $VAR and ${VAR} inside env values, so a secret can live in your shell rather than this file. Gemini CLI docs

Set these first

emem, the verifiable memory protocol for the physical world will not start until these are set, so fetch never becomes available.

  • PORT
  • EMEM_BIND
  • EMEM_DATA
  • EMEM_PUBLIC_URL
  • EMEM_TLS_DOMAINS

Same tool, other clients

This list was read from the server itself, by connecting to it and calling tools/list on 24 September 2026. It is what the server actually exposes, not what its listing claims.

Mutating and Read-only are read off each tool's name, not its schema — a hint, not a guarantee. The registry stores tool names only; connect the server for its live schemas.