Conversation Search MCP Server
Enables comprehensive search and analysis of Claude Code conversation history using full-text search, optional semantic vector search, and conversation management tools. Provides fast SQLite-based indexing with role-based filtering, project organization, and hybrid search capabilities combining keyword and semantic matching.
README
Conversation Search MCP Server
Version: 1.1.0
Status: Production Ready
Last Updated: 2025-01-07
Overview
Advanced MCP server providing semantic and traditional search capabilities across Claude Code conversation history. Features vector embeddings, hybrid search, and comprehensive conversation management tools.
🚀 Key Features
Search Capabilities
- Traditional Search: Fast FTS-based keyword search with session indexing
- Vector Search: Semantic similarity using OpenAI embeddings
- Hybrid Search: Combined semantic + keyword matching for optimal results
- Context Retrieval: Adjacent chunk expansion for full conversation context
Conversation Management
- Recent Conversations: Optimized retrieval with project filtering
- Session Details: Full conversation history with message threading
- Auto-Naming: AI-powered conversation title generation
- Batch Operations: Bulk renaming and processing capabilities
Database Operations
- Incremental Updates: Process only new conversations since last run
- Full Migration: Complete conversation database rebuild
- Statistics: Comprehensive indexing and usage metrics
- Vector Migration: One-time embedding generation for existing conversations
📊 Current Scale
- Conversations: 664 processed sessions
- Messages: 118,453+ indexed messages
- Vector Chunks: 13,847 semantic chunks
- Database Size: ~420MB optimized storage
- Embedding Cost: ~$0.57 (one-time migration)
🛠️ Technical Stack
- Runtime: Node.js with TypeScript
- Database: SQLite with FTS and vector extensions
- Embeddings: OpenAI text-embedding-3-small
- Protocol: Model Context Protocol (MCP)
- Search: Hybrid semantic + keyword matching
🔒 Security Configuration
Environment Variables Setup
-
Copy the environment template:
cp .env.example .env -
Configure your API key:
# Edit .env and add your OpenAI API key OPENAI_API_KEY=your_actual_api_key_here
Security Best Practices
- ✅ Environment Variables: All sensitive data is configured via environment variables
- ✅ No Hardcoded Secrets: API keys are never committed to version control
- ✅ Secure Defaults: Vector search gracefully degrades without API key
- ✅ Read-Only Access: OpenAI API is used only for text embedding generation
- ✅ Local Processing: All conversation data remains on your system
- ✅ Cost Control: Built-in token estimation and cost tracking
API Key Management
- Required For: Vector search, semantic search, AI-powered naming
- Not Required For: Traditional keyword search, conversation management
- Permissions: Read-only access to OpenAI embeddings API
- Cost: ~$0.0001 per 1,000 tokens (very low cost for typical usage)
- Rate Limits: Automatic batching and retry logic included
Data Privacy
- Local Storage: All conversation data stored locally in SQLite
- No Data Sharing: Conversations never sent to external services except for embedding generation
- User Control: Vector search entirely optional and user-controlled
- Audit Trail: All API usage logged with token counts and costs
⚡ Quick Start
Prerequisites
# 1. Copy and configure environment variables
cp .env.example .env
# Edit .env with your OpenAI API key (optional)
# 2. Install dependencies
npm install
Build and Run
# Build the server
npm run build
# Test direct communication
echo '{"jsonrpc": "2.0", "method": "tools/list", "id": 1}' | node dist/src/index.js
MCP Integration
Add to your Claude Code configuration:
{
"conversation-search": {
"type": "stdio",
"command": "node",
"args": ["/path/to/conversation-search/dist/src/index.js"],
"env": {}
}
}
🔍 Available Tools
Traditional Search
search_conversations- Keyword search with role filteringget_recent_conversations- Latest conversations with project filteringget_conversation_details- Full session message historyget_session_for_resume- Resume-formatted conversation data
Vector Search (Requires OpenAI API Key)
vector_search_conversations- Semantic similarity searchhybrid_search_conversations- Combined semantic + keyword searchget_chunk_with_context- Expand search results with adjacent chunks
Management Tools
rename_conversation- Assign custom conversation namesgenerate_conversation_summary- AI-powered title generationlist_conversations_with_names- Named conversation listingbatch_rename_recent- Bulk conversation naming
Database Operations
update_database- Full conversation database rebuildupdate_database_incremental- Process only new conversationsget_indexing_stats- Database statistics and health metricsmigrate_to_vector_database- One-time vector embedding migration
📖 Documentation
- Current Status - Real-time project state
- Architecture - System design and decisions
- API Reference - Complete tool documentation
- Development Guide - Setup and contribution guide
🎯 Performance
- Search Speed: Sub-second response for most queries
- Memory Efficient: SQLite-based storage with optimized indexes
- Scalable: Handles 100K+ messages with consistent performance
- Graceful Degradation: Traditional search works without OpenAI API key
🔧 Monitoring
Check server health:
# Get comprehensive statistics
echo '{"jsonrpc": "2.0", "method": "tools/call", "params": {"name": "get_indexing_stats"}, "id": 1}' | node dist/src/index.js
Expected output includes traditional and vector database metrics, processing dates, and configuration status.
📝 License
Private development tool - not for redistribution.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。