unified-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@unified-mcpremember that I like to take lunch at 12:30"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
unified-mcp
OpenMemory と Cipher を束ねるラッパー MCP サーバー。
add_memories / search_memory の1回の呼び出しで両方に同時に記録・検索できる。
バージョン・変更履歴は GitHub Releases を参照。
構成
unified-mcp.js は stdio と HTTP の2モードで起動できる。
stdioモード(Claude Desktop / Claude Code など)
Client (stdio)
↓
unified-mcp.js
├→ OpenMemory(mcp-remote Streamable HTTP → localhost:8765)
└→ Cipher(stdio)
HTTPモード(Streamable HTTP 対応クライアント全般)
Client
↓ POST /mcp
unified-mcp.js --http --port <N>
├→ OpenMemory(mcp-remote Streamable HTTP → localhost:8765)
└→ Cipher(stdio)HTTPモードはCORS対応済みで、クライアントが要求する protocolVersion をそのまま返すネゴシエーションを行う。外部公開する場合はTLS終端・認証をリバースプロキシ側で用意すること(unified-mcp.js自体は認証を持たない)。
Related MCP server: mem0_mcp_server
セットアップ
1. 依存インストール
npm install2. 起動方法
HTTPモード
node unified-mcp.js --http --port 3100POST http://<host>:<port>/mcp でStreamable HTTP JSON-RPCを受け付ける。環境変数は下記「3. 環境変数」を参照(--http利用時もstdioモードと同じ環境変数が必要)。
stdioモード: claude_desktop_config.json
macOS
{
"mcpServers": {
"unified-memory": {
"command": "node",
"args": ["<path-to>/unified-mcp.js"],
"env": {
"PATH": "<node-bin-dir>:/usr/local/bin:/usr/bin:/bin",
"OPENMEMORY_URL": "http://localhost:8765/mcp/claude/http/ubuntu",
"CIPHER_CMD": "<node-bin-dir>/cipher",
"CIPHER_CWD": "<path-to>/cipher",
"CIPHER_AGENT_CONFIG": "<path-to>/cipher.yml",
"NPX_PATH": "<node-bin-dir>/npx",
"OPENAI_API_KEY": "sk-proj-...",
"MCP_SERVER_MODE": "aggregator",
"USE_ASK_CIPHER": "true"
}
}
}
}<node-bin-dir>: nodebrew 等の bin ディレクトリ(例:~/.nodebrew/current/bin)CIPHER_AGENT_CONFIGを指定するとcipher --mode mcp --agent <config>で直接起動NPX_PATHを指定すると、そのディレクトリが PATH に自動追加される
Windows
{
"mcpServers": {
"unified-memory": {
"command": "node",
"args": ["<path-to>\\unified-mcp.js"],
"env": {
"OPENMEMORY_URL": "http://localhost:8765/mcp/claude/http/ubuntu",
"CIPHER_CMD": "npm.cmd",
"CIPHER_CWD": "<path-to>\\cipher",
"OPENAI_API_KEY": "sk-proj-...",
"MCP_SERVER_MODE": "aggregator",
"USE_ASK_CIPHER": "true",
"PATH": "C:\\Program Files\\nodejs;C:\\Windows\\System32"
}
}
}
}CIPHER_AGENT_CONFIG未指定時はnpm run mcpで起動(OS共通の挙動。Windowsに限らずmacOSでも同じ)
Claude Code
~/.claude.json の mcpServers に追加する。
Cipher aggregator モードには MCP_SERVER_MODE と USE_ASK_CIPHER が必要。
{
"mcpServers": {
"unified-memory": {
"type": "stdio",
"command": "node",
"args": ["<path-to>/unified-mcp.js"],
"env": {
"PATH": "<node-bin-dir>:/usr/local/bin:/usr/bin:/bin",
"OPENMEMORY_URL": "http://localhost:8765/mcp/claude/http/ubuntu",
"CIPHER_CMD": "<node-bin-dir>/cipher",
"CIPHER_CWD": "<path-to>/cipher",
"CIPHER_AGENT_CONFIG": "<path-to>/cipher.yml",
"NPX_PATH": "<node-bin-dir>/npx",
"OPENAI_API_KEY": "sk-proj-...",
"MCP_SERVER_MODE": "aggregator",
"USE_ASK_CIPHER": "true"
}
}
}
}3. 環境変数
変数 | 説明 | 必須 |
| OpenMemory の mcp-remote エンドポイント | ✅ |
| Cipher の実行コマンド(macOS: フルパス, Windows: | ✅ |
| Cipher の作業ディレクトリ | ✅ |
| Cipher サーバーモード( | ✅ |
|
| ✅ |
| Cipher(子プロセス)が使う OpenAI API キー。unified-mcp.js 自体は起動時にチェックしないが、無いと Cipher 側の処理が失敗する | Cipherの動作に必須 |
| npx のフルパス(macOS でPATH が通らない場合) | |
| cipher.yml のパス(指定時は直接起動) |
上表の「✅」5つ(OPENMEMORY_URL, CIPHER_CMD, CIPHER_CWD, MCP_SERVER_MODE, USE_ASK_CIPHER)は未設定だと unified-mcp.js が起動時に即エラー終了する。OPENAI_API_KEYは unified-mcp.js 自体はチェックしないため未設定でも起動はするが、Cipher の呼び出しが失敗する。
ツール
ツール名 | 説明 |
| OpenMemory と Cipher の両方に記憶を保存 |
| OpenMemory と Cipher の両方から検索 |
既知の制限事項
クライアント側のレスポンスタイムアウトが短い場合(HTTPモードでのStreamable HTTP接続など)、Cipherのadd処理に十数〜数十秒かかることがあり、間に合わずタイムアウトする場合がある
クライアントが要求する MCP
protocolVersionとサーバー応答が一致しないと接続できない。unified-mcp.jsはクライアントの要求値をそのまま返すが、クライアント側の実装によっては別の値を期待している場合がある
前提
OpenMemory が
OPENMEMORY_URLで疎通できる状態で起動していること(起動方法はDocker Compose・systemd等、問わない)Cipher が起動できる状態
OpenMemory には
mcp-remote経由で Streamable HTTP 接続
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceA local MCP server for RAG memory, semantic search, and context optimization using Ollama and SQLite. It serves as a central hub that manages document embeddings, text compression, and proxies calls to other sub-MCP servers.
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides memory management tools for AI agents, enabling adding, searching, updating, and deleting memories via the Mem0 API.41MIT
- AlicenseNot gradedqualityAmaintenanceA self-hosted MCP server that provides a unified memory vault across MCP clients with hybrid BM25+vector search.1MIT
- AlicenseNot gradedqualityBmaintenanceA local MCP server that provides a shared, private memory for multiple AI tools, enabling cross-model recall and automatic session ingestion.551MIT
Related MCP Connectors
An MCP memory server. One memory your agents share — across models, devices and apps.
Cloud-hosted MCP server for durable AI memory
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/shooebill/unified-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server