Mnemo
██╗ ██████╗ ██████╗ ██████╗ ███████╗
██║ ██╔═══██╗██╔════╝ ██╔═══██╗██╔════╝
██║ ██║ ██║██║ ███╗██║ ██║███████╗
██║ ██║ ██║██║ ██║██║ ██║╚════██║
███████╗╚██████╔╝╚██████╔╝╚██████╔╝███████║
╚══════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝
███████╗██╗ ██╗ ██╗██╗ ██╗
██╔════╝██║ ██║ ██║╚██╗██╔╝
█████╗ ██║ ██║ ██║ ╚███╔╝
██╔══╝ ██║ ██║ ██║ ██╔██╗
██║ ███████╗╚██████╔╝██╔╝ ██╗
╚═╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝Mnemo
GeminiコンテキストキャッシュによるAIアシスタントのための拡張メモリ。
Mnemo(ギリシャ語で「記憶」)は、Geminiの100万トークンのコンテキストウィンドウとコンテキストキャッシュ機能を活用することで、ClaudeのようなAIアシスタントに大規模なコードベース、ドキュメントサイト、PDFなどへのアクセスを提供します。
なぜMnemoなのか?
埋め込みや検索を行う複雑なRAGパイプラインの代わりに、Mnemoはよりシンプルなアプローチを採用しています:
コードベース全体をGeminiのコンテキストキャッシュに読み込む
自然言語でクエリを実行する
Geminiがコンテキストを保持し、Claudeがオーケストレーションを行う
これにより、以下が実現します:
完璧なリコール - チャンク化や検索を行わないため、コンテキストの欠落がありません
低レイテンシ - キャッシュされたコンテキストは高速に提供されます
コスト削減 - キャッシュされたトークンは、通常の入力トークンより75〜90%安価です
シンプルさ - ベクトルデータベース、埋め込み、複雑な検索ロジックは不要です
Related MCP server: Heimdall MCP Server
Mnemoで読み込めるもの
ソース | ローカルサーバー | Worker |
GitHubリポジトリ (公開) | ✅ | ✅ |
GitHubリポジトリ (非公開) | ✅ | ✅ |
任意のURL (ドキュメント、記事) | ✅ | ✅ |
PDFドキュメント | ✅ | ✅ |
JSON API | ✅ | ✅ |
ローカルファイル/ディレクトリ | ✅ | ❌ |
複数ページのクロール | ✅ 無制限 | ✅ 最大40ページ |
デプロイオプション
Mnemoはニーズに応じて3つの方法でデプロイできます。
オプション1: ローカルサーバー (開発および全機能)
開発時やローカルファイルを読み込む必要がある場合に最適です。
# Clone and install
git clone https://github.com/logos-flux/mnemo
cd mnemo
bun install
# Set your Gemini API key
export GEMINI_API_KEY=your_key_here
# Start the server
bun run devClaude Code MCP設定:
{
"mcpServers": {
"mnemo": {
"type": "http",
"url": "http://localhost:8080/mcp"
}
}
}オプション2: セルフホスト型Cloudflare Worker (Claude.ai向け推奨)
自身のCloudflareアカウントにデプロイします。データとコストを自分で管理できます。
前提条件:
Cloudflareアカウント (無料枠で動作します)
# Clone and install
git clone https://github.com/logos-flux/mnemo
cd mnemo/packages/cf-worker
# Configure secrets
bunx wrangler secret put GEMINI_API_KEY
bunx wrangler secret put MNEMO_AUTH_TOKEN # Optional but recommended
# Create D1 database
bunx wrangler d1 create mnemo-cache
# Deploy
bunx wrangler deployClaude.ai MCP設定:
{
"mcpServers": {
"mnemo": {
"type": "http",
"url": "https://mnemo.<your-subdomain>.workers.dev/mcp",
"headers": {
"Authorization": "Bearer YOUR_AUTH_TOKEN"
}
}
}
}なぜこれを使うのか? Claude.aiはlocalhostに接続できません。Workerを使用することで、Claude.aiがアクセス可能な外部エンドポイントを提供します。
オプション3: マネージドホスティング (VIP)
インフラを管理したくない場合、一部のクライアント向けにフルマネージドのMnemoホスティングを提供しています。
内容:
専用Workerデプロイ
優先サポート
カスタムドメイン
利用状況モニタリング
連絡先: 価格と空き状況については lf@logosflux.io までお問い合わせください。
使用例
# Load a GitHub repo
curl -X POST http://localhost:8080/tools/context_load \
-H "Content-Type: application/json" \
-d '{"source": "https://github.com/honojs/hono", "alias": "hono"}'
# Load a documentation site (crawls up to token target)
curl -X POST http://localhost:8080/tools/context_load \
-H "Content-Type: application/json" \
-d '{"source": "https://hono.dev/docs", "alias": "hono-docs"}'
# Load a PDF
curl -X POST http://localhost:8080/tools/context_load \
-H "Content-Type: application/json" \
-d '{"source": "https://arxiv.org/pdf/2303.08774.pdf", "alias": "gpt4-paper"}'
# Load a private repo (with GitHub token)
curl -X POST http://localhost:8080/tools/context_load \
-H "Content-Type: application/json" \
-d '{"source": "https://github.com/owner/private-repo", "alias": "private", "githubToken": "ghp_xxx"}'
# Load multiple sources into one cache
curl -X POST http://localhost:8080/tools/context_load \
-H "Content-Type: application/json" \
-d '{"sources": ["https://github.com/owner/repo", "https://docs.example.com"], "alias": "combined"}'
# Query the cache
curl -X POST http://localhost:8080/tools/context_query \
-H "Content-Type: application/json" \
-d '{"alias": "hono", "query": "How do I add middleware?"}'
# List active caches
curl -X POST http://localhost:8080/tools/context_list \
-H "Content-Type: application/json" -d '{}'
# Get usage stats with cost tracking
curl -X POST http://localhost:8080/tools/context_stats \
-H "Content-Type: application/json" -d '{}'
# Evict when done
curl -X POST http://localhost:8080/tools/context_evict \
-H "Content-Type: application/json" \
-d '{"alias": "hono"}'CLI
# Start server
mnemo serve
# Start MCP stdio transport (for Claude Desktop)
mnemo stdio
# Load a project
mnemo load ./my-project my-proj
# Query
mnemo query my-proj "What's the main entry point?"
# List caches
mnemo list
# Remove cache
mnemo evict my-projMCPツール
ツール | 説明 |
| GitHubリポジトリ、URL、PDF、またはローカルディレクトリをGeminiキャッシュに読み込む |
| キャッシュされたコンテキストに対して自然言語でクエリを実行する |
| トークン数と有効期限を含むアクティブなキャッシュをすべて一覧表示する |
| キャッシュを削除する |
| コスト追跡を含む利用統計を取得する |
| 最新のコンテンツでキャッシュを再読み込みする |
context_load パラメータ
パラメータ | 説明 |
| 単一ソース: GitHub URL、任意のURL、またはローカルパス |
| 1つのキャッシュに結合する複数のソース |
| このキャッシュのフレンドリーネーム (1〜64文字) |
| 有効期間 (秒単位) (60〜86400、デフォルト3600) |
| 非公開リポジトリ用のGitHubトークン |
| クエリ用のカスタムシステムプロンプト |
設定
変数 | 説明 | デフォルト |
| Gemini APIキー | 必須 |
| サーバーポート (ローカルのみ) | 8080 |
| データディレクトリ (ローカルのみ) | ~/.mnemo |
| 保護されたエンドポイント用の認証トークン | なし |
認証
MNEMO_AUTH_TOKEN が設定されている場合、/mcp および /tools/* エンドポイントには認証が必要です:
# Set auth token (Workers)
bunx wrangler secret put MNEMO_AUTH_TOKEN
# Requests must include header:
Authorization: Bearer your-token-hereパブリックエンドポイント (認証不要):
GET /health- ヘルスチェックGET /- サービス情報GET /tools- 利用可能なツールの一覧
コスト
デプロイオプションに関わらず、Gemini APIの利用料金は常に発生します。MnemoはGeminiのコンテキストキャッシュを使用しており、これは標準入力よりも大幅に安価です:
リソース | コスト |
キャッシュストレージ | 100万トークンあたり約$4.50/時間 |
キャッシュされた入力 | 通常入力より75〜90%割引 |
通常入力 | 100万トークンあたり約$0.075 (Flash) |
例: 10万トークンのコードベースを1時間キャッシュし、10回クエリを実行した場合 ≈ $0.47
Cloudflareコスト (セルフホスト):
Workers: 無料枠で1日10万リクエストまで
D1: 無料枠で1日500万読み取りまで
通常の利用であればほぼ$0
アーキテクチャ
┌─────────────────────────────────────────────────────────────┐
│ Mnemo │
├─────────────────────────────────────────────────────────────┤
│ MCP Tools │
│ • context_load - Load into Gemini cache │
│ • context_query - Query cached context │
│ • context_list - Show active caches │
│ • context_evict - Remove cache │
│ • context_stats - Token usage, costs │
│ • context_refresh - Reload cache │
├─────────────────────────────────────────────────────────────┤
│ Adapters (v0.2) │
│ • GitHub repos (via API) │
│ • URL loading (HTML, PDF, JSON, text) │
│ • Token-targeted crawling │
│ • robots.txt compliance │
├─────────────────────────────────────────────────────────────┤
│ Packages │
│ • @mnemo/core - Gemini client, loaders, adapters │
│ • @mnemo/mcp-server - MCP protocol handling │
│ • @mnemo/cf-worker - Cloudflare Workers deployment │
│ • @mnemo/local - Bun-based local server │
└─────────────────────────────────────────────────────────────┘ライセンス
MIT
クレジット
Built by Logos Flux | Voltage Labs
This server cannot be deployed
Maintenance
Related MCP Connectors
Shared memory for coding agents. Stop re-explaining your codebase every session.
Persistent memory for Claude Code and Cursor. Stop re-explaining your project every session.
Your portable context layer — load it into any AI.
Shared memory for AI tools: save once, recall word for word from Claude, ChatGPT, Codex or Gemini.
Related MCP Servers
- AlicenseBqualityCmaintenanceProvides AI assistants with persistent memory of your project architecture, development history, and technical decisions, allowing them to give context-aware coding help without needing repeated explanations.1661 npm2MIT
- AlicenseNot gradedqualityDmaintenanceProvides AI coding assistants with persistent, context-rich memory of a codebase, including documentation and git history, enabling recall across sessions.105Apache 2.0
- AlicenseCqualityAmaintenanceGives AI coding assistants persistent project memory and semantic code search, running fully locally with no API keys required.56MIT
- AlicenseNot gradedqualityBmaintenanceLoads entire codebase into LLM context for AI-assisted code understanding and editing.8 npm17MIT