Back to blog
MCP Memoria - Web UI & Knowledge Graph

MCP Memoria - Web UI & Knowledge Graph

February 3, 2026 mcp, claude, ai, memory, qdrant, ollama, python, nextjs, knowledge-graph ai

Memoria Gets a Web Interface

Since launching MCP Memoria - my MCP memory server built with Claude Code - in January, I’ve been working on a major enhancement: a full-featured Web UI that makes it easy to explore, manage, and visualize your AI memories.

The new interface transforms Memoria from a command-line MCP server into a more complete knowledge management system.

This is a side project for me, it’s not meant to compete with more sophisticated and powerful systems out there: it’s a tool I built for myself, I’m using it every day, am satisfied by the results I’m getting and thought it might be helpful for somebody else too.

Memoria Dashboard

What’s New

Knowledge Graph Explorer

The headline feature is the Knowledge Graph — a visual representation of how your memories connect to each other. Memories aren’t isolated facts; they form a web of relationships: one memory causes another, supports it, contradicts it, or follows chronologically.

Knowledge Graph

The graph view lets you:

  • Explore connections by clicking on any memory node
  • Adjust depth (1-3 levels) to see more or fewer relationships
  • Filter by relation type (causes, fixes, supports, opposes, follows)
  • Create new relations between memories with an intuitive dialog
  • Delete relations directly from the sidebar

The graph requires PostgreSQL to store the relation metadata — the vector database handles the memories themselves, while PostgreSQL manages the typed relationships between them.

Memory Browser

The Memory Browser provides a comprehensive view of all your stored memories with filtering and editing capabilities.

Memory Browser

Features include:

  • Semantic search — find memories by meaning, not just keywords
  • Filter by type — episodic, semantic, or procedural
  • Filter by date range — with quick presets like “last 7 days” or “last month”
  • Filter by tags — with auto-complete from your existing tags
  • Sort options — by creation date, last access, or importance score
  • Markdown rendering — memories with formatted content display properly
  • Inline editing — update memory content, tags, or importance directly

Discover Relations

Building a knowledge graph manually is tedious. The Discover Relations feature automatically scans your memories and suggests potential connections based on semantic similarity and shared context.

Discover Relations

The discovery process:

  1. Scans pairs of memories across collections
  2. Analyzes semantic overlap and shared tags
  3. Suggests a relation type with a confidence score
  4. Lets you accept, reject, or modify each suggestion
  5. Supports bulk actions — “Accept all suggestions above 85% confidence”

Discover should help finding connections we missed — a bug fix memory linked to the issue it resolved, a procedure connected to the decision that motivated it. In my own usage it’s giving interesting results. Can it be improved? Absolutely yes. How? You tell me!

Backup & Restore

Data safety matters. The new Backup & Restore page makes it easy to export all your memories and graph relations to a JSON file, and import them back when needed.

Backup & Restore

The backup includes:

  • All memories across all collections (episodic, semantic, procedural)
  • Graph relations with their types and metadata
  • Tags, importance scores, and timestamps

Import has a “skip existing” option to avoid duplicates when restoring.

Custom Metadata

Memories now support arbitrary metadata — key-value pairs you can attach to any memory. This is useful for tracking things like:

  • Project associations
  • Source URLs or document references
  • Priority levels
  • Custom categories

The metadata flows through all layers: MCP tools, REST API, and Web UI.

Time Tracking (Work Module)

A new Work Module adds time tracking capabilities via MCP tools:

  • memoria_work_start — Start a work session with category, client, and project
  • memoria_work_stop — End the session and record duration
  • memoria_work_pause / memoria_work_resume — Handle breaks
  • memoria_work_note — Add notes to the current session
  • memoria_work_report — Generate reports by period, client, or project

Categories include: coding, review, meeting, support, research, documentation, devops.

This lets you track how you spend time directly from Claude conversations — “start tracking time for client X on the API project” — without switching tools.

Architecture

The Web UI is built with:

  • Next.js 14 with App Router and React Server Components
  • Tailwind CSS with shadcn/ui components
  • D3.js for the knowledge graph visualization
  • FastAPI backend extending the MCP server with REST endpoints

The UI communicates with Memoria via a REST API that mirrors the MCP tool interface. This means all operations available via Claude are also available via the web interface.

┌─────────────────────────────────────────────────────────┐
│                    Web UI (Next.js)                      │
│  Dashboard │ Memories │ Graph │ Discover │ Backup       │
└────────────────────────┬────────────────────────────────┘
                         │ REST API

┌─────────────────────────────────────────────────────────┐
│              MCP Memoria Server (FastAPI)               │
├─────────────────────────────────────────────────────────┤
│  Memory Manager │ Graph Manager │ Work Tracker          │
├─────────────────────────────────────────────────────────┤
│  Qdrant (vectors) │ PostgreSQL (graph/work) │ Ollama    │
└─────────────────────────────────────────────────────────┘

Getting Started

Grab source code and see details at GitHub.

Briefly…

The easiest way to run the full stack:

git clone https://github.com/trapias/memoria.git
cd memoria/docker
docker-compose -f docker-compose.central.yml up -d

This starts:

  • Memoria server with REST API on port 8765
  • Web UI on port 3000
  • Qdrant for vector storage
  • PostgreSQL for graph and time tracking

Open http://localhost:3000 to access the UI.

Option 2: Development Setup

For local development:

# Backend
pip install -e ".[dev]"
MEMORIA_HTTP_PORT=8765 MEMORIA_DATABASE_URL=postgresql://... python -m mcp_memoria

# Frontend
cd web
npm install
npm run dev

Configuration

New environment variables for the enhanced features:

VariableDescription
MEMORIA_HTTP_PORTEnable HTTP/REST mode (e.g., 8765)
MEMORIA_HTTP_HOSTHTTP bind address (default: 0.0.0.0)
MEMORIA_DATABASE_URLPostgreSQL URL for graph & time tracking

The PostgreSQL database is optional — without it, the core memory features work fine, but Knowledge Graph and Time Tracking are disabled.

Try It

The complete source code is on GitHub: github.com/trapias/memoria

As always, feedback and contributions are welcome. Open an issue for bugs, feature requests, or questions.