mem0-mcp
mem0-mcp
AI 에이전트가 표준화된 MCP 프로토콜을 통해 의미론적 검색(semantic search)을 사용하여 장기 기억을 저장, 검색 및 탐색할 수 있도록 Mem0 v2 API를 노출하는 MCP 서버입니다.
개요
Mem0-MCP 서버는 AI 에이전트와 영구 메모리 저장소를 연결하는 자체 호스팅 MCP(Model Context Protocol) 서버입니다. Mem0의 AsyncMemory API를 사용하여 대화 및 세션 전반에 걸쳐 지능적인 컨텍스트 유지를 가능하게 합니다.
주요 기능:
MCP 프로토콜 통합 - MCP 도구를 통해 Mem0 기능 노출
의미론적 메모리 검색 - 벡터 검색을 통한 유사도 기반 메모리 검색
멀티 테넌트 격리 - 사용자/에이전트/세션 범위의 메모리 격리
유연한 전송 - 로컬 에이전트를 위한 stdio, 원격 연결을 위한 SSE
구성 관리 - 환경 변수 지원을 포함한 Pydantic 기반 검증
Related MCP server: Amber
문서
섹션 | 설명 |
모든 모듈 및 도구에 대한 전체 API 문서 | |
디자인 패턴 문서 (싱글톤, 리포지토리 등) | |
시작하기 및 고급 사용 가이드 | |
Docker Compose 구성 및 서비스 세부 정보 | |
시스템 아키텍처 및 구성 요소 상호 작용 |
빠른 시작
설치
# Clone and install
git clone https://github.com/your-org/mem0-mcp.git
cd mem0-mcp
uv sync
# Set environment variables
export OPENAI_API_KEY="your-api-key"구성
~/.config/mem0-mcp-server/settings.json 파일을 생성합니다:
{
"vector_store": {
"provider": "redis",
"config": {
"redis_url": "redis://localhost:6379"
}
},
"llm": {
"provider": "openai",
"config": {
"model": "gpt-4o"
}
},
"embedder": {
"provider": "openai",
"config": {
"model": "text-embedding-3-small"
}
}
}서버 실행
# SSE Transport (remote connections)
uv run python -m mcp_server.main
# stdio Transport (local AI agents)
export MCP_TRANSPORT=stdio
uv run python -m mcp_server.mainMCP 도구
도구 | 설명 |
| 의미론적 인덱싱과 함께 장기 기억에 정보 저장 |
| 의미론적 유사성을 사용하여 메모리 검색 |
| ID로 특정 메모리 검색 |
| 기존 메모리 내용 업데이트 |
| 저장소에서 메모리 삭제 |
| 필터링 및 페이지네이션을 사용하여 메모리 목록 조회 |
사용 예제
# Add memory
result = await client.call_tool("add_memory", {
"messages": [{"role": "user", "content": "I prefer dark mode"}],
"user_id": "alice"
})
# Search memories
result = await client.call_tool("search_memories", {
"query": "theme preferences",
"filters": {"user_id": "alice"},
"limit": 5
})아키텍처
AI Agent → FastMCP Server → MemoryManager → Mem0 AsyncMemory → Redis
│ │
├── SafeLogger (stdout/stderr) │
├── Transport (stdio/SSE) │
└── Config (Pydantic validation) │구성 요소:
COMP-1: ConfigLoader - 구성 로딩 및 검증
COMP-2: FastMCP Server - MCP 프로토콜 서버
COMP-3: MemoryManager - 멀티 테넌트 격리를 통한 메모리 작업
COMP-4: MCP Tools - 도구 정의
COMP-5: SafeLogger - 출력 스트림 분리
구성
매개변수 우선순위
구성 값은 다음 순서로 결정됩니다:
도구 매개변수 (직접)
환경 변수 (MCP_ 접두사 포함)
구성 파일 값
하드코딩된 기본값
환경 변수
변수 | 기본값 | 설명 |
| (필수) | LLM을 위한 OpenAI API 키 |
|
| 전송 유형 (stdio, sse) |
|
| 서버 바인딩 주소 |
|
| 서버 바인딩 포트 |
배포
Docker
# Using docker-compose
docker-compose up -d
# Using Makefile
make docker-up # Start services with docker compose
make docker-down # Stop services
make docker-logs # Show logs서비스:
서비스 | 설명 |
| 8050 포트에서 Mem0 API를 노출하는 MCP 서버 |
| 벡터 임베딩을 위한 |
| 채팅 완성을 위한 |
자세한 구성은 배포 → Docker를 참조하세요.
Kubernetes
# Using Helm chart
helm install mem0-mcp ./charts/mem0-mcp-server개발
명령어 | 설명 |
| uv를 사용하여 종속성 설치 |
| ruff를 사용하여 코드 린트 |
| 린트 문제 자동 수정 |
| pyright를 사용하여 타입 체크 |
| 모든 테스트 실행 |
| 단위 테스트만 실행 |
| 커버리지 보고서와 함께 테스트 실행 |
| Docker 이미지 빌드 |
| 개발 서버 실행 |
여러 명령어 실행: make install && make lint && make typecheck && make test
Docker 관리(docker-up, docker-down, docker-logs 등)를 포함한 모든 사용 가능한 명령어는 Makefile을 참조하세요.
프로젝트 구조
mem0-mcp/
├── src/mcp_server/
│ ├── __init__.py # FastMCP singleton
│ ├── lifespan.py # Resource lifecycle
│ ├── transport.py # Transport selection
│ ├── memory/
│ │ ├── manager.py # MemoryManager
│ │ └── lifespan.py # AsyncMemory lifecycle
│ ├── config/
│ │ ├── settings.py # Pydantic models
│ │ └── loader.py # Config file loading
│ ├── tools/
│ │ ├── add_memory.py
│ │ ├── search_memories.py
│ │ └── ...
│ └── utils/
│ └── safe_logger.py # Output separation
├── doc/
│ ├── api/ # API reference
│ ├── patterns/ # Pattern guides
│ ├── examples/ # Usage examples
│ └── architecture/ # Architecture docs
├── tests/
├── Makefile
├── Dockerfile
└── docker-compose.yml라이선스
MIT 라이선스
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted memory for AI agents over MCP. One memory shared by all your agents.
Persistent memory, knowledge graph, task management and more for AI agents via MCP.
Cloud-hosted MCP server for durable AI memory
Remote ChromaDB vector database MCP server with streamable HTTP transport
Related MCP Servers
- AlicenseAqualityDmaintenanceSelf-hosted remote MCP memory server for ChatGPT and AI agents.342MIT
- AlicenseAqualityBmaintenanceGives your AI persistent memory across conversations. Stores facts automatically, finds them by meaning using hybrid search with query expansion, and organizes everything into topics without manual tagging.181MIT
- AlicenseAqualityAmaintenanceMCP server for Statewave, an open-source memory runtime for AI agents. Provides persistent memory, context retrieval, and memory compilation through the Model Context Protocol.615 npm4Apache 2.0
- FlicenseNot gradedqualityCmaintenancePersistent memory MCP server for AI agents that stores, recalls, and searches conversation history, key-value context, and long-term entries across sessions with semantic search and FIFO queues.526 npm1-