XMemo MCP setup lives in Docs because auth differs by client. ChatGPT, VS Code / GitHub Copilot, and Gemini CLI use hosted OAuth; direct/headless clients use the hosted Streamable HTTP URL plus XMEMO_KEY from the local environment or secret store.
VS Code / GitHub Copilot
%APPDATA%\Code\User\mcp.json
{
"servers": {
"XMemo": {
"type": "http",
"url": "https://xmemo.dev/mcp"
}
}
}
Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"XMemo": {
"url": "https://xmemo.dev/mcp",
"headers": {
"Authorization": "Bearer ${env:XMEMO_KEY}",
"X-Memory-OS-Agent-ID": "cursor",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Codex
~/.codex/config.toml
[mcp_servers.XMemo]
url = "https://xmemo.dev/mcp"
bearer_token_env_var = "XMEMO_KEY"
[mcp_servers.XMemo.http_headers]
X-Memory-OS-Agent-ID = "codex"
[mcp_servers.XMemo.env_http_headers]
X-Memory-OS-Agent-Instance-ID = "XMEMO_AGENT_INSTANCE_ID"
Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"XMemo": {
"httpUrl": "https://xmemo.dev/mcp",
"headers": {
"X-Memory-OS-Agent-ID": "gemini-cli",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Claude Desktop
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"XMemo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://xmemo.dev/mcp",
"--header",
"Authorization:Bearer ${XMEMO_KEY}",
"--header",
"X-Memory-OS-Agent-ID:claude-desktop",
"--header",
"X-Memory-OS-Agent-Instance-ID:${XMEMO_AGENT_INSTANCE_ID}"
],
"env": {
"XMEMO_AGENT_INSTANCE_ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Devin Desktop (formerly Windsurf)
~/.config/devin/mcp_config.json
{
"mcpServers": {
"XMemo": {
"serverUrl": "https://xmemo.dev/mcp",
"headers": {
"Authorization": "Bearer ${env:XMEMO_KEY}",
"X-Memory-OS-Agent-ID": "windsurf",
"X-Memory-OS-Agent-Instance-ID": "${env:XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Kiro
~/.kiro/settings/mcp.json
{
"mcpServers": {
"XMemo": {
"url": "https://xmemo.dev/mcp",
"headers": {
"X-Memory-OS-Agent-ID": "kiro",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
},
"oauth": {
"oauthScopes": [
"memory:read",
"knowledge:read"
]
}
}
}
}
Muse Code
~/.config/muse/settings.json
{"schema_version": 1, "mcpServers": {"xmemo": {"type": "streamable-http", "url": "https://xmemo.dev/mcp", "mode": "optional"}}}
OpenClaw
~/.openclaw/openclaw.json
{
"mcpServers": {
"XMemo": {
"url": "https://xmemo.dev/mcp",
"headers": {
"Authorization": "Bearer ${env:XMEMO_KEY}",
"X-Memory-OS-Agent-ID": "openclaw",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Copilot CLI
~/.copilot/mcp-config.json
{
"mcpServers": {
"XMemo": {
"type": "http",
"url": "http://127.0.0.1:8765/mcp"
}
}
}
ChatGPT / OpenAI Apps SDK
OpenAI Platform app management dashboard
{
"mcpServers": {
"XMemo": {
"url": "https://xmemo.dev/mcp",
"transport": "streamable-http",
"auth": {
"type": "oauth2",
"resource": "https://xmemo.dev/mcp",
"scopes": ["memory:read", "memory:write"]
}
}
}
}
Autonomous agent
Agent runner MCP config
{
"mcpServers": {
"XMemo": {
"type": "http",
"transport": "streamable-http",
"url": "https://xmemo.dev/mcp",
"headers": {
"X-Memory-OS-Agent-ID": "autonomous-agent",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
},
"auth": {
"type": "oauth2",
"flow": "authorization_code",
"pkce_required": true,
"resource": "https://xmemo.dev/mcp",
"scopes": ["memory:read", "memory:write"]
},
"fallback": {
"use_when": "headless runner cannot complete OAuth sign-in or persist OAuth tokens",
"authorization_header": "Bearer ${XMEMO_KEY}"
}
}
}
}
Other
Any MCP-capable agent
{
"mcpServers": {
"XMemo": {
"transport": "streamable-http",
"url": "https://xmemo.dev/mcp",
"headers": {
"Authorization": "Bearer ${XMEMO_KEY}",
"X-Memory-OS-Agent-ID": "${XMEMO_AGENT_ID}",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Kimi Code
~/.kimi-code/mcp.json
{
"mcpServers": {
"XMemo": {
"url": "https://xmemo.dev/mcp",
"bearerTokenEnvVar": "XMEMO_KEY",
"headers": {
"X-Memory-OS-Agent-ID": "kimi-code",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Claude Code
~/.claude.json
{
"mcpServers": {
"XMemo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://xmemo.dev/mcp",
"--header",
"Authorization:Bearer ${XMEMO_KEY}",
"--header",
"X-Memory-OS-Agent-ID:claude-code",
"--header",
"X-Memory-OS-Agent-Instance-ID:${XMEMO_AGENT_INSTANCE_ID}"
],
"env": {
"XMEMO_AGENT_INSTANCE_ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Claude Desktop
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"XMemo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://xmemo.dev/mcp",
"--header",
"Authorization:Bearer ${XMEMO_KEY}",
"--header",
"X-Memory-OS-Agent-ID:claude-desktop",
"--header",
"X-Memory-OS-Agent-Instance-ID:${XMEMO_AGENT_INSTANCE_ID}"
],
"env": {
"XMEMO_AGENT_INSTANCE_ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Cline (VS Code)
~/Documents/Cline/MCP/cline_mcp_settings.json
{
"mcpServers": {
"XMemo": {
"httpUrl": "https://xmemo.dev/mcp",
"headers": {
"Authorization": "Bearer ${env:XMEMO_KEY}",
"X-Memory-OS-Agent-ID": "cline",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Continue (VS Code / JetBrains)
~/.continue/config.json
{
"mcpServers": {
"XMemo": {
"transport": {
"type": "streamable-http",
"url": "https://xmemo.dev/mcp",
"headers": {
"Authorization": "Bearer ${XMEMO_KEY}",
"X-Memory-OS-Agent-ID": "continue",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
}
Zed
Zed settings.json (varies by OS)
{
"context_servers": {
"XMemo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://xmemo.dev/mcp",
"--header",
"Authorization:Bearer ${XMEMO_KEY}",
"--header",
"X-Memory-OS-Agent-ID:zed",
"--header",
"X-Memory-OS-Agent-Instance-ID:${XMEMO_AGENT_INSTANCE_ID}"
],
"env": {
"XMEMO_AGENT_INSTANCE_ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Trae
Trae user config mcp.json (varies by OS)
{
"mcpServers": {
"XMemo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://xmemo.dev/mcp",
"--header",
"Authorization:Bearer ${XMEMO_KEY}",
"--header",
"X-Memory-OS-Agent-ID:trae",
"--header",
"X-Memory-OS-Agent-Instance-ID:${XMEMO_AGENT_INSTANCE_ID}"
],
"env": {
"XMEMO_AGENT_INSTANCE_ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Grok
~/.grok/config.toml
{
"mcpServers": {
"XMemo": {
"type": "http",
"url": "https://xmemo.dev/mcp",
"headers": {
"Authorization": "Bearer ${XMEMO_KEY}",
"X-Memory-OS-Agent-ID": "grok",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Antigravity 2.0
~/.gemini/config/mcp_config.json
{
"mcpServers": {
"XMemo": {
"serverUrl": "https://xmemo.dev/mcp",
"headers": {
"X-Memory-OS-Agent-ID": "antigravity",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
Qwen
~/.qwen/settings.json
{
"mcpServers": {
"XMemo": {
"httpUrl": "https://xmemo.dev/mcp",
"headers": {
"X-Memory-OS-Agent-ID": "qwen",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}
OpenCode
~/.config/opencode/opencode.json
{
"mcp": {
"XMemo": {
"type": "remote",
"url": "https://xmemo.dev/mcp",
"enabled": true,
"headers": {
"X-Memory-OS-Agent-ID": "opencode",
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
}
}
}
}