Komplyt / Knowledge Graph
kompl.yt

Persistent Memory for AI Agents

Working memory that survives context compression. Record decisions, surface relevant history, let knowledge decay naturally.

Get Started View Tools

Quick Install

  1. 1. Open Settings → Connectors → Add custom connector
  2. 2. Enter URL: https://kg.kompl.yt/mcp
  3. 3. Leave OAuth client ID/secret empty (auto-registered)
  4. 4. Click Add, then Connect
  5. 5. Enter your org, email, and API key on the authorize page
  6. 6. Enable the connector via the tools menu in chat

Add via CLI with your API key:

claude mcp add --transport http kg https://kg.kompl.yt/mcp \
  --header "Authorization: Bearer $KG_API_KEY" \
  --header "X-KG-User: you@example.com" \
  --header "X-KG-Org: your-org"

Requires Developer mode (Plus/Pro/Team/Enterprise):

  1. 1. Enable: Settings → Apps & Connectors → Advanced → Developer mode
  2. 2. Click Create or "Add custom connector"
  3. 3. URL: https://kg.kompl.yt/mcp
  4. 4. Authentication: OAuth (auto-discovery)
  5. 5. Complete authorization with your credentials

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "kg": {
      "transport": "http",
      "url": "https://kg.kompl.yt/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY",
        "X-KG-User": "you@example.com",
        "X-KG-Org": "your-org"
      }
    }
  }
}

Any MCP-compatible client can connect via HTTP transport:

Endpoint

https://kg.kompl.yt/mcp

Authentication

OAuth 2.1 with PKCE (auto-discovery via /.well-known/oauth-authorization-server)

Or direct Bearer token with X-KG-User and X-KG-Org headers

Protocol

MCP Streamable HTTP (JSON-RPC 2.0)

Tools

kg_session_start Start a working session

Sessions drive decay scoring. Start one per work block; nodes decay between sessions.

Parameters

project?: string
create_project?: boolean
notes?: string

Example

kg_session_start({
  project: "api-redesign"
})
kg_session_info Current session details

Read-only. Returns the current session and node counts by type.

Parameters

(no parameters)

Example

kg_session_info({})
kg_session_end End the current session

Ends the active session. Nodes and edges are kept.

Parameters

(no parameters)

Example

kg_session_end({})
kg_node_create Record knowledge artifacts

Capture observations, decisions, problems, approaches, and more. Generates embeddings for semantic search.

Parameters

type: "observation" | "decision" |
      "problem" | "approach" | ...
content: string
status?: "open" | "resolved" | ...
relates_to?: string[] // node IDs, max 20
project?: string
container?: string
tags?: string[]

Example

kg_node_create({
  type: "decision",
  content: "Use Zod for validation",
  tags: ["architecture"]
})
kg_query Search the knowledge graph

Semantic search with spreading activation. Finds related nodes through learned edges.

Parameters

text?: string  // semantic query
type?: string  // filter by type
status?: string
project?: string
spread?: boolean  // default: true
limit?: number    // default: 10

Example

kg_query({
  text: "authentication flow",
  type: "decision",
  limit: 5
})
kg_node_update Update and reactivate nodes

Modify node status or content. Reactivates the node, preventing decay.

Parameters

id: string      // node ID
status?: string // new status
content?: string // regenerates embedding

Example

kg_node_update({
  id: "node:abc123",
  status: "resolved"
})
kg_relate Create explicit relationships

Create or reinforce edges between nodes. Strengthens spreading activation paths.

Parameters

from: string  // source node ID
to: string    // target node ID

Example

kg_relate({
  from: "node:abc",
  to: "node:xyz"
})
kg_status Get current session state

Overview of session, open problems/todos, and recent decisions.

Parameters

project?: string  // filter by project

Returns

current_session: number
total_nodes: number
open_todos: Node[]
open_problems: Node[]
recent_decisions: Node[]

Concepts

Sessions

Start a session per work block. Decay happens between sessions, surfacing recently active knowledge.

Decay

Old nodes fade over time. Use kg_node_update or kg_query to reactivate what matters.

What changes

Only kg_node_update edits node content. Queries, relates and session starts update usage metrics (decay and activation scores) that weight future results.

Spreading Activation

Queries activate connected nodes through learned edges. Related knowledge surfaces automatically.