Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}
prompts
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
validate_knowledgeA

Validate a Canonical Knowledge Structure. Returns validation result and diagnostics. Optionally accepts 'session_id' to validate an existing session's current state instead of creating a new one. Optionally accepts 'extensions' to opt into additional, non-default validation rules for this call only (see 'extensions' parameter). Returns a 'session_id' that can be used with list_versions and revert_version to track and manage version history.

serialize_knowledgeA

Serialize a Knowledge Structure into its canonical JSON representation. Optionally accepts 'session_id' to serialize the current state of an existing session.

explain_knowledgeA

Produce a human-readable explanation of a Knowledge Structure. Optionally accepts 'session_id' to explain the current state of an existing session.

evolve_knowledgeB

Apply structural evolution operators to a Knowledge Structure. Returns a new 'session_id' and 'version_id'. The 'session_id' can be used with list_versions and revert_version.

merge_knowledgeA

Three-way merge of Knowledge Structures. Provide a common ancestor (base) and two independently evolved branches. Returns the merged structure or a list of conflicts if automatic resolution is impossible.

create_branchA

Fork a new session from an existing one. Use this to isolate an experiment, explore an alternative modeling approach, or try a risky edit without touching the parent session -- if the branch doesn't pan out, close_session it; if it does, merge_branch it back into the parent.

merge_branchA

Session-aware three-way merge: merge a branch session's changes into a target session. The merge base is resolved automatically from the branch's recorded fork point (set by create_branch), so -- unlike merge_knowledge -- you never supply the base yourself. On success, commits the merged result as a new version of the target session. On conflict, returns a 'conflicts' list (object_id, target_diff, source_diff) instead of merging. Do not call merge_branch again unchanged after a conflict -- retry it with a 'resolutions' argument covering each conflicting object_id (see the 'resolutions' parameter), which merges everything -- non-conflicting changes and now-resolved conflicts alike -- in this one call; identities you don't supply a resolution for are reported again. Only if you'd rather change the target session's content directly, apply your resolution there with evolve_knowledge and retry merge_branch with no resolutions. Either way, close_session the source branch once it has been fully integrated.

close_sessionA

Close a session, releasing it from the runtime. Typical use: after merge_branch reports success, close_session the source branch that was just merged in -- it has been integrated and no longer needs to stay open.

query_subgraphA

Extract the local k‑hop neighbourhood around one or more seed ids from a session's current Knowledge Structure. Returns a self‑contained subgraph (serialized) and metadata: total_found_nodes, returned_nodes, is_truncated, truncation_reason, suggested_next_seed. Use filters (include_relation_types, include_object_types) to narrow the traversal, and max_tokens/max_objects to cap the result. type_weights can prioritise certain object types when the budget forces truncation.

search_semanticA

Semantically search the Knowledge Structure of a session. Provide a natural language query; if the storage backend has a vector index (embeddings generated via the background outbox worker), matching seed objects are found automatically. Pass explicit 'seed_ids' instead when you already know which objects to expand around, or as a fallback if no embeddings have been generated yet for this session. The tool expands the neighbourhood around the matched seeds using query_subgraph. Use this when you don't know exact object IDs but have a description of what you're looking for.

get_metricsA

Return runtime metrics and the tool telemetry dashboard. 'runtime_metrics' contains invocation counts and average execution times per runtime operation type. 'tool_telemetry' contains per-MCP-tool call counts, success rates, latency percentiles (p50/p95/p99), and top error types since the server started.

verify_sourceA

Verify an external source by performing a real HTTP request. Creates a VerificationRecord that can be validated.

list_versionsA

List all available versions of a session's history. Requires a 'session_id' obtained from a previous call to validate_knowledge or evolve_knowledge.

revert_versionA

Revert a session's Knowledge Structure to a specific previous version. Requires a 'session_id' obtained from a previous call to validate_knowledge or evolve_knowledge.

compare_versionsC

Compare the current state of a session against a target version. The returned diff is directional. 'direction' explicitly describes how to interpret the changes. 'base_version_id' is the historical version being compared against. 'target_version_id' is the current session state. The response also contains a semantic summary (added/removed objects and relations) to make interpretation easier for LLMs.

visualize_graphA

Export a subgraph as a Mermaid diagram. Many MCP clients render Mermaid natively; if yours doesn't, the raw Mermaid text is still useful as structured output. Use this after query_subgraph to show the structure.

explain_diffA

Explain the differences between the current state of a session and a target version in plain English. Useful for understanding what changed without parsing raw diff output.

export_knowledgeA

Export a session's Knowledge Structure to another format. Supports 'json-ld', 'turtle', and 'rdf-xml'.

suggest_evolutionA

Given a session and a description of what to change, return the current objects/relations and guidance for constructing valid evolution operations. Use this before evolve_knowledge to reduce trial-and-error. If you already have a candidate 'operations' list (same format evolve_knowledge accepts), pass it here first to preview whether it would be valid -- this dry-runs it the same way evolve_knowledge does internally, but commits nothing, so you can check correctness before spending a real evolve_knowledge call on a guess.

detect_contradictionsA

Detect logical contradictions in a Knowledge Structure using the contradiction/conflict extension constraints. Supports three types of detection:

  • mutual_exclusion: Flags when the same source-target pair has both of two declared relation types.

  • functional_relation: Flags when a source has multiple targets via a declared single-valued relation type.

  • inference_confidence_conflict (see ADR-001): Flags when two or more active (non-superseded) InferenceStep objects share a 'conclusion' but disagree on 'confidence'. Reported at WARNING severity, not ERROR -- this is a resolvable belief conflict between agreeing inference paths, not a jointly-nonsensical relation pair. Mark a step no longer active with its own 'superseded_by' field, not by editing another step. Examples of contradiction rules:

  • MutualExclusionRule: {"identity": {"id": "rule-1", "type": "MutualExclusionRule", "name": "no-support-and-refute"}, "structure": {"relation_type_a": "supports", "relation_type_b": "refutes"}}. This flags when the SAME source-target pair has BOTH a 'supports' and a 'refutes' relation.

  • FunctionalRelationRule: {"identity": {"id": "rule-2", "type": "FunctionalRelationRule", "name": "single-orbit"}, "structure": {"relation_type": "orbits"}}. This flags when a single source has MORE THAN ONE target via 'orbits'. To use mutual_exclusion/functional_relation, ensure your structure contains MutualExclusionRule and/or FunctionalRelationRule objects. inference_confidence_conflict needs no rule object -- it applies to any InferenceStep objects present.

fork_sandboxA

Create an isolated sandbox branch from a parent session, optionally apply a hypothesis (list of evolution operations) immediately, and show how the sandbox differs from its fork point. The parent session is never touched. Safe to discard with close_session if the hypothesis doesn't pan out.

construct_knowledgeA

Build a Canonical Knowledge Structure from free-form text using an LLM. The LLM extracts entities and relationships, generates a valid CKS JSON payload, which is then parsed and validated before being persisted as a new session. Provider is auto-selected (CKS_LLM_PROVIDER): a local Ollama server if reachable (no API key needed), else Anthropic if ANTHROPIC_API_KEY is set. Returns 'session_id', 'version_id', and the serialized structure. Use 'hint' to direct the extraction toward specific aspects of the text.

export_sessionA

Export a full session bundle for migration or archival. Unlike export_knowledge (which converts to RDF/JSON-LD), this tool packages the session's current structure, version history, and metadata into a self-contained JSON document that can be used to recreate the session in another runtime instance. Supports two formats: 'bundle' (default) — a complete migration envelope with version history; 'cks' — bare canonical CKS JSON of the current structure only. Set 'include_structures' to true to embed the full KnowledgeStructure for each historical version (may be large).

ingest_documentA

Fetch a public URL, extract its title, description and key topics, and return a Knowledge Structure representing the document. The document object is linked via 'mentions' relations to Topic objects for each extracted keyword. SSRF protection is applied, so private/internal URLs are refused.

Prompts

Interactive templates invoked by user choice

NameDescription
create_knowledge_graphCreate a validated knowledge graph about a topic
verify_claimVerify a claim by checking a real URL and signing the result
explore_subgraphExtract the local neighbourhood around an object in a knowledge graph
branch_and_mergeDemonstrate a branching and merging workflow on a knowledge graph

Resources

Contextual data attached and managed by the client

NameDescription
CKS SessionsList of all active CKS session IDs

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Deus-corp/cks-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server