BookmarkContext
a vector database with simple api and mcp server to find relevant documents to a given context
GitHub Stars
0
User Rating
Not Rated
Favorites
0
Views
97
Forks
0
Issues
0
README
BookmarkMemory
A Python-based semantic search system for bookmarks that enables intelligent querying of URL contents through vector embeddings and semantic chunking.
Features
- 🔍 Semantic Search: Find bookmarks based on meaning, not just keywords
- 🧩 Smart Chunking: Intelligently splits content into meaningful segments
- 🚀 Multiple Backends: Support for Qdrant Cloud, local containers, or auto-start
- 🌐 FastAPI Server: RESTful API with auto-generated documentation
- 🤖 MCP Integration: FastMCP server for AI assistant integration
- 📊 Flexible Embeddings: Support for multiple embedding models
Quick Start
Installation
# Clone the repository
git clone file:///c:/temp/BookmarkMemory
cd BookmarkMemory
# Install dependencies
pip install -r requirements.txt
pip install -e .
Basic Usage
from bookmark_memory import BookmarkMemory
# Initialize
bm = BookmarkMemory()
# Add bookmarks
bm.add_bookmarks([
"https://example.com/article1",
"https://example.com/article2"
])
# Search
results = bm.find_related_bookmarks("machine learning")
for result in results:
print(f"{result['url']} - Score: {result['relevance_score']:.3f}")
API Server
# Start the FastAPI server
uvicorn bookmark_memory.api.fastapi_app:app --reload
# Visit http://localhost:8000/docs for API documentation
MCP Server
Add to your Claude Desktop configuration:
{
"mcpServers": {
"bookmark-memory": {
"command": "python",
"args": ["-m", "bookmark_memory.mcp.mcp_server"],
"env": {
"QDRANT_MODE": "auto"
}
}
}
}
Configuration
Environment Variables
QDRANT_MODE: Connection mode (auto, cloud, local)QDRANT_HOST: Qdrant host addressQDRANT_PORT: Qdrant port (default: 6333)EMBEDDING_MODEL: Model for embeddings (default: sentence-transformers/all-MiniLM-L6-v2)
See config/settings.py for all configuration options.
Documentation
- API Documentation (when server is running)
- Project Requirements
- Examples
Testing
# Run all tests
pytest
# Run with coverage
pytest --cov=bookmark_memory
License
MIT License - See LICENSE file for details.
Related MCPs