Skip to content

anyuan-chen/humanize

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Humanize

Chrome extension that personalizes web pages based on your preferences, interests, and browsing history.

How it works

  1. Extension captures page content and sends to local server via WebSocket
  2. Server searches mem0 (Qdrant vector DB) for relevant user memories
  3. Gemini analyzes content against memories, returns personalized modifications
  4. Extension applies highlights, warnings, and tooltips to the page

Architecture

Chrome Extension (content.js)
        ↕ WebSocket
Python Server (server.py)
        ↓
   ┌────┴────┐
   ↓         ↓
 mem0     Gemini
(Qdrant)  (analysis)

Stack: Python, FastMCP, mem0, Qdrant (local), Gemini, Chrome Extension (Manifest V3)

Setup

uv sync
cp .env.example .env
# Edit .env with your API keys
cd server && uv run python server.py

Environment variables (.env):

GEMINI_API_KEY=xxx          # Required
GOOGLE_MAPS_API_KEY=xxx     # Optional, for place enrichment

Load extension/ as unpacked extension in Chrome.

MCP Server

Connect to mem0 from MCP-compatible clients to seed preferences, add memories, or query what the system knows about you:

{
  "mcpServers": {
    "mem0": {
      "command": "/path/to/uv",
      "args": ["run", "--directory", "/path/to/humanize", "python", "mcp_server.py"]
    }
  }
}

Tools: add_memory_tool, search_memories, list_all_memories, delete_memory

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors