Kirok
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| KIROK_DB_PATH | No | Custom database path | ~/.kirok/memory.db |
| GEMINI_API_KEY | Yes | Google Gemini API key (get one free at https://aistudio.google.com/apikey) | |
| KIROK_DEDUP_THRESHOLD | No | Similarity threshold for deduplication (0.0–1.0) | 0.85 |
| KIROK_REFLECT_TIMEOUT | No | Timeout in seconds for reflect operations | 300 |
| KIROK_CONSOLIDATION_TIMEOUT | No | Timeout in seconds for consolidation | 120 |
| KIROK_CONSOLIDATION_BATCH_SIZE | No | Run auto-consolidation only once this many memories are pending (set 1 to consolidate on every retain) | 5 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| KIROK_retainA | Store new information in agent memory. Automatically extracts entities and keywords, generates a semantic embedding, and indexes for later retrieval. Smart Deduplication (inspired by Mem0): If the new content is highly similar to existing memories (cosine > 0.85), the system will decide whether to ADD (new info), UPDATE (enrich existing), or NOOP (skip). Args: bank_id: Memory bank identifier (e.g. 'antigravity', 'user-prefs'). content: The information to remember. context: Optional context about the source (e.g. 'project meeting'). timestamp: Optional ISO 8601 timestamp. Defaults to now. |
| KIROK_smart_retainA | Evaluate content importance before retaining. Uses LLM to score the content from 1-10 and only retains if score >= threshold. Use this for bulk/automatic ingestion where you want the system to decide what's worth remembering. Args: bank_id: Memory bank identifier. content: The information to potentially remember. context: Optional context about the source. timestamp: Optional ISO 8601 timestamp. threshold: Minimum importance score to retain (1-10, default 5). |
| KIROK_recallA | Search and retrieve relevant memories using semantic similarity and keyword matching, merged with Reciprocal Rank Fusion. Args: bank_id: Memory bank to search. query: Natural language search query. limit: Maximum number of results (default 10, max 50). time_min: Optional ISO 8601 lower bound for timestamp filtering. time_max: Optional ISO 8601 upper bound for timestamp filtering. verbose: If True, also show relevance scores (RRF/Sim) per item. Default False keeps the output compact (content + ID only) to save context tokens. |
| KIROK_reflectA | Reflect on accumulated memories to generate new insights. Retrieves relevant memories, analyzes them with an LLM, and saves the resulting insight as a 'mental model' for future reference. Args: bank_id: Memory bank to reflect on. query: What to reflect on (question, topic, or open-ended prompt). limit: Max memories to consider (default 20, max 100). auto_refresh: Whether to refresh this model after future consolidations. source_query: Optional query to use for future refreshes. Defaults to query. |
| KIROK_consolidateA | Manually trigger observation consolidation for a bank. Processes unconsolidated memories and synthesizes them into observations — patterns, preferences, and durable knowledge. Args: bank_id: Memory bank to consolidate. |
| KIROK_set_bank_configA | Configure a memory bank's retain and observations missions. The retain_mission guides what entities/keywords to extract (and what to ignore). The observations_mission guides what patterns to consolidate into observations. Args: bank_id: Memory bank to configure. retain_mission: Plain-language description of what this bank should focus on. observations_mission: Plain-language description of what observations to synthesize. |
| KIROK_get_bank_configA | Get the current configuration for a memory bank. Args: bank_id: Memory bank to query. |
| KIROK_list_banksA | List all available memory banks with their memory counts. |
| KIROK_statsC | Get statistics for a specific memory bank. Args: bank_id: Memory bank identifier. |
| KIROK_forgetA | Delete a specific memory by its ID. This is destructive and cannot be undone. Args: memory_id: ID of the memory to delete. |
| KIROK_list_memoriesA | List memories in a bank with pagination, ordered by most recent. Args: bank_id: Memory bank to browse. limit: Maximum number of memories to return (default 20, max 100). offset: Number of memories to skip for pagination (default 0). |
| KIROK_get_memoryC | Get full details of a specific memory by its ID. Args: memory_id: The memory ID to look up. |
| KIROK_update_memoryA | Update an existing memory's content. Re-extracts entities/keywords and regenerates the embedding if content changes. Args: memory_id: ID of the memory to update. content: New content text (leave empty to keep current). context: New context string (leave empty to keep current). |
| KIROK_clear_bankA | Delete ALL memories and observations in a bank, keeping the bank itself. Mental models are preserved. This is destructive and cannot be undone. Without confirm=true this makes NO changes and returns a preview of what would be deleted. Only pass confirm=true after the user has explicitly approved deleting this specific bank's contents. Args: bank_id: Bank to clear. confirm: Must be true to actually delete. Defaults to false (preview). |
| KIROK_delete_bankA | Permanently delete a bank and ALL its memories, observations, models, and config. This is destructive and cannot be undone. Without confirm=true this makes NO changes and returns a preview of what would be deleted. Only pass confirm=true after the user has explicitly approved deleting this specific bank. Args: bank_id: Bank to delete entirely. confirm: Must be true to actually delete. Defaults to false (preview). |
| KIROK_list_mental_modelsA | List mental models (insights generated by Reflect) for a bank. Args: bank_id: Memory bank to list mental models from. limit: Maximum number of models to return (default 10). |
| KIROK_get_mental_modelB | Get full details of a specific mental model. Args: model_id: The mental model ID to look up. |
| KIROK_delete_mental_modelA | Delete a specific mental model. This is destructive and cannot be undone. Args: model_id: ID of the mental model to delete. |
| KIROK_refresh_mental_modelA | Refresh an existing mental model by re-analyzing current memories. Updates the insight based on the latest data in the bank. Args: model_id: ID of the mental model to refresh. limit: Max memories to consider (default 20, max 100). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/TadFuji/kirok-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server