사전 조건
검토된 settings.json MCP 구성 및 브라우저 OAuth 지원이 포함된 Gemini CLI 개발자 도구를 사용하세요. 지원은 Gemini CLI 개발자 도구에 적용되며 Gemini 소비자 웹 채팅(gemini.google.com) 통합이나 공식 확장 갤러리 승인을 의미하지 않습니다.
- 엔드포인트: https://xmemo.dev/mcp.
- 인증 모드: OAuth.
- 구성 파일: ~/.gemini/settings.json.
- 전송: Streamable HTTP (호스팅된 엔드포인트용 httpUrl).
- 확장 저장소: github:yonro/xmemo-gemini-cli (매니페스트 0.1.0, 문서화된 GitHub 설치, 공식 갤러리 승인 추론 없음).
설치 / 설정
Gemini CLI extensions 명령을 사용하여 확장을 설치하거나, mcpServers 아래의 ~/.gemini/settings.json 에 XMemo 구성 블록을 수동으로 병합하세요.
- 확장 명령: gemini extensions install https://github.com/yonro/xmemo-gemini-cli (yonro/xmemo-gemini-cli @ 39e25b185b README 기준).
- 수동 대체 방법: httpUrl 및 ID 헤더를 보존하면서 XMemo 블록을 ~/.gemini/settings.json 에 병합합니다.
gemini extensions install https://github.com/yonro/xmemo-gemini-cli자격 증명 설정
키 없음 — Gemini CLI를 재시작한 후 브라우저 OAuth를 완료합니다. settings.json에 XMEMO_KEY 또는 Authorization header를 넣지 않습니다.
No XMEMO_KEY
Complete browser OAuth in Gemini CLIXMEMO_AGENT_INSTANCE_ID 생성 / 확인
Gemini CLI 로컬 설치마다 secret이 아닌 값을 하나 생성하고 git 밖에 저장한 뒤 재시작 후에도 재사용하여 attribution을 안정적으로 유지합니다.
export XMEMO_AGENT_INSTANCE_ID='<stable-local-instance-id>'기존 구성 블록 유지
이 페이지에 렌더링된 기존 Gemini CLI XMemo 구성 블록을 사용합니다. httpUrl과 비밀이 아닌 identity header를 유지하고 Authorization 또는 XMEMO_KEY를 추가하지 않습니다.
{
"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}"
}
}
}
}클라이언트 재시작
settings.json을 저장한 후 Gemini CLI를 재시작하여 엔드포인트와 현재 instance identity를 불러온 다음 OAuth consent를 완료합니다.
실제 recall 호출로 테스트
첫 MCP 호출은 읽기 전용으로 수행합니다. 이는 health-check placeholder가 아닌 실제 recall 호출이며 memory를 쓰지 않습니다.
recall({ query: "connection check", limit: 1 })예상 응답 (리터럴 형태)
성공한 호출은 아래의 공개 ranked text 형태를 반환합니다. reference와 content는 승인된 memory space의 실제 값입니다.
### XMemo Memory Results:
1. Reference: <opaque-memory-id> | Location: <location>
> <memory content>일반적인 오류
Gemini CLI의 OAuth 실패는 호스팅 OAuth 오류 contract를 사용합니다.
- invalid_grant — OAuth authorization code가 유효하지 않거나 만료되었거나 이미 사용되었습니다: Gemini CLI를 다시 연결하고 재인증합니다.
- invalid_target — OAuth resource가 이 MCP server와 일치하지 않습니다: https://xmemo.dev/mcp를 사용하여 다시 연결합니다.
- 403 insufficient_scope — grant에 memory:read 권한이 없습니다: 요청된 scope를 승인하고 다시 연결합니다.
Gemini CLI MCP 설정
구성 파일: ~/.gemini/settings.json
OAuth client: merge this XMemo block into settings.json, set one stable XMEMO_AGENT_INSTANCE_ID for local attribution, then restart Gemini CLI and complete MCP OAuth. Do not add Authorization or XMEMO_KEY to this snippet.
{
"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}"
}
}
}
}클라이언트 준비 상태
- Evidence required
- Planned
- See /product/docs#client-capability-matrix; this OAuth config does not imply a Gemini marketplace listing.
출처: 클라이언트 기능 매트릭스