STRATA
MCP server that provides AI assistants persistent context memory across sessions, using Supabase PostgreSQL and pgvector to save, search, list, and delete memories via natural language.
README
🌌 STRATA — Universal Context Bridge
STRATA is a high-performance Model Context Protocol (MCP) server that serves as a Universal Context Bridge for AI assistants and LLM agents (Claude Desktop, Cursor, Continue.dev, ChatGPT, etc.).
It gives AI models persistent memory across conversations and coding sessions, backed by Supabase PostgreSQL, full-text indexing, and pgvector semantic search.
⚡ Features
- 🧠 Persistent Context Memory: AI agents can save decisions, design systems, API contracts, preferences, and code snippets across sessions.
- 🔍 Intelligent Memory Search: Fast full-text and contextual search with automatic recency fallbacks.
- 🚀 Modern MCP 2.0 SDK: Built using the latest
MCPServerdecorator architecture with Server-Sent Events (SSE) streaming transport. - 🗄️ Supabase & PostgreSQL: Battle-tested cloud database layer with pgvector support and Row-Level Security (RLS).
- 🔄 Singleton Connection Pooling: Cached client instances for high-throughput, low-latency tool execution.
- 🩺 Built-in Health Checks: REST endpoints for uptime monitoring and connectivity status (
/health).
🛠️ Available MCP Tools
| Tool | Description | Parameters |
|---|---|---|
save_memory |
Save context, preferences, decisions, or code into long-term memory | content (str), title (opt), tags (opt) |
search_memory |
Search past context and discussions matching keywords or queries | query (str), limit (int, default: 5) |
list_memories |
List recent context entries stored in STRATA | limit (int, default: 10) |
delete_memory |
Remove a specific memory entry by UUID | memory_id (str) |
get_stats |
View database connection status, memory count, and metadata | None |
🚀 Quick Start
1. Prerequisites
- Python 3.10 or higher
- A Supabase account & project
2. Clone & Setup Environment
# Clone the repository
git clone https://github.com/your-username/STRATA.git
cd STRATA
# Copy environment file and configure your keys
cp .env.example .env
Edit .env with your Supabase credentials:
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_KEY=your-supabase-service-role-key
DEFAULT_USER_ID=your-user-uuid (optional)
3. Install Dependencies
cd apps/api
python -m venv venv
# Activate virtual environment:
# Windows (PowerShell):
.\venv\Scripts\Activate.ps1
# macOS / Linux:
source venv/bin/activate
# Install requirements
pip install -r requirements.txt
4. Database Setup
Run the SQL schema located in supabase_schema.sql in your Supabase SQL Editor to initialize the tables, vector extensions, and full-text indexes.
5. Start the Server
# From apps/api directory:
uvicorn main:app --reload --port 8000
The server starts on http://localhost:8000 with the following endpoints:
- SSE Endpoint:
http://localhost:8000/sse - Messages Endpoint:
http://localhost:8000/messages/ - Health Check:
http://localhost:8000/health
🔌 Connecting to MCP Clients
Claude Desktop
Add this to your claude_desktop_config.json:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"strata": {
"url": "http://localhost:8000/sse"
}
}
}
Cursor IDE
In Cursor settings under Features > MCP Servers, add a new server:
- Name:
STRATA - Type:
sse - URL:
http://localhost:8000/sse
📁 Project Structure
STRATA/
├── apps/
│ └── api/ # Python MCP Server
│ ├── main.py # Server logic, MCPServer instance & tools
│ ├── requirements.txt # Python dependencies
│ └── venv/ # Python virtual environment
├── .env.example # Template environment file
├── .gitignore # Version control ignores
├── package.json # Root monorepo configuration
├── supabase_schema.sql # Database schema, pgvector, and indexes
└── README.md # Documentation
🛡️ License
MIT License. See LICENSE for details. #� �b�o�u�n�c�e�-�m�c�p� � �
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.