Memoreei
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AUTO_SYNC | No | Enable background sync loop on server start | false |
| GMAIL_EMAIL | No | Gmail address | |
| MATRIX_ROOM_ID | No | Default room ID, e.g. !abc123:matrix.org | |
| OPENAI_API_KEY | No | Required only if EMBEDDING_PROVIDER=openai | |
| SIGNAL_DB_PATH | No | Override path to Signal's db.sqlite | |
| SLACK_BOT_TOKEN | No | Bot token (xoxb-...), requires channels:history + users:read | |
| IMESSAGE_DB_PATH | No | Override path to chat.db | ~/Library/Messages/chat.db |
| MASTODON_HASHTAG | No | Default hashtag (without #) | |
| MEMOREEI_DB_PATH | No | SQLite database path | ./memoreei.db |
| SLACK_CHANNEL_ID | No | Default channel ID, e.g. C1234567890 | |
| TELEGRAM_CHAT_ID | No | Default chat ID (positive = DM, negative = group) | |
| DISCORD_BOT_TOKEN | No | Bot token from Discord Developer Portal | |
| MASTODON_INSTANCE | No | Instance URL | https://mastodon.social |
| MATRIX_HOMESERVER | No | Homeserver URL, e.g. https://matrix.org | |
| AUTO_SYNC_INTERVAL | No | Background sync interval in seconds | 3600 |
| DISCORD_CHANNEL_ID | No | Default channel ID for sync_discord | |
| EMBEDDING_PROVIDER | No | fastembed (local ONNX, no API key) or openai | fastembed |
| GMAIL_APP_PASSWORD | No | App Password (required if 2FA enabled) | |
| SIGNAL_CONFIG_PATH | No | Override path to Signal's config.json | |
| TELEGRAM_BOT_TOKEN | No | Bot token from @BotFather | |
| MATRIX_ACCESS_TOKEN | No | User access token | |
| MASTODON_ACCESS_TOKEN | No | OAuth token (optional, for home timeline) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_memoryA | Search your personal memories using hybrid keyword + semantic search. Args: query: Natural language search query limit: Maximum number of results to return (default: 10) source: Filter by data source (e.g. 'whatsapp:printer_conspiracy', 'discord:1487...') participant: Filter by participant name after: Only return memories after this date (ISO format, e.g. '2026-01-01') before: Only return memories before this date (ISO format, e.g. '2026-12-31') |
| get_contextA | Get surrounding messages/context for a specific memory. Args: memory_id: The ID of the memory to get context for before: Number of messages before this one to include (default: 5) after: Number of messages after this one to include (default: 5) |
| add_memoryA | Add a manual memory/note to your personal memory store. Args: content: The text content to remember source: Source label for this memory (default: 'manual') metadata: Optional key-value metadata to attach |
| list_sourcesA | List all data sources and their message counts. |
| ingest_whatsappB | Import a WhatsApp chat export .txt file into memory. Args: file_path: Absolute or relative path to the WhatsApp .txt export file |
| refresh_memoryB | Trigger an immediate sync of all configured sources and return new message count. |
| sync_allA | Sync every configured connector and return counts per source. Iterates over all connectors that have sufficient configuration (Discord, Telegram, Matrix, Slack, email, Mastodon) and syncs each one. |
| sync_discordB | Sync recent Discord messages from the configured channel. Args: channel_id: Discord channel ID to sync (uses DISCORD_CHANNEL_ID env var if not provided) |
| sync_telegramA | Sync new Telegram messages received by the bot into memory. Uses the Telegram Bot API (getUpdates) to fetch messages sent to the bot since the last sync. Requires TELEGRAM_BOT_TOKEN in environment. Args: chat_id: Telegram chat ID to filter (positive = user DM, negative = group). Syncs all chats if not provided. Uses TELEGRAM_CHAT_ID env var as default. |
| sync_matrixA | Sync Matrix room messages into memory using the Matrix Client-Server API. Fetches messages from a Matrix room and stores them for search. Uses a per-room pagination token checkpoint to avoid re-ingesting messages. Requires environment variables: MATRIX_HOMESERVER - e.g. https://matrix.org MATRIX_ACCESS_TOKEN - user access token MATRIX_ROOM_ID - default room to sync (optional if room_id provided) Args: room_id: Matrix room ID to sync (e.g. !abc123:matrix.org). Uses MATRIX_ROOM_ID env var if not provided. |
| sync_slackA | Sync recent Slack messages from the configured channel into memory. Uses the Slack Web API (conversations.history) to fetch messages since the last sync. Requires a bot token with channels:history and users:read scopes. Requires environment variables: SLACK_BOT_TOKEN - Slack bot token (xoxb-...) SLACK_CHANNEL_ID - default channel to sync (optional if channel_id provided) Args: channel_id: Slack channel ID to sync (e.g. C1234567890). Uses SLACK_CHANNEL_ID env var if not provided. |
| sync_emailA | Sync Gmail messages into memory via IMAP. Fetches emails from a Gmail folder and stores them for search. Uses a per-folder UID checkpoint to avoid re-ingesting messages on subsequent syncs. Requires environment variables: GMAIL_EMAIL - Gmail address (e.g. you@gmail.com) GMAIL_APP_PASSWORD - Gmail App Password (required if 2FA is enabled). Create one at https://myaccount.google.com/apppasswords GMAIL_PASSWORD may be used instead for non-2FA accounts, but Google has deprecated plain-password IMAP access. Args: folder: IMAP folder to sync (default: 'INBOX'). Other options: '[Gmail]/Sent Mail', '[Gmail]/All Mail', etc. max_emails: Maximum number of emails to ingest per sync (default: 200). |
| sync_mastodonA | Sync recent Mastodon posts from a public or hashtag timeline into memory. Uses the Mastodon REST API. Public and hashtag timelines require no authentication. An access token is only needed for home timeline or private accounts. Optional environment variables: MASTODON_INSTANCE - Mastodon instance URL (default: https://mastodon.social) MASTODON_HASHTAG - default hashtag to sync (without #) MASTODON_ACCESS_TOKEN - access token for authenticated requests (optional) Args: instance: Mastodon instance base URL (e.g. https://fosstodon.org). Uses MASTODON_INSTANCE env var if not provided. hashtag: Hashtag to sync (without #, e.g. 'python'). Uses MASTODON_HASHTAG env var or public timeline if not provided. access_token: OAuth access token. Uses MASTODON_ACCESS_TOKEN env var if not provided. |
| sync_imessageA | Sync iMessage/SMS conversations from the local macOS Messages database. Reads ~/Library/Messages/chat.db in read-only mode. macOS only — returns an error dict on other platforms without raising. Requires Full Disk Access granted to Terminal (or the app running this server) in System Settings → Privacy & Security → Full Disk Access. The path to chat.db can be overridden with the IMESSAGE_DB_PATH env var. Args: chat_name: Optional filter — only sync messages from this chat/contact. Matches against chat_identifier (e.g. '+1234567890') or display name. |
| sync_signalB | Sync Signal Desktop messages from the local encrypted database. Requires Signal Desktop to be installed and pysqlcipher3 package. Reads the Signal SQLCipher database at the default OS location: Linux: ~/.config/Signal/sql/db.sqlite macOS: ~/Library/Application Support/Signal/sql/db.sqlite Windows: %APPDATA%\Signal\sql\db.sqlite The encryption key is read from config.json in the same Signal directory. Override paths with SIGNAL_DB_PATH and SIGNAL_CONFIG_PATH env vars. Args: conversation_id: Optional filter for a specific conversation (ID, name, phone number, or profile name). |
| import_sms_backupA | Import SMS/MMS messages from an Android SMS Backup & Restore XML file. Works with the 'SMS Backup & Restore' app (most popular on Google Play). Args: file_path: Path to the XML backup file |
| import_discord_packageA | Import a Discord Data Package (GDPR export). Imports all messages from all channels and DMs. Request your data at Discord Settings > Privacy & Safety > Request All of My Data. Once downloaded, extract the ZIP or pass it directly — both are supported. Args: package_path: Path to extracted data package folder or ZIP file |
| import_messengerA | Import Facebook Messenger messages from a data download (GDPR export, JSON format). Download from: Facebook Settings > Your Information > Download Your Information. Args: data_path: Path to the extracted Messenger data folder (containing messages/inbox/) |
| import_json_fileA | Import messages from any JSON file. Provide field names for your data format. Supports JSON arrays, JSON-lines format, and wrapped objects. Covers Google Chat takeout, Google Hangouts exports, LinkedIn data, and any custom JSON format. Args: file_path: Path to the JSON or JSON-lines file content_field: Field name containing the message text (required) sender_field: Field name containing the sender name (optional) timestamp_field: Field name containing the timestamp (optional, auto-detects format) source_label: Label to tag imported messages with (default: 'json-import') |
| import_csv_fileA | Import messages from any CSV file. Provide column names for your data format. Auto-detects delimiter (comma, tab, semicolon). Supports header rows. Covers LinkedIn exports, any spreadsheet or custom CSV format. Args: file_path: Path to the CSV, TSV, or delimited file content_column: Column name containing the message text (required) sender_column: Column name containing the sender name (optional) timestamp_column: Column name containing the timestamp (optional, auto-detects format) source_label: Label to tag imported messages with (default: 'csv-import') |
| import_instagramA | Import Instagram DMs from a data download (GDPR export, JSON format). Download at: Instagram Settings > Accounts Center > Your Information > Download Your Information. Args: data_path: Path to the extracted Instagram data folder (containing your_instagram_activity/) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
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/CalebChristiansen/Memoreei'
If you have feedback or need assistance with the MCP directory API, please join our Discord server