Skip to content

laris-co/oracle-mcp

Repository files navigation

Oracle MCP - AI Knowledge Management Server

"The Oracle Keeps the Human Human" - queryable via MCP

A Model Context Protocol (MCP) server for semantic search and knowledge management. Store principles, patterns, and learnings with hybrid keyword + vector search.

Installation

As Claude Code Plugin

# Via Claude Code CLI
claude plugin add laris-co/oracle-mcp

Manual Setup

# Clone and install
git clone https://github.com/laris-co/oracle-mcp
cd oracle-mcp
npm install

# Run MCP server
npm run dev

Configuration

Add to ~/.claude/mcp.json:

{
  "mcpServers": {
    "oracle-mcp": {
      "command": "npm",
      "args": ["run", "dev"],
      "cwd": "/path/to/oracle-mcp",
      "env": {
        "ORACLE_DATA_DIR": "/path/to/data"
      }
    }
  }
}

Environment Variables

Variable Default Description
ORACLE_DATA_DIR ~/.oracle-mcp/ Data directory for SQLite + ChromaDB

MCP Tools

oracle_search

Hybrid search (keywords + semantic) across knowledge base.

{
  "query": "how should I handle file deletion?",
  "type": "principle",
  "mode": "hybrid",
  "limit": 5
}
  • mode: hybrid (default), fts (keywords only), vector (semantic only)
  • type: principle, pattern, learning, retro, all

oracle_consult

Get guidance on a decision based on stored principles.

{
  "decision": "Should I amend this commit?",
  "context": "I just made a commit but forgot to add a file"
}

oracle_learn

Add new patterns or learnings to knowledge base.

{
  "pattern": "Always verify before destructive operations",
  "source": "Retrospective 2025-01-15",
  "concepts": ["safety", "verification"]
}

oracle_list

Browse documents without search (pagination supported).

{
  "type": "learning",
  "limit": 10,
  "offset": 0
}

oracle_reflect

Get random wisdom for reflection.

{}

Data Storage

All data stored in ORACLE_DATA_DIR (default: ~/.oracle-mcp/):

~/.oracle-mcp/
├── oracle.db       # SQLite database (FTS5 + metadata)
├── chroma_data/    # ChromaDB vector embeddings
└── learnings/      # Markdown files from oracle_learn

Development

# Install dependencies
npm install

# Run in development mode
npm run dev

# Build TypeScript
npm run build

# Run production
npm start

# Run with pm2
pm2 start ecosystem.config.cjs

Architecture

Claude Code → MCP Server → SQLite (FTS5) + ChromaDB (vectors)
                               ↓
                         oracle.db + chroma_data/

Following claude-mem patterns:

  • Hybrid search (FTS5 keywords + vector semantic)
  • Graceful degradation (works without ChromaDB)
  • Local embeddings via ChromaDB
  • SQLite as source of truth

License

MIT


Created: 2025-12-29 Architecture: claude-mem inspired

About

oracle-mcp project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors