Omni-Context MCP

Omni-Context exposes a local knowledge and decision store to assistants through a stdio bridge or authenticated loopback HTTP endpoint.

Local + remotestdiostreamable-httpTypeScriptMIT

What is the Omni-Context MCP Server?

Omni-Context exposes a local knowledge and decision store to assistants through a stdio bridge or authenticated loopback HTTP endpoint.

Reuse project memory and decisions

The project combines a desktop application and a brain server for captures, knowledge retrieval and decision context. Its canonical tool manifest defines the actual MCP surface. Use that manifest rather than an older tool count or names copied from another memory server.

Choose the installed bridge or source mode

The desktop installation uses mcp-proxy.js, which reads the local token and forwards requests to the running app. A standalone source server uses mcp-server.js with DB_PATH selecting its SQLite store. The documented HTTP route is a local /mcp endpoint with a bearer token; localhost does not remove its authentication requirement.

Verify the intended memory store

Save a small test conclusion and retrieve it from the next session. Confirm that the desktop app and client are using the intended store before diagnosing a missing memory. A stale decision should be revised with its supporting context, not treated as a permanent instruction. Keep capture and write operations scoped to information the user intends to retain.

Project documentation

Repository and setup guide

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
record_captureStore a capture event (screenshot, clipboard content, system logs) into the knowledge graph. Use when the user explicitly wants to save a moment or piece of context for future reference.
get_core_contextGet a compact set of the user's core principles. Pass the current topic as query when possible so only relevant principles are returned; without a query the server returns a capped general overview, not the full core set.
search_entitiesSearch for entities in the knowledge graph by name or description. Use when you need to find specific concepts, tools, people, projects, or code the user has encountered before.
add_entityAdd a new entity to the knowledge graph. Use when you discover a concept, tool, person, pattern, or piece of information worth remembering for future conversations.
get_entityRetrieve full details and all relationships for a specific entity by its ID. Use when you have an entity ID from search results and need to explore its connections.
add_relationshipCreate a relationship edge between two entities in the knowledge graph (e.g. depends_on, conflicts_with, extends, belongs_to). Use when you discover a meaningful connection between two concepts.
get_graph_neighborhoodGet the graph neighborhood around a specific entity—its directly related entities and their connections. Use when you need to understand the context and ecosystem surrounding a concept, rather than just its properties.
extract_from_captureAnalyze raw text or captured content and automatically extract entities, relationships, and principles into the knowledge graph. Use when processing a saved capture or analyzing a block of user-provided content.
list_entitiesList all entities in the knowledge graph, optionally filtered by type. Use to get an overview of what the user has stored, or to browse entities of a specific category.
update_entityUpdate an existing entity's name, description, tags, or metadata. Use when you need to correct or enrich information about something already in the knowledge graph.
get_statsGet system statistics: total entity count, relationship count, entity type distribution, and memory usage. Use when you need a high-level overview of the knowledge graph's size and composition.
vector_searchSearch the knowledge graph by semantic similarity using vector embeddings. Unlike text search, this finds conceptually related entities even when they use different words. Use when a keyword search misses relevant results.
unified_memory_searchFused memory search combining text search, vector similarity, and graph traversal. Returns the most relevant entities for a given query across all three methods, deduplicated. This is the recommended go-to search when you want the most complete results.
get_decision_contextWhen you are facing a specific situation or decision and need context from the user's knowledge graph to inform your judgment. Returns relevant principles, related memories, historical conflicts, and graph neighborhood — but does NOT make the decision for you. Call this before giving advice that depends on the user's past patterns or preferences.
save_conclusionCall this when the conversation reaches a meaningful conclusion, a decision is made, or the user learns something worth remembering. ALWAYS proactively call this at the end of a substantive conversation to save key takeaways into long-term memory. Pass a short summary and (if relevant) related entity IDs from earlier search results.
save_decisionSave a decision the user just made into the knowledge graph. Creates a decision entity linked to cited principles/memories via decision_referenced edges, and archives the full context for future retrieval. Use when the user has made a concrete choice and wants it remembered.
analyze_decisionAnalyze a decision situation using the knowledge graph as context. Retrieves relevant principles, history, and conflicts, then feeds them to an LLM for structured analysis including pros/cons, risks, recommendation, and evidence citations. Use when the user wants AI-assisted decision analysis, not just raw data.
discuss_decisionContinue a decision discussion with AI. Takes the conversation history and returns a follow-up response grounded in the knowledge graph context. Use for multi-turn decision refinement.
get_decision_lineageTrace the lineage of a decision — what sources it cited and what other decisions form a chain with it. Useful for understanding how past decisions connect to form a reasoning path.
record_decision_outcomeRecord an observed result for a saved decision, including calibration, failed assumptions, lessons, and follow-up actions. This never changes core principles automatically.
get_decay_reportGet the memory decay report showing which entities have decayed over time and may need reinforcement or cleanup. Use when maintaining the knowledge graph's health.
ask_memoryAsk the user's second brain a natural-language question. Retrieves relevant memories from the local knowledge graph and answers grounded in them, citing sources. Use for "what do I know/think about X" style questions.
graph_answerAnswer a question or help with a decision using the user's knowledge graph. Returns a structured result: a one-line conclusion, supporting reasons (each citing memory nodes), the cited sub-graph edges, and—for decisions—clarifying questions. Prefer for decisions ("should I…", "which…") and whenever grounded, citable reasoning is wanted.
merge_entitiesSoft-merge two duplicate entities: keep one, fold the other into it (relationships repointed, the other hidden). Reversible. Use to consolidate duplicates instead of deleting.
set_core_principleMark a principle as core (injected into every AI conversation) or demote it from core. Keep core to the user few distinctive operating principles; demote generic or bulk-imported ones.
delete_entityPermanently delete an entity and its relationships. Irreversible — prefer merge_entities for duplicates. Use only for clearing genuine junk/wrong memories.

How to install the Omni-Context MCP Server

{
  "mcpServers": {
    "omni-context": {
      "command": "node",
      "args": [
        "/ABSOLUTE_PATH/Omni-context/brain-server/dist/mcp-proxy.js"
      ]
    }
  }
}

Configuration

The running Omni-Context desktop app and built proxy, or a configured standalone brain server and SQLite path.

Example prompts to try

  • “Use Omni Context to Windows.”

Frequently asked questions

The installed proxy reads the local token and forwards to the desktop app. DB_PATH is used for standalone source-server mode.