hive-memory

hive-memory

Provides AI coding agents with persistent, graph-connected memory across projects, enabling cross-project context retrieval via synaptic connections and hybrid search.

Category
Visit Server

README

<p align="center">

 ██╗  ██╗██╗██╗   ██╗███████╗
 ██║  ██║██║██║   ██║██╔════╝
 ███████║██║██║   ██║█████╗
 ██╔══██║██║╚██╗ ██╔╝██╔══╝
 ██║  ██║██║ ╚████╔╝ ███████╗
 ╚═╝  ╚═╝╚═╝  ╚═══╝  ╚══════╝
 ███╗   ███╗███████╗███╗   ███╗ ██████╗ ██████╗ ██╗   ██╗
 ████╗ ████║██╔════╝████╗ ████║██╔═══██╗██╔══██╗╚██╗ ██╔╝
 ██╔████╔██║█████╗  ██╔████╔██║██║   ██║██████╔╝ ╚████╔╝
 ██║╚██╔╝██║██╔══╝  ██║╚██╔╝██║██║   ██║██╔══██╗  ╚██╔╝
 ██║ ╚═╝ ██║███████╗██║ ╚═╝ ██║╚██████╔╝██║  ██║   ██║
 ╚═╝     ╚═╝╚══════╝╚═╝     ╚═╝ ╚═════╝ ╚═╝  ╚═╝   ╚═╝

Cross-project memory layer for AI coding agents — with graph memory

npm license node

</p>


Hive Memory is an MCP server that gives AI coding agents persistent, graph-connected memory across projects. It stores decisions, learnings, and session progress in a local knowledge base with brain-inspired synaptic connections — so your agent can discover related context through topology-based traversal, not just keyword search.

Features

  • 33 MCP tools — project management, memory storage/recall, graph traversal, browsing, connectors, team sync, meetings, stewardship, and admin
  • SQLite-backed — FTS5 full-text search, WAL mode, zero external services
  • Graph memory (synapses) — 15 axon types, Hebbian learning, spreading activation
  • Hybrid search — BM25 + optional vector similarity with RRF fusion
  • 4 connectors — GitHub, Slack, Notion, Google Calendar
  • Team sync — Git-based shared cortex for teams
  • Meeting pipeline — transcript → structured notes → enrichment
  • HTTP mode — Deploy on Railway/Render with per-user API keys and rate limiting
  • Docker support — Ready-to-run container with health check
  • Schema versioning — Tracked migration history in schema_meta table
  • Audit logging — In-memory audit trail for all tool calls
  • Backup CLIhive-memory backup [--output path] for database snapshots

Architecture

┌──────────────────────────────────────────────────────────┐
│                    Hive Memory (cortex)                   │
│                                                          │
│  ┌────────────┐  ┌──────────────┐  ┌─────────────────┐  │
│  │ MCP Server │  │  HTTP Server │  │   CLI Interface  │  │
│  │  (stdio)   │  │  (port 3179) │  │   (hive-memory)  │  │
│  └─────┬──────┘  └──────┬───────┘  └────────┬────────┘  │
│        └────────────────┼────────────────────┘           │
│                         │                                │
│  ┌──────────────────────▼────────────────────────────┐  │
│  │                   CortexStore                      │  │
│  │  ┌────────────┐  ┌──────────┐  ┌──────────────┐  │  │
│  │  │HiveDatabase│  │ Synapse  │  │ Enrichment   │  │  │
│  │  │ (SQLite)   │  │  Graph   │  │   Engine     │  │  │
│  │  └─────┬──────┘  └──────────┘  └──────────────┘  │  │
│  │        │                                           │  │
│  │  ┌─────▼──────────────────────────────────────┐  │  │
│  │  │         SQLite Database (cortex.db)          │  │  │
│  │  │  entities · synapses · sessions · projects  │  │  │
│  │  │  connectors · users · labels · schema_meta  │  │  │
│  │  └─────────────────────────────────────────────┘  │  │
│  └────────────────────────────────────────────────────┘  │
└──────────────────────────────────────────────────────────┘
         ▲              ▲              ▲
   ┌─────┴─────┐  ┌─────┴─────┐  ┌───┴──────┐
   │  GitHub   │  │   Slack   │  │  Notion  │
   │ Connector │  │ Connector │  │ Connector│
   └───────────┘  └───────────┘  └──────────┘

Quick Start

Install

npm install -g hive-memory

Claude Code

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "hive-memory": {
      "command": "hive-memory"
    }
  },
  "permissions": {
    "allow": [
      "mcp__hive-memory__*"
    ]
  }
}

The permissions.allow entry auto-approves all Hive Memory tools so Claude won't prompt for permission every session.

Claude Desktop

Add to your Claude Desktop config (claude_desktop_config.json):

{
  "mcpServers": {
    "hive-memory": {
      "command": "hive-memory"
    }
  }
}

Cursor

Add to .cursor/mcp.json in your project:

{
  "mcpServers": {
    "hive-memory": {
      "command": "hive-memory"
    }
  }
}

HTTP Mode (Remote Deployment)

CORTEX_HTTP=true CORTEX_AUTH_TOKEN=secret hive-memory --http

Or with Docker:

docker compose up

Agent Instructions

Hive Memory works best when your AI agent knows when to call the tools. Copy the provided instruction templates into your agent's instruction file:

Agent Instruction file Template
Claude Code ~/.claude/CLAUDE.md claude-md-template.md
Codex ~/AGENTS.md or ./AGENTS.md codex-md-template.md

See the full setup guide for step-by-step instructions.

Tools Reference (33 tools)

Project Tools (4)

Tool Description
project_register Register or update a project (upsert)
project_search Search projects by name/tags, or list all (empty query)
project_status Get project context (full mode includes cross-project insights)
project_onboard Auto-discover projects in a directory + scan for agent memory files

Memory Tools (5)

Tool Description
memory_store Store a decision, learning, or note. Auto-creates synapses to related memories
memory_recall Search using keyword matching + graph traversal (spreading activation)
memory_link Form an explicit synapse between two memory entries
memory_traverse Deep graph traversal — find memories connected through synaptic pathways
memory_connections View the synaptic connections of a specific memory entry

Session Tools (1)

Tool Description
session_save Save session progress — what was done, what's next

Browse Tools (5)

Tool Description
memory_ls List entities with filters (project, type, status, domain)
memory_tree Tree view of entities grouped by project and type
memory_grep Regex/substring search across entity content
memory_inspect Detailed view of a specific entity including synapses
memory_timeline Chronological view of entities in a time range

Trail Tools (3)

Tool Description
memory_trail View the access trail of recently used memories
memory_who See which agents have contributed to a project
memory_decay Apply synapse weight decay and prune weak connections

Connector Tools (2)

Tool Description
connector_sync Trigger a connector sync (GitHub, Slack, Notion, Calendar)
connector_status View sync status and entry counts for all connectors

Team Tools (4)

Tool Description
team_init Initialize a Git-based shared team cortex
team_push Push local entries to the team cortex
team_pull Pull team entries into local database
team_status View pending push/pull and conflict count

Context Tools (2)

Tool Description
context_enrich Run enrichment on an entity (classification, topics, decisions)
entity_resolve Find and deduplicate person entities across sources

Meeting Tools (2)

Tool Description
meeting_process Process a meeting transcript into structured notes and decisions
meeting_briefing Generate a meeting briefing from recent meetings

Steward Tools (2)

Tool Description
memory_audit Run data quality audit on stored memories
memory_briefing Generate daily or weekly memory briefing

Advisor Tools (1)

Tool Description
workflow_analyze Analyze workflow patterns and generate insights

User / Admin Tools (2)

Tool Description
user_manage Manage users — add, list, revoke, rotate API keys
memory_audit_log Retrieve recent MCP tool call audit log (admin only)

Connectors

Connector Env Variable What it syncs
GitHub GITHUB_TOKEN PRs, Issues, ADRs, CODEOWNERS
Slack SLACK_TOKEN Signal-filtered messages, threads
Notion NOTION_TOKEN Pages, databases, block content
Google Calendar GOOGLE_CALENDAR_CREDENTIALS Events, attendees (OAuth2/service account)
Outlook OUTLOOK_TOKEN Calendar events

How It Works

┌──────────┐     ┌──────────┐     ┌──────────┐
│ Claude   │     │ Cursor   │     │ Codex    │
│ Code     │     │          │     │          │
│ (Proj A) │     │ (Proj B) │     │ (Proj C) │
└────┬─────┘     └────┬─────┘     └────┬─────┘
     │                │                │
     └────────────────┼────────────────┘
                      │ MCP (stdio)
               ┌─────────────┐
               │ Hive Memory │
               │  MCP Server │
               └──────┬──────┘
                      │
     ┌────────────────┼────────────────┐
     ▼                ▼                ▼
┌─────────┐    ┌───────────┐    ┌───────────┐
│ Hive    │    │ Synapse   │    │ Spreading │
│ Cell    │    │ Graph     │    │ Activation│
│ Tree    │    │ (LTP/LTD) │    │           │
└─────────┘    └───────────┘    └───────────┘

No cloud. No accounts. No embeddings required. Everything stays on your machine.

Graph Memory (Synapses)

Every memory can be connected to other memories through synapses — directed, weighted edges inspired by neuroscience:

"Use JWT for auth" ──[causal:0.8]──→ "Add token refresh logic"
        │                                      │
        │──[semantic:0.5]──→ "OAuth2 decision"  │
                                               │
"Rate limit API" ←──[dependency:0.6]───────────┘

Axon Types:

Type Meaning Example
temporal A occurred before B Decision A was made before Decision B
causal A caused/led to B "Use PostgreSQL" → "Add pgvector extension"
semantic Topically related Both about authentication
refinement B refines/updates A "Use JWT" → "Use JWT with 15min expiry"
conflict A contradicts B "Use SQL" vs "Use NoSQL"
dependency B depends on A Feature B requires Feature A
derived B was derived from A Learning extracted from a decision

Spreading Activation

When you search with memory_recall or memory_traverse, the system propagates signal through the synapse graph:

Query: "auth token handling"
  │
  ▼ keyword match
  Seed: "Use JWT for auth" (activation: 1.0)
  │
  ├─[causal:0.8]──→ "Add token refresh" (activation: 0.4)
  │                        │
  │                  ├─[dependency:0.6]──→ "Rate limit API" (activation: 0.12)
  │
  └─[semantic:0.5]──→ "OAuth2 decision" (activation: 0.25)

Hebbian Learning

"Neurons that fire together, wire together":

  • LTP (Long-Term Potentiation): When two memories are recalled together repeatedly, their synapse weight increases (+0.1 per co-activation)
  • LTD (Long-Term Depression): Unused synapses decay over time (×0.995 per flush cycle)
  • Pruning: Synapses below 0.05 weight are automatically removed
  • Auto-formation: When two memories are co-activated 5+ times, a Hebbian synapse is created automatically

HTTP Mode & Multi-User Setup

Deploy as an HTTP server for shared team access:

# Create an admin user
hive-memory user create admin-name

# Start HTTP server
CORTEX_HTTP=true CORTEX_AUTH_TOKEN=<token> hive-memory

# Or use Docker
docker compose up

API Key Rotation

hive-memory user rotate <user-id>

The new key is active immediately. The graceUntil timestamp is stored for audit purposes.

Rate Limiting

The HTTP server enforces a limit of 100 requests per minute per user (in-memory, per instance).

Auto Session Capture

Hive Memory can automatically save sessions when Claude Code exits. Add to ~/.claude/settings.json:

{
  "hooks": {
    "SessionEnd": [{
      "matcher": "",
      "hooks": [{
        "type": "command",
        "command": "hive-memory hook session-end"
      }]
    }]
  }
}

This parses the Claude Code transcript and auto-saves a session summary. It skips if session_save was already called during the session.

Backup

# Create a backup
hive-memory backup

# Specify output path
hive-memory backup --output /path/to/backup.db

Configuration

Environment Variables

Variable Default Description
CORTEX_DATA_DIR ~/.cortex Data storage directory
CORTEX_LOCAL_SYNC true Set to "false" to disable writing .cortex.md into project directories
CORTEX_LOCAL_FILENAME .cortex.md Custom filename for local context files
CORTEX_HTTP false Set to "true" to enable HTTP server mode
CORTEX_AUTH_TOKEN Admin API token for HTTP mode
PORT / CORTEX_PORT 3179 HTTP server port
CORTEX_SYNC_INTERVAL_MIN 30 Connector auto-sync interval in minutes

Example with custom config:

{
  "mcpServers": {
    "hive-memory": {
      "command": "hive-memory",
      "env": {
        "CORTEX_DATA_DIR": "/custom/path",
        "CORTEX_LOCAL_SYNC": "false"
      }
    }
  }
}

Local Context File (.cortex.md)

Hive Memory writes a .cortex.md file in each registered project directory. This file contains a snapshot of the project's current context — summary, recent session, next tasks, and cross-project insights. It's auto-generated and should be added to .gitignore.

To disable this feature, set CORTEX_LOCAL_SYNC=false.

Migration from v1/v2

Hive Memory v3 automatically migrates existing data:

  • Legacy knowledge/ files are migrated to hive direct entries on first startup, then renamed to knowledge.bak/
  • Existing project registrations (index.json, summary.json, sessions) are unchanged
  • Embedding data (vectors.json, embedding model cache) is no longer used and can be safely deleted
  • The @huggingface/transformers dependency has been removed — no more model downloads
  • Schema version is now tracked in the schema_meta table

No manual action needed — just update and restart.

Development

npm install          # Install dependencies
npm run build        # Build TypeScript
npm run dev          # Dev mode with auto-reload
npm run lint         # Lint with ESLint
npm run typecheck    # Type check
npm test             # Run tests
npm run test:coverage # Run tests with coverage report

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured