Client Setup

Connect your IDE agent to the Memori MCP server. Each client uses a local MCP configuration with your API key and attribution headers.

Prerequisites

  • A Memori API key from app.memorilabs.ai
  • An entity_id (identifies the end user) and optional process_id (identifies the agent or workflow)

Set these as environment variables or replace the placeholders directly in the config:

export MEMORI_API_KEY="your-memori-api-key"
export MEMORI_ENTITY_ID="user_123"
export MEMORI_PROCESS_ID="my_agent" # optional

Cursor

Create ~/.cursor/mcp.json (global) or .cursor/mcp.json (project-level):

{
  "mcpServers": {
    "memori": {
      "url": "https://api.memorilabs.ai/mcp/",
      "headers": {
        "X-Memori-API-Key": "${MEMORI_API_KEY}",
        "X-Memori-Entity-Id": "${MEMORI_ENTITY_ID}",
        "X-Memori-Process-Id": "${MEMORI_PROCESS_ID}"
      }
    }
  }
}

Restart Cursor after saving the file.

Claude Code

You can configure via the CLI or a .mcp.json file.

CLI

claude mcp add --transport http memori https://api.memorilabs.ai/mcp/ \
  --header "X-Memori-API-Key: ${MEMORI_API_KEY}" \
  --header "X-Memori-Entity-Id: ${MEMORI_ENTITY_ID}" \
  --header "X-Memori-Process-Id: ${MEMORI_PROCESS_ID}"

Project Config

Create .mcp.json in your project root:

{
  "mcpServers": {
    "memori": {
      "type": "http",
      "url": "https://api.memorilabs.ai/mcp/",
      "headers": {
        "X-Memori-API-Key": "${MEMORI_API_KEY}",
        "X-Memori-Entity-Id": "${MEMORI_ENTITY_ID}",
        "X-Memori-Process-Id": "${MEMORI_PROCESS_ID}"
      }
    }
  }
}

Run /mcp inside Claude Code to verify the server status.

OpenAI Codex

Codex reads MCP server configuration from ~/.codex/config.toml. Add this:

[mcp_servers.memori]
enabled = true
url = "https://api.memorilabs.ai/mcp/"

[mcp_servers.memori.http_headers]
X-Memori-API-Key = "${MEMORI_API_KEY}"
X-Memori-Entity-Id = "${MEMORI_ENTITY_ID}"
X-Memori-Process-Id = "${MEMORI_PROCESS_ID}"

X-Memori-Process-Id is optional.

You can also add the server from the Codex UI: Settings > Settings > MCP Servers > + Add Server.

Warp

Warp cloud agents support MCP JSON config with remote URLs. Add the Memori server to your Warp MCP configuration:

{
  "memori": {
    "serverUrl": "https://api.memorilabs.ai/mcp/",
    "headers": {
      "X-Memori-API-Key": "your-memori-api-key",
      "X-Memori-Entity-Id": "user_123",
      "X-Memori-Process-Id": "my_agent"
    }
  }
}

X-Memori-Process-Id is optional.

Antigravity

Open Manage MCP Servers and edit mcp_config.json:

{
  "mcpServers": {
    "memori": {
      "serverUrl": "https://api.memorilabs.ai/mcp/",
      "headers": {
        "X-Memori-API-Key": "your-memori-api-key",
        "X-Memori-Entity-Id": "user_123",
        "X-Memori-Process-Id": "my_agent"
      }
    }
  }
}

Save and restart Antigravity so the tool list refreshes.

LangChain

Set headers dynamically based on the current user session:

from langchain_mcp_adapters.client import MultiServerMCPClient

client = MultiServerMCPClient({
    "memori": {
        "transport": "streamable_http",
        "url": "https://api.memorilabs.ai/mcp/",
        "headers": {
            "X-Memori-API-Key": "your-memori-api-key",
            "X-Memori-Entity-Id": "user_123",
            "X-Memori-Process-Id": "langchain_agent"
        }
    }
})

# Load the tools to be used by your LangChain agent
tools = await client.get_tools()

Slack

Set headers dynamically per request using the Slack user ID from the event payload:

const memoriHeaders = {
  "X-Memori-API-Key": process.env.MEMORI_API_KEY,
  "X-Memori-Entity-Id": slackEvent.user,         // e.g. "U04ABCDEF"
  "X-Memori-Process-Id": "supportbot",
};

Pass these headers in every MCP tool call. session_id is derived automatically from entity_id and the current UTC hour. Use process_id to isolate memories by integration or workspace so preferences from a personal workspace don't bleed into a team workspace.

Notion

Set the entity and process IDs from the Notion API user object:

const memoriHeaders = {
  "X-Memori-API-Key": process.env.MEMORI_API_KEY,
  "X-Memori-Entity-Id": notionUser.id,              // e.g. "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  "X-Memori-Process-Id": "notion_writing_assistant",
};

Pass these headers in every MCP tool call. session_id is derived automatically from entity_id and the current UTC hour. Use process_id to isolate memories by integration or workspace so preferences from a personal workspace don't bleed into a team workspace.

Verifying the Connection

After configuring any client:

  1. Confirm the MCP server shows as connected in your client's UI
  2. Check that recall and advanced_augmentation appear in the tools list
  3. Send a test message — recall should return a response (even if empty for new entities)
  4. Verify advanced_augmentation returns memory being created

If you receive 401 errors, double-check your X-Memori-API-Key value. See Troubleshooting for more help.