MCP Memory Server
Provides vector search capabilities for semantic search over notes using k-NN, enabling the semantic_search tool.
Provides relational storage for structured data such as person profiles and notes, enabling tools like find_person and get_profile.
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., "@MCP Memory Serverremember that I like hiking"
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.
MCP Memory Server
A streamable HTTPS (SSE) MCP server with personal memory layer using AWS ECS Fargate, RDS PostgreSQL, and OpenSearch Serverless for vector search.
Features
MCP Tools:
find_person,get_profile,remember_note,semantic_searchSSE Transport: Streaming responses over HTTPS
Relational Storage: AWS RDS PostgreSQL for structured data
Vector Search: OpenSearch Serverless with k-NN for semantic search
Embeddings: AWS Bedrock Titan for text embeddings
Secure: Bearer token auth, VPC isolation, IAM roles
Related MCP server: Fuzzy Memory MCP Server
Quick Start
Local Development
Install dependencies:
npm installStart PostgreSQL:
docker-compose up -d postgresRun migrations:
docker exec -i mcp-postgres psql -U postgres -d memory < sql/001_schema.sql
docker exec -i mcp-postgres psql -U postgres -d memory < sql/002_seed_data.sqlConfigure environment:
cp .env.example .env
# Edit .env with your AWS credentialsStart dev server:
npm run devAWS Deployment
Configure AWS SSO:
aws sso login --profile leogaoBuild and push Docker image:
# Get AWS account ID
AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text)
AWS_REGION=us-east-1
# Build image
docker build -t mcp-memory:latest .
# Login to ECR
aws ecr get-login-password --region $AWS_REGION | docker login --username AWS --password-stdin $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com
# Create repository (if needed)
aws ecr create-repository --repository-name mcp-memory-prod-app --region $AWS_REGION
# Push image
docker tag mcp-memory:latest $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/mcp-memory-prod-app:latest
docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_REGION.amazonaws.com/mcp-memory-prod-app:latestDeploy infrastructure with Terraform:
cd terraform
# Initialize Terraform
terraform init
# Create terraform.tfvars
cp terraform.tfvars.example terraform.tfvars
# Edit terraform.tfvars with your values
# Plan deployment
terraform plan
# Apply infrastructure
terraform applyUpdate ECS service (for subsequent deployments):
./scripts/deploy.shConnecting from Claude
Configure your Claude client with the MCP SSE endpoint:
{
"mcpServers": {
"mcp-memory": {
"transport": {
"type": "sse",
"url": "https://your-domain.com/mcp/sse",
"accessToken": "your-auth-token"
}
}
}
}Architecture
┌─────────────┐ ┌─────────────┐ ┌──────────────┐
│ Claude │────▶│ ALB │────▶│ ECS Fargate │
└─────────────┘ └─────────────┘ └──────────────┘
│ │
│ ┌──────▼──────┐
│ │ RDS │
│ │ PostgreSQL │
│ └─────────────┘
│ │
│ ┌──────▼──────┐
│ │ OpenSearch │
│ │ Serverless │
│ └─────────────┘
│ │
│ ┌──────▼──────┐
└──────────────│ Bedrock │
│ Titan │
└─────────────┘Available Tools
find_person
Search for people by name, email, or organization.
get_profile
Retrieve detailed profile with attributes and recent notes.
remember_note
Add a note to an entity and index it for semantic search.
semantic_search
Search notes semantically using vector similarity.
Environment Variables
PORT: Server port (default: 8080)AUTH_TOKEN: Bearer token for authenticationPG_URL: PostgreSQL connection stringOPENSEARCH_URL: OpenSearch endpointOPENSEARCH_INDEX: Index name for vector searchBEDROCK_REGION: AWS region for BedrockAWS_PROFILE: AWS profile for local development
Monitoring
CloudWatch Logs:
/ecs/mcp-memory-prodECS Console: Monitor service health and tasks
RDS Metrics: Database performance insights
ALB Target Health: Check target group health
Security Considerations
All traffic encrypted with TLS
Private subnets for compute and data
IAM roles with least privilege
Secrets in AWS Secrets Manager
VPC security groups restrict access
Troubleshooting
Stream drops after ~60s
Increase ALB idle timeout in Terraform:
idle_timeout = 300 # 5 minutes401 Unauthorized
Check AUTH_TOKEN in Secrets Manager matches client config.
OpenSearch returns empty
Verify index created with k-NN enabled and embeddings are being generated.
License
MIT
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.
Latest Blog Posts
- 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/leog25/mcp-personal-memory-context'
If you have feedback or need assistance with the MCP directory API, please join our Discord server