Kagan - AI Orchestration Layer
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
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
| 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 |
|---|---|
| task_getA | Get a task by ID. The response includes a |
| task_listB | List tasks, optionally filtered by status, repo, or free-text query. Use this to inspect project state before planning or mutating work.
Pass |
| task_createA | Create one or more tasks on the active board. For a single task, pass |
| task_updateB | Update task fields or transition task status. Check the verification payload to confirm the requested changes were applied. |
| task_deleteC | Delete a task permanently. |
| task_eventsA | Fetch paginated execution events for a task. Use |
| task_waitB | Wait for tasks to reach completion or target statuses. Use this to gate dependent work or synchronize concurrent agents. |
| run_startC | Start a managed or attached run for a task. Creates the task worktree first if one does not already exist. |
| run_cancelB | Cancel a task run and stop its active session. |
| run_getA | Get the latest task and session status for a task. When a session exists, also returns context window usage fields: context_window_used, context_window_size, usage_ratio, needs_compaction. |
| run_detachC | Detach from an interactive session and update task state. |
| run_summaryC | Summarize runs, sessions, worktrees, and token usage for tasks. |
| verify_stepA | Record the outcome of a plan step verification. Call this after completing each major step in a task to signal whether the step passed or failed verification. verdict must be one of: PASS, FAIL, SKIP. step_index is the 0-based position of the step in the plan. step_description is a short human-readable label for the step. reason is a one-line justification with evidence. Returns dict with: task_id, session_id, step_index, step_description, verdict, reason, verified_at. |
| verification_summaryA | Return aggregated step verification results for a task. If session_id is provided, only steps from that session are included. Returns dict with: task_id, session_id, total, passed, failed, all_passed, steps (list of step dicts). |
| checkpoint_createA | Create a git-tag checkpoint at the current worktree HEAD. Captures the current HEAD commit of the task's worktree as a named checkpoint so the session can be rewound to this point later. task_id is the ID of the task whose worktree to snapshot. step_index is a caller-assigned integer identifying this checkpoint (should be monotonically increasing within a session). description is an optional human-readable label for the checkpoint. Returns dict with: task_id, session_id, step_index, commit_sha, tag_name, description, created_at. |
| checkpoint_listA | List all checkpoints for the task's current session. Returns checkpoints sorted by step_index (ascending). task_id is the ID of the task to query. Returns dict with: task_id, session_id, checkpoints (list of checkpoint dicts). |
| session_rewindA | Rewind the task's worktree to the commit captured at step_index. Performs a hard reset of the worktree to the checkpoint's commit SHA. Any uncommitted changes and commits after the checkpoint are discarded. task_id is the ID of the task to rewind. step_index identifies which checkpoint to restore. Returns dict with: task_id, session_id, step_index, commit_sha. |
| insight_addA | Add a project insight for a task. Insights are categorized observations extracted from agent sessions. Valid categories: pattern, error, architecture, preference, dependency. The insight is persisted as a TaskNote and will be surfaced in future task prompts alongside [LEARNING] notes. |
| insight_listB | List all insights recorded for a task. Returns insights grouped by category with their content. |
| insight_removeA | Remove an insight from a task by matching its content text. Performs a case-insensitive exact content match. Returns removed=True if a matching insight was found and deleted, removed=False otherwise. |
| project_listA | List all projects with repos inlined and active status. Returns each project with its attached repositories and whether it is the currently active project. |
| project_setupA | Create a new project, optionally attach repos and set it active. Args: name: Project name (required). repo_paths: Optional list of repository paths to attach. set_active: Whether to set this project as active (default True). |
| project_updateA | Update an existing project: set active, add repo, set default branch, or delete. Args: project_id: The project to update (required). set_active: If True, set this project as the active project. add_repo_path: Path of a repository to attach. repo_id: Repository ID (required when setting default_branch). default_branch: New default branch for the repo identified by repo_id. delete: If True, delete the project and return early. |
| review_decideB | Approve or reject a review-ready task. verdict must be "approve" or "reject". feedback is required when verdict is "reject" and ignored on "approve". |
| review_mergeB | Merge an approved task into its base branch. |
| review_rebaseB | Start, continue, or abort a rebase of the task branch onto its base branch. action must be "start", "continue", or "abort". |
| review_conflictsC | Return merge or rebase conflict details for a task. |
| review_verdictA | Record a pass or fail verdict for a single acceptance criterion. Call this once per criterion during review, BEFORE calling review_decide. verdict must be 'pass' or 'fail'. reason is a one-line justification. |
| review_clear_verdictsA | Clear all AI review verdicts for a task. Call before starting a new review. |
| settings_getA | Read allowlisted runtime settings. |
| settings_setC | Update one allowlisted setting value. |
| persona_inspectB | Audit and preview a persona preset repository before import. Returns trust assessment including:
|
| persona_importA | Import persona presets from GitHub into Kagan. Progressive trust behavior:
|
| persona_exportC | Export local persona presets to GitHub. |
| persona_trustB | Manage trusted persona preset repositories. Args: action: One of "list", "add", "remove". repo: Repository identifier (required for "add" and "remove"). |
| audit_listC | List recent audit log entries. |
| integration_previewA | Preview issues from a GitHub repository without importing. Returns a list of issues matching the filters so the user can select which ones to import via integration_sync with issue_numbers. Args: integration: Integration name (e.g. "github"). repo: Repository in owner/repo format. state: Issue state filter — "open", "closed", or "all". labels: Filter by labels (AND logic). limit: Maximum issues to fetch (1-500). |
| integration_syncA | Sync external items from an integration source into the active project. Imports issues from the specified repository as kagan tasks. Labels like
Args: integration: Integration to sync (e.g. "github"). repo: Repository in owner/repo format. state: Issue state filter — "open", "closed", or "all". labels: Only sync issues with ALL of these labels. limit: Maximum issues to fetch (1-500). issue_numbers: Import only these specific issue numbers. |
| integration_preflightA | Check whether an integration's external dependencies are satisfied. Returns pass/warn/fail checks for the requested integration (or all integrations). For github: verifies gh CLI is installed and authenticated. Args: integration: Integration to check. If omitted, checks all enabled integrations. |
| analytics_backend_statsC | Per-backend session stats: count, success rate, avg duration, retry rate. |
| analytics_session_timelineB | Daily session counts by status over a given period. |
| analytics_exportB | Export combined analytics (backend stats + session timeline) as JSON. |
| fs_read_fileA | Read a file from disk and return its content as text. Returns: {"path", "content", "eol_style", "has_bom", "encoding"}. |
| fs_write_fileA | Write content to a file, creating or overwriting it. Use this for new files or full rewrites. Does not preserve existing BOM or EOL style — use fs_edit_file for that. Returns: {"path", "bytes_written", "bom_preserved", "eol_style"}. |
| fs_edit_fileA | Apply one or more old→new text replacements to an existing file. Preserves the file's original BOM and line-ending style (CRLF/LF). Each edit must supply "old_text" (unique substring) and "new_text". Returns: {"path", "bytes_written", "bom_preserved", "eol_style"}. Raises on: empty old_text, text not found, duplicate matches, overlapping edits, replacement produces identical content. |
| bash_execA | Execute a shell command and return its combined output. Streams each stdout/stderr line as a Parameterscommand: Shell command string (passed to /bin/sh -c or cmd.exe /c). cwd: Working directory. Defaults to the server process cwd. timeout: Wall-clock timeout in seconds (default 300). Pass null for no limit (use with care on long-running commands). Returns
|
| terminal_runA | Run a long-running terminal command and stream its output. Designed for commands that produce output over time: test runners, build pipelines, or any program that writes incrementally to stdout. Each output line is forwarded as a Parameterscommand:
Shell command string (passed to /bin/sh -c or cmd.exe /c).
cwd:
Working directory. Defaults to the server process cwd.
timeout:
Wall-clock timeout in seconds (default 600 — 10 minutes).
Pass null for no limit.
max_output_lines:
Maximum lines retained in the final Returns
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| review_task | Return a structured code-review prompt for the given task. |
| plan_tasks_from_description | Return a task-breakdown prompt for the given feature description. |
| diagnose_failure | Return a diagnostic prompt for a failed task. |
| security_audit_persona_repo | Return a read-only audit prompt for a persona preset repository. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| ping | Health check |
| settings_snapshot | Settings snapshot |
| projects_list | Project list |
| runtime_info | Active sessions and agent processes |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/kagan-sh/kagan'
If you have feedback or need assistance with the MCP directory API, please join our Discord server