Version 0.7 with Agent & MCP Support

Key
Internet Language

Natural language substrate with formal semantics. Build knowledge graphs, power AI communication, and structure semantic data. For Humans and Robots Alike.

400">/alice (t=person w=Q5) knows 400">/bob (400">t=person<400">/span>).
400">/bob knows 400">/charlie (400">t=person<400">/span>).
400">/alice works_at 400">/acme (t=organization w=Q4830453).
400">/charlie lives_in 400">/paris (t=city w=Q90).
~75%
Fewer Errors vs SPARQL
~60%
Less Code
~80%
Faster Learning
10x
Closer to Natural Language

Why Choose Kyl?

Designed from the ground up for error prevention, natural expression, and seamless human-AI collaboration.

Error-Free by Design

Strict validation with unknown word detection. Three modes (h2h, h2m, m2m) for different use cases. Self-validating documents.

Human-AI Optimized

94% token reduction via references. MCP integration for AI lookup, validation, and paraphrasing. Agent events with on/send syntax.

Native DID Support

Built-in DID headers, versioned references, and fine-grained access control. Document encryption and audit trails.

SPARQL Compatible

Familiar query patterns with 75% fewer errors. Easy migration from existing graph databases.

Minimal Syntax

Reference operators (k:, k->, k<-, k!), units support (24 hours, 100 usd), and comparison operators built-in.

Universal Interface

Replace JSON/XML with semantic format. Works with knowledge graphs, semantic web, and data exchange.

See Kyl in Action

From simple statements to complex structures with DID protection.

400">/alice (t=person w=Q5) knows 400">/bob (400">t=person<400">/span>).
400">/bob knows 400">/charlie (400">t=person<400">/span>).
400">/alice works_at 400">/acme (t=organization w=Q4830453).
400">/charlie lives_in 400">/paris (t=city w=Q90).

Kyl vs SPARQL

Same power, dramatically simpler syntax.

SPARQL (10 lines)
PREFIX foaf: 
PREFIX geo: 

SELECT ?person ?friend WHERE {
  ?person a foaf:Person ;
          foaf:knows ?friend .
  ?friend foaf:based_near ?location .
  ?location geo:name "Paris" .
}
Kyl (3 lines)
400">/person (400">t=person<400">/span>) knows 400">/friend (400">t=person<400">/span>).
400">/friend based_near 400">/location (400">t=place<400">/span>).
400">/location 300">name<400">/span>:400">str<400">/span>='Paris'<400">/span>.
MetricKyl vs SPARQLKyl vs Cypher
Error Reduction~75% fewer~40% fewer
Syntax Simplicity~60% simpler~40% simpler
Learning Curve~80% faster~50% faster
Natural Language Proximity10x closer5x closer

Built for the Future

From knowledge graphs to AI agents, Kyl powers the next generation of semantic applications.

AI Agents

Human-AI & AI-AI communication

Knowledge Graphs

Error-free data ingestion

Healthcare

HIPAA-compliant records

Smart Contracts

Legally binding documents

Quick Reference

Everything you need to start writing Kyl.

References

/term - Reference
(t=type) - Type annotation
name:str='text' - Typed value
did:kyl:x:y - DID reference
/term k: value - Define

Operators

k: - Define term
k-> - Publish definition
k<- - Import from source
k! - Assert exists
=, !=, >, < - Comparisons

Types & Units

str, int, num, bool - Primitives
date, time, uri - Temporal/Web
list, set, map - Collections
24 hours - Time units
100 usd - Currency units