SEMANTIC MEMORY FOR AI AGENTS
Build knowledge graphs
your agents can trust
Validated property graphs with vector embeddings. Give your agents structured semantic context instead of raw document chunks.
The problem with vector-only RAG
- Retrieved chunks have no guaranteed relationships to each other
- No schema means agents can write contradictory information
- Cannot traverse dependencies or hierarchies
- Context quality degrades as the knowledge base grows
Graph + Vector = Structured Memory
- Semantic search combined with relationship traversal
- Schema validation prevents invalid data at write time
- Navigate connections between entities for richer context
- Hybrid queries: "Find similar modules that import auth-service"
How it works
Every graph instance runs PostgreSQL with Apache AGE and pgvector. You or your agents define schemas, then write validated entities.
Define your ontology
Create DTDL models that define what entities exist and how they relate. You or your agents can define schemas, and data writes are validated against them.
{
"@id": "dtmi:code:Module;1",
"@type": "Interface",
"contents": [
{
"@type": "Property",
"name": "path",
"schema": "string"
},
{
"@type": "Property",
"name": "embedding",
"schema": { "@type": "Array", "elementSchema": "double" }
},
{
"@type": "Relationship",
"name": "imports",
"target": "dtmi:code:Module;1"
}
]
}Ingest via MCP, SDK or REST API
Use the SDK or REST API directly or connect AI agents via the Model Context Protocol. Every write is validated against your models.
{
"mcpServers": {
"konnektr-memory": {
"httpUrl": "https://mcp.graph.konnektr.io/mcp?resource_id={resource_id}"
}
}
}Query with Cypher + vectors
Combine graph traversal with semantic similarity in a single query. Navigate relationships and rank by embedding distance.
MATCH (file:Twin)-[:imports]->(dep:Twin)
WHERE file.`$metadata`.`$model` = 'dtmi:code:Module;1'
AND dep.name = 'auth-service'
RETURN file.path, file.lastModified
ORDER BY l2_distance(file.embedding, $query_vector)
LIMIT 10MODEL CONTEXT PROTOCOL
Connect to Claude, Cursor, or any MCP client
The MCP server exposes your graph as tools. Agents can create entities, build relationships, and query the graph through natural conversation.
{ "search_text": "authentication middleware" }{ "query": "MATCH (m:Twin)-[:imports]->(auth:Twin {name: 'auth-middleware'}) RETURN m.path" }{ "twin_id": "note-auth-pattern", "model_id": "dtmi:code:ArchitecturalNote;1", "properties": { "content": "auth-middleware is a critical dependency..." } }Built for structured domains
When your agents need to understand relationships, not just content.
Codebase Knowledge
Map modules, dependencies, and architectural decisions. Ask "what breaks if we change this?" and get graph-backed answers.
"Which services depend on the payment module?"Real-Time Context
Allow agents to read real-time device states. Sync sensor networks to the graph for live situational awareness.
"Get current temperature of Pump-A"Compliance & Audit
Track decision lineage and regulatory requirements. Every node has provenance, every relationship is typed.
"Show the regulation that requires this control"Built on proven foundations
PostgreSQL
ACID compliant, battle-tested. Your data lives in the most reliable database in the world.
Apache AGE
Graph extension for Postgres. Native Cypher queries without leaving your relational database.
pgvector
Vector similarity search alongside graph nodes. True hybrid queries in a single database.
Start free, scale as you grow
The Developer tier is free forever with 500 entities and full API access. Upgrade when you need more capacity or enterprise features.