kanbn-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| KANBN_DEFAULT_PATH | Yes | The project root directory that contains the .kanbn subfolder. This should be the parent project directory, not the .kanbn folder itself. |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| kanbn_statusA | Check the current status of the Kanbn board, optionally scoped by the quiet, untracked, due, sprint and dates parameters (board detection checks the methods: initialised, initialized, isInitialized, isInitialised). The response is capped at 100KB by default (configurable via the KANBN_MAX_RESPONSE_SIZE environment variable, in bytes): oversized output automatically falls back to compact JSON, then is truncated with a truncation marker. |
| kanbn_init_boardC | Initialize a new Kanbn board in the target directory. |
| kanbn_initialize_boardD | Alias for kanbn_init_board. |
| kanbn_ensure_boardA | Ensure a Kanbn board exists, initializing one if absent (board detection checks the methods: initialised, initialized, isInitialized, isInitialised). |
| kanbn_create_taskB | Create a new task on the Kanbn board. The 'name' field is required; all other fields are optional. |
| kanbn_move_taskB | Move an existing task to a different column. |
| kanbn_rename_taskC | Rename an existing task on the Kanbn board. |
| kanbn_delete_taskC | Delete a task from the Kanbn board. |
| kanbn_archive_taskC | Archive a task on the Kanbn board. |
| kanbn_get_taskC | Retrieve details of a specific task from the Kanbn board. |
| kanbn_edit_taskB | Edit an existing task on the Kanbn board. |
| kanbn_add_relationA | Add a relation edge (e.g. {task, type: 'depends-on'}) to a task. Merges: existing relations are preserved and only the new edge is appended. |
| kanbn_remove_relationA | Remove relation edge(s) from a task. A type filters the removal; omitting it removes every relation to the given task. |
| kanbn_set_relationsA | Authoritatively replace a task's entire relations collection with the supplied array. An empty array clears all relations. This is replace-all: supply every desired edge. |
| kanbn_delete_boardA | Delete an entire Kanbn board directory. |
| kanbn_unarchive_taskC | Unarchive a task on the Kanbn board. |
| kanbn_restore_taskB | Alias for kanbn_unarchive_task. |
| kanbn_find_simple_tasksA | Find simple tasks (non-file column lines) by title, or all on the board. |
| kanbn_get_simple_taskA | Resolve exactly one simple task by title, or throw. |
| kanbn_move_simple_taskB | Move a simple task to another column. |
| kanbn_move_simple_task_to_boardC | Move a simple task onto another board. |
| kanbn_delete_simple_taskC | Remove a simple task from the board. |
| kanbn_promote_simple_taskB | Convert a simple task into a real task file. |
| kanbn_create_boardC | Create a new secondary board. |
| kanbn_delete_board_fileB | Delete a secondary board file, returning orphaned task IDs. |
| kanbn_rename_boardC | Rename a secondary board (slug and/or display name). |
| kanbn_list_boardsA | List all boards in the workspace. |
| kanbn_boards_summaryB | Get a summary with per-board task statistics. |
| kanbn_board_existsC | Check whether a board exists. |
| kanbn_reserved_board_slugsB | List the board slugs reserved by Kanbn. |
| kanbn_validate_board_slugA | Validate a proposed board slug, throwing on invalid or reserved values. |
| kanbn_find_orphaned_tasksA | Find tasks only referenced by one board (would orphan on its deletion). |
| kanbn_cross_board_tasksA | Find tasks that appear on more than one board. |
| kanbn_tasks_on_other_boardsB | Map every task to all other boards that reference it. |
| kanbn_sort_columnB | Sort a board column by the given sorters. |
| kanbn_commentB | Add a comment to a task. |
| kanbn_get_configA | Get the Kanbn config, or null if no separate config file exists. |
| kanbn_save_configB | Save the Kanbn config to a config file. |
| kanbn_get_action_rulesC | Get the resolved action rules for the board. |
| kanbn_find_action_warningsC | Get potential issues with the board's action rules. |
| kanbn_get_date_formatB | Get the board's date format string. |
| kanbn_get_task_templateB | Get the board's task template string. |
| kanbn_get_workspace_optionsC | Get workspace-scoped Kanbn options. |
| kanbn_validate_boardC | Validate the board and return true or a list of parsing errors. |
| kanbn_searchB | Search tasks on the board with filters (works across all columns). |
| kanbn_get_contributorsB | Get the workspace's contributors, normalised to the object form. |
| kanbn_find_contributorB | Find the contributor a value refers to, matching name, display name or aliases. |
| kanbn_current_userA | Resolve the current user (KANBN_USER, then git email/name when contributors are declared). |
| kanbn_collect_contributor_valuesB | Collect every distinct assigned/author value in use across task files. |
| kanbn_contributor_usageB | Report how the workspace's contributors are used, including spelling variants and unknown values. |
| kanbn_contributor_warningsB | Find tasks whose assigned user or comment author isn't a known contributor. |
| kanbn_burndownB | Get burndown chart data as an object. |
| kanbn_add_untracked_taskB | Add an untracked task file to a column in the index. |
| kanbn_find_tracked_tasksC | List tracked task IDs, optionally filtered by column. |
| kanbn_find_untracked_tasksB | List task files that aren't in the index. |
| kanbn_find_missing_task_filesA | Find indexed tasks whose file is missing, as {task, column} entries. |
| kanbn_add_task_to_boardC | Add an existing task file to this board. |
| kanbn_find_task_boardsB | Find which boards and columns reference a task. |
| kanbn_task_file_existsA | Check whether a task file exists, regardless of whether any board references it. |
| kanbn_task_existsB | Check that a task file exists and is indexed; throws otherwise. |
| kanbn_find_task_columnA | Find the column a task is in, or throw if the task doesn't exist or isn't indexed. |
| kanbn_remove_allA | Delete the whole board and all its data. Requires confirm: true. |
| kanbn_start_sprintA | Start a new sprint on the Kanbn board. Accepts an optional name, description, and start date; a blank name generates 'Sprint N' and a blank start date defaults to now. Sprint names must be unique. |
| kanbn_list_archived_tasksB | List the ids of tasks that have been archived. |
| kanbn_load_archived_taskB | Load a task from the archive. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 65 tools
Many tools have distinct purposes, but there are aliases (kanbn_init_board/kanbn_initialize_board, kanbn_unarchive_task/kanbn_restore_task) and overlapping concepts like kanbn_delete_board vs kanbn_remove_all vs kanbn_delete_board_file, or kanbn_task_exists vs kanbn_task_file_exists. While descriptions help, the high number of similar-sounding tools creates selection risk.
All tools share the 'kanbn_' prefix and most follow a verb_noun pattern (e.g., create_task, delete_board). Minor deviations like kanbn_boards_summary (noun_noun) and kanbn_status (single noun) exist, but the overall style is consistent and predictable.
65 tools is far beyond typical scope for a board-management server, falling into the extreme range. Many tools cover niche internals (contributor usage, orphaned task detection, reserved slugs) that could be consolidated, making the surface unnecessarily heavy and hard to navigate.
The tool set provides comprehensive coverage of board and task lifecycle: create/read/update/delete, archiving, relations, comments, sprints, search, burndown, board management, and even task-file utilities. No obvious dead ends or missing core operations for the domain.