MCP Server Zuuna
MCP server for Zuuna: coding agents work your git-truth kanban board via the v1 API.
Connector by kenzotp · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/kenzotp-mcp-server-zuuna
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 29 read · 37 write · 9 delete · 3 not yet classified
- Secrets
- 1 (API keys, tokens or passwords)
- Install scripts
- Not scanned yet
- Runs as
- Node.js package
Tools by what they do 78
Read from the source code; the running server may list different tools.
Read 29 · Look things up without changing anything.
standup_summaryzuuna_boardzuuna_boardszuuna_cardzuuna_get_attachmentzuuna_get_releasezuuna_get_sprintzuuna_list_active_timerszuuna_list_attachmentszuuna_list_automationszuuna_list_board_cardszuuna_list_board_fields
Show 17 more tools
zuuna_list_card_timezuuna_list_checklistzuuna_list_columnszuuna_list_commentszuuna_list_deploymentszuuna_list_epicszuuna_list_group_cardszuuna_list_group_memberszuuna_list_groupszuuna_list_recurring_cardszuuna_list_relationszuuna_list_releaseszuuna_list_sprintszuuna_list_webhook_deliverieszuuna_list_webhookszuuna_mezuuna_search_cards
Write 37 · Create, change, send or run things.
session_startzuuna_add_cards_to_sprintzuuna_add_checklist_itemzuuna_add_relationzuuna_archive_cardzuuna_commentzuuna_create_boardzuuna_create_cardzuuna_create_cardszuuna_create_columnzuuna_create_epiczuuna_create_recurring_card
Show 25 more tools
zuuna_create_releasezuuna_create_sprintzuuna_create_webhookzuuna_import_time_entrieszuuna_link_git_brancheszuuna_log_timezuuna_move_cardzuuna_move_card_to_boardzuuna_record_git_eventszuuna_report_ci_checkszuuna_report_deploymentzuuna_restore_cardzuuna_start_timerzuuna_stop_timerzuuna_test_webhookzuuna_unarchive_cardzuuna_update_cardzuuna_update_checklist_itemzuuna_update_epiczuuna_update_recurring_cardzuuna_update_releasezuuna_update_sprintzuuna_update_time_entryzuuna_update_webhookzuuna_upload_attachment
Delete 9 · Delete, drop, revoke or wipe things.
zuuna_delete_attachmentzuuna_delete_cardzuuna_delete_checklist_itemzuuna_delete_recurring_cardzuuna_delete_relationzuuna_delete_releasezuuna_delete_time_entryzuuna_delete_webhookzuuna_remove_card_from_sprint
Not yet classified 3 · We could not tell from the name and description.
plan_sprintsession_endtriage_board
Secrets and settings it asks for
Secrets: values you paste in that let it act as you.
ZUUNA_API_TOKEN
Other settings (environment variables or headers).
ZUUNA_BASE_URLZUUNA_TIMEOUT_MS
Files it touches
- Any path the agent passes to its tools
Tools (78)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
plan_sprintDraft a sprint plan from a group's backlog.
session_endLeave a card in a state the next session (human or model) can pick up from.
session_startOrient on a board before doing anything: read it, understand a card, then act.
standup_summarySummarise what moved on a board since a given time, for a human standup.
triage_boardSweep a board for cards that need attention: no assignee, overdue, or stuck.
zuuna_add_cards_to_sprintPull cards into a sprint. Each must belong to the sprint's own group. If the sprint already has a materialized (started) board, a card moves onto it; otherwise it is simply planned in. Response lists which ids were added vs. skipped, with a reason.
zuuna_add_checklist_itemAdd a checklist item to a card (appended at the end).
zuuna_add_relationLink this card to another. `type` is one of the catalog values ("clones" is set automatically by Zuuna and is refused here). `direction` (outward|inward, default outward) picks which card is the semantic SOURCE for a non-symmetric type — e.g. outward "blocks" means THIS card blocks the target. A scheduling type (fs/ss/ff/sf) may carry lagDays and is refused if it would create a dependency cycle.
zuuna_archive_cardArchive a card (reversible — see zuuna_unarchive_card).
zuuna_boardread-onlyGet one board assembled: its columns (in order, with WIP limits and SLA hours) and its cards (key, title, column, priority, type). The card list pages at 200; when more cards exist the response carries cardsTruncated and a nextCursor — pass that back as cardsCursor for the next page. Accepts the board id, its key (card prefix) or its title.
zuuna_boardsread-onlyList the workspace's boards (non-archived, non-private). Each entry carries id, title, key (card prefix), groupId. Use the id with zuuna_board.
zuuna_cardread-onlyGet a card's full detail: description, priority, type, due/start dates, checklist counts, assignees, epic, custom field values, attachment metadata.
zuuna_commentAdd a comment to a card. The author is the user who created the API token. @mentions notify.
zuuna_create_boardCreate an empty board (no columns yet — add them with zuuna_create_column) in a group. Body: title, groupId.
zuuna_create_cardCreate a card on a board. Title is required; give the target column by id or by title (omitted = the board's first column). idempotencyKey makes a retry safe: re-sending the same key after a lost response or a 5xx returns the ORIGINAL card instead of a duplicate.
Show 63 more tools
zuuna_create_cardsCreate up to 50 cards on ONE board in a single call. Each item validates exactly like zuuna_create_card (title required; target column by id only) and the answer is one result per item: created (id, key, title, status, columnId) or the error that item alone would have gotten. The card cap counts the whole batch; board, closed-sprint and limit errors stay whole-request.
zuuna_create_columnAdd a column to an existing (non-archived) board.
zuuna_create_epicCreate an epic in a group: a real ticket with its own key (a board-less group card), referencable and linkable like any other card. Title is required; colour comes from the 8-name palette and defaults to purple.
zuuna_create_recurring_cardStart a recurring-card series on a board: every everyN unit(s) (days|weeks|months) it mints a card from the given template, until endAt (if set).
zuuna_create_releasePlan or publish a release in a group. Provide releaseId (to fill in an existing planned release), or a name/tag to create one. publish defaults to false when no tag/commits context is given — pass publish: true to mark it RELEASED and fire release.published to webhook subscribers immediately.
zuuna_create_sprintCreate a PLANNED sprint in a group.
zuuna_create_webhookRegister a webhook endpoint. The response's `secret` is the ONLY time the signing secret is ever shown — store it immediately, there is no way to read it back.
zuuna_delete_attachmentcan change or delete dataRemove an attachment from a card. Requires confirm: true.
zuuna_delete_cardcan change or delete dataMove a card to Trash (restorable for 30 days via zuuna_restore_card, then permanently purged). Refused with time_entries_exist if the card carries logged time, UNLESS confirm is true — passing confirm also acknowledges deleting those hours. Requires confirm: true.
zuuna_delete_checklist_itemcan change or delete dataRemove a checklist item. Requires confirm: true.
zuuna_delete_recurring_cardcan change or delete dataCancel a recurring-card series for good (no trash). Requires confirm: true.
zuuna_delete_relationcan change or delete dataRemove a relation, from either card it connects. Requires confirm: true.
zuuna_delete_releasecan change or delete dataPermanently delete a release (its commit/merge history, sprint links, card-release links and shipped-card archive all cascade with it). Requires confirm: true.
zuuna_delete_time_entrycan change or delete dataRemove a logged time entry. Requires confirm: true.
zuuna_delete_webhookcan change or delete dataRemove a webhook endpoint (its delivery log goes with it). Requires confirm: true.
zuuna_get_attachmentread-onlyGet one attachment's metadata (filename, MIME type, byte size). Never returns the file's bytes — use zuuna_list_attachments first to find the attachmentId.
zuuna_get_releaseread-onlyGet one release's detail: state, dates, tag, shipped card/point counts.
zuuna_get_sprintread-onlyGet a sprint plus the cards currently in it.
zuuna_import_time_entriesBulk-import normalized time entries (up to 200 per call) — from Clockify/Toggl/Harvest or a script. Each entry needs cardKey/cardId (or a PREFIX-N in description) plus seconds or start+end; userEmail attributes it. Idempotent on (source, externalId): repeating one updates it rather than duplicating it. One bad entry does not fail the rest.
zuuna_link_git_branchesREPLACE-ALL snapshot of a repo's in-flight branches in a group (up to 500). Each needs at least name and headSha; a branch named for a card ("ZNA-249-…" or matching the group's prefix) links automatically. An empty branches array is refused unless confirmEmpty is true — that guard exists so a half-failed snapshot cannot silently wipe the page.
zuuna_list_active_timersread-onlyList every running timer visible to this token, optionally filtered to one member by email.
zuuna_list_attachmentsread-onlyList a card's attachments (metadata only: id, filename, MIME type, size, who uploaded it).
zuuna_list_automationsread-onlyRead a board's automation rules: trigger, conditions, actions, enabled, recent run outcomes. Read-only — automations cannot be created or edited through this server, only inspected. A sendWebhook action's URL is redacted (it can carry a chat-app incoming-webhook secret).
zuuna_list_board_cardsread-onlyList a board's cards, in board order by default (column then position). `archived` narrows to false|true|all (default false); `updatedSince` (ISO 8601) narrows to cards changed after it, for incremental sync.
zuuna_list_board_fieldsread-onlyRead the custom fields attached to a board: id, name, type, in display order. For SELECT, MULTISELECT and TAGS fields, options is the option vocabulary a card's customFields value may use; for every other type options is null. update_card's customFields argument is keyed by these field ids.
zuuna_list_card_timeread-onlyList logged time entries on a card, newest first, plus the card's total seconds.
zuuna_list_checklistread-onlyRead a card's checklist: every item plus the total/completed counts the card face shows.
zuuna_list_columnsread-onlyList a board's columns in order — id, title, isDone, statusCategory, position, WIP limit, SLA hours. These columnId values are what a card move expects.
zuuna_list_commentsread-onlyRead a card's discussion, oldest first — the order it happened, and the order an incremental sync appends in.
zuuna_list_deploymentsread-onlyList deployment history, optionally narrowed to a group and/or environment.
zuuna_list_epicsread-onlyList a group's epics — id, key, title, colour. An epic is a real card (Prisma model Label; the UI calls it an Epic), so its key resolves through the ordinary card tools too.
zuuna_list_group_cardsread-onlyList every card in a group, whether it stands on a board or in the group's backlog (a board-less card, columnId null). Use this to discover backlog cards — no other list surfaces them. `placement` narrows to board|backlog|all (default all).
zuuna_list_group_membersread-onlyList a group's members: id, name, email. These ids are the valid values for a card's assigneeIds.
zuuna_list_groupsread-onlyList the workspace's groups (Prisma model Team; the UI calls this a Group — it owns boards, sprints, releases and the card-key prefix). A restricted group this token may not act in is omitted, not merely flagged. The returned id is what every groupId argument elsewhere expects.
zuuna_list_recurring_cardsread-onlyList a board's recurring-card series, paused and active both.
zuuna_list_relationsread-onlyList a card's relations to other cards (blocks, depends on, subtask of, scheduling links, ...), each with its direction relative to this card.
zuuna_list_releasesread-onlyList a group's releases, optionally narrowed to a state (PLANNED|RELEASED|ARCHIVED).
zuuna_list_sprintsread-onlyList the workspace's sprints, optionally narrowed to one group and/or state (PLANNED|ACTIVE|CLOSED).
zuuna_list_webhook_deliveriesread-onlyRead an endpoint's last 20 delivery attempts (payload truncated to 2 KB; a payload naming a board this token cannot read is redacted).
zuuna_list_webhooksread-onlyList this workspace's webhook endpoints. Never returns a signing secret (only the create call does, once).
zuuna_log_timeLog a CLOSED time entry on a card — work already done. Provide seconds or a duration string ("2h 30m"). For an ongoing timer use zuuna_start_timer / zuuna_stop_timer instead.
zuuna_meread-onlyShow the identity of the Zuuna API token in use: organization, plan, granted scopes and — only when the workspace's subscription has lapsed — the grace-window deadline after which every call here will start failing. Also lists, as hiddenTools, every tool this token's scopes hide, each with the scope(s) that would unlock it. Call this first to learn what this token may do; a tool absent from the tool list this session means its scope was not granted.
zuuna_move_cardMove a card to another column on the SAME board. Give the target column by id or by title (resolved against the card's own board). For moving to a DIFFERENT board use zuuna_move_card_to_board.
zuuna_move_card_to_boardMove a card to a DIFFERENT board (cross-board move). Optional targetColumnId; omitted, the card lands in the target's default column for its current status category.
zuuna_record_git_eventsRecord git events (commit/branch/pr, up to 1000 per call) via smart-commits ("PREFIX-123" in the ref or message) to link them to cards.
zuuna_remove_card_from_sprintTake a card out of its sprint (clears its sprint membership). A card standing on the sprint's OWN materialized board leaves it for the group's backlog; a card on an ordinary board stays exactly where it is.
zuuna_report_ci_checksRecord CI status checks (up to 1000 per call), each attached to whichever card its commit/branch/PR or description names.
zuuna_report_deploymentReport a deployment's progress (building|succeeded|failed|...) or update the one in flight. Idempotent on (environment, externalId) — repeat callbacks from the same CI run update ONE row. groupId binds it to a release/board pipeline; omitted, it is still recorded workspace-wide.
zuuna_restore_cardPull a card back out of Trash. Refused if the workspace is at its card limit (an archived+trashed card is exempt).
zuuna_search_cardsread-onlySearch cards workspace-wide: the one list that needs no board or group id up front. Filters narrow: q (case-insensitive text in title + description), groupId, boardId, columnId, assigneeId, epicId, priority (HIGHEST|HIGH|NORMAL|LOW|LOWEST), label (a tag option id or "<fieldId>:<optionId>" token). archived narrows to false|true|all (default false); updatedSince (ISO 8601) narrows to cards changed after it, for incremental sync. Bad values are refused with an error, never silently ignored.
zuuna_start_timerStart a running timer on a card. Idempotent: starting an already-running timer for the same person is a no-op, not an error. Optional userEmail delegates the timer to another workspace member (e.g. relaying a Slack action) — resolved against THIS workspace's membership only.
zuuna_stop_timerStop a card's running timer, closing it at the elapsed duration. A no-op (not an error) if nothing is running.
zuuna_test_webhookSend a real `ping` delivery to one endpoint, regardless of its subscribed events, and report the fresh delivery status.
zuuna_unarchive_cardRestore an archived card to active (the inverse of zuuna_archive_card). Refused if the workspace is at its card limit.
zuuna_update_cardEdit a card. Only the fields you send change: title, description, priority, type, dueDate, startDate, estimateSeconds, storyPoints, ready, columnId (move within the SAME board — a cross-board move is zuuna_move_card_to_board), assigneeIds (REPLACES the full set; [] clears everyone), customFields (object keyed by field id; null/empty clears one — zuuna_list_board_fields names the ids and the option vocabulary).
zuuna_update_checklist_itemRename and/or tick a checklist item. Only the fields you send change.
zuuna_update_epicEdit an epic. Only the fields you send change: title, description, colour.
zuuna_update_recurring_cardEdit a series' interval, end date and/or pause state (enabled). Resuming a paused series re-schedules its next run from now, so it never bursts out catch-up cards.
zuuna_update_releaseCorrect a release. action=edit changes name/description/releaseDate/notes/tag (only the fields you send); unpublish reverts a RELEASED release to PLANNED (keeps its shipped-card archive); archive/unarchive is a display filter, not a data lock.
zuuna_update_sprintUpdate a sprint's name/goal/dates. Only the fields you send change. Sprint lifecycle (start/close) is not exposed here — it materializes boards and archival metrics and stays an in-app action.
zuuna_update_time_entryCorrect a logged time entry's duration and/or note. Refused while the entry's timer is still running — stop it first.
zuuna_update_webhookEdit a webhook endpoint. Only the fields you send change; enabled: false is how a subscriber pauses itself without losing the registration.
zuuna_upload_attachmentUpload a file onto a card from a local file path, or from base64 plus a filename. The same limits the REST upload route enforces apply and its errors surface verbatim: 10 MB per file, the workspace storage cap (409 limit_reached), executable extensions refused, and the token creator needs a verified email.
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit
- Sep 26, 2026 (1 month ago)
- Last release
- Sep 26, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
io.github.kenzotp/mcp-server-zuuna- Version
- 0.3.0
- Auth
- API key
- Packages
- npm mcp-server-zuuna
- License
- MIT
- Repository
- github.com/kenzotp/mcp-server-zuuna
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
Cite this page
MCP Server Zuuna. Agent Mart. https://agentmart.dev/connectors/kenzotp-mcp-server-zuuna (last updated 2026-10-24)