Skip to content

MCP tools reference

The 46 Model Context Protocol tools Korva exposes to AI assistants over stdio JSON-RPC. Tools are partitioned across three permission profiles — agent (41), readonly (17), admin (46) — selected via KORVA_MCP_PROFILE.

Updated: 2026-04-30

Korva implements the Model Context Protocol version 2024-11-05 over stdio JSON-RPC 2.0. Every supported IDE talks to the Vault using this protocol. The same Vault server speaks to humans over HTTP on :7437 and to AI agents over MCP on stdin/stdout simultaneously.

Permission profiles

The set of tools exposed depends on KORVA_MCP_PROFILE:

ProfileToolsUse case
agent19AI assistant in active development. Default.
readonly8Untrusted clients — search and read-only context
admin22Admin tooling. Adds vault_delete, vault_bulk_save.

Search & context tools (agent + readonly)

ToolDescriptionKey inputs
vault_searchFTS5 full-text search with compact / why modesquery, project, team, country, type, limit, compact, why
vault_contextRestore recent observations for a project at session startproject, limit, budget_tokens, delta, prompt, file_paths, skill_limit
vault_timelineDate-range queryproject, from (RFC3339), to
vault_getFetch a single observation by ULIDid
vault_hintUltra-light search — id+type+title only, ~10× fewer tokensquery, project, type, limit
vault_summaryHigh-level summary of a projectproject
vault_statsGlobal Vault statisticsnone
vault_queryStructured query (no FTS) by type/date/projectproject, team, type, since, until, limit
vault_skill_matchSmart Skill Auto-Loader (Teams+)prompt, project, file_paths, limit
vault_compressCaveman compression of long outputtext, mode (off/lite/full/ultra)
vault_pattern_mineDetect emergent patterns (Teams+)project, max, min_count
vault_code_healthA–F code health grade (Teams+)none
vault_team_contextSkills + private scrolls for the team (Teams+)uses session token
vault_export_loreExport team’s private scrolls (Teams+)since (RFC3339)

Write tools (agent only)

ToolDescriptionKey inputs
vault_saveSave an observation, with privacy filter + deduptitle, content, type, tags, project, team, country, author, session_id, dry_run, force
vault_save_promptSave a reusable prompt templatename, content, tags
vault_session_startBegin a tracked work sessionproject, team, country, agent, goal
vault_session_endClose a session with a summarysession_id, summary
vault_sdd_phaseRead or advance the SDD phaseproject, phase (optional)
vault_qa_checklistQuality criteria for a phase + languagephase, language (go/typescript/react)
vault_qa_checkpointRecord a QA result with gate logicproject, phase, language, status, score, findings, notes, gate_passed, session_id

Admin tools (admin only)

ToolDescriptionKey inputs
vault_deleteRemove an observation by ULIDid
vault_bulk_saveSave up to 50 observations in one callobservations[]

Observation types

Every save declares a type. These are filterable in search and act as hints to the model:

decision, pattern, bugfix, learning, context, antipattern, task, feature, refactor, discovery.

SDD phases (persisted in sdd_state)

explore → propose → spec → design → tasks → apply → verify → archive → onboard.

vault_save input schema

{
"title": "string (max 100 chars)",
"content": "string",
"type": "decision|pattern|bugfix|learning|context|antipattern|task|feature|refactor|discovery",
"tags": ["string"],
"project": "string",
"team": "string",
"country": "string",
"author": "string",
"session_id": "ULID (optional)",
"dry_run": false,
"force": false
}

Returns either { "id": "ULID" } or { "deduplicated": true, "existing_id": "ULID" } if the same content_hash already exists in this session.

When to call which tool

  • Session startvault_context with project, prompt, file_paths. Pulls auto_skills + recent observations.
  • Cheap discoveryvault_hint (10× cheaper in tokens than vault_search).
  • Full discoveryvault_search with optional why mode for hint reasoning.
  • Decision worth savingvault_save with type=decision or type=pattern.
  • Long output to vaultvault_compress first, then vault_save.
  • End of sessionvault_session_end with a one-paragraph summary.

vault_search?cloud=1 blends local results with the optional Hive community brain (3-second hard timeout). Local IDs always take priority. See Hive.

Next