Skip to content
Barynt v1.0.12

MCP tools

Every tool of the Barynt MCP server, with its scope and arguments.

Each tool matches a call of the REST API, with the same scopes, permissions and answers. Arguments are one flat list; a * marks required ones. How to connect a client is described in MCP server.

Workspaces

list_workspaces

Scope: workspaces:read

List every workspace the caller belongs to.

create_workspace

Scope: workspaces:write

Create a new workspace, owned by the caller.

NameTypeDescription
name *stringDisplay name.
slug *stringURL slug; also becomes the workspace id.
colorstringHex color, e.g. #6e63e6.

update_workspace

Scope: workspaces:write

Update a workspace’s name, color, or description.

NameTypeDescription
workspaceId *string
namestring
colorstring
descstring

delete_workspace

Scope: workspaces:write

Permanently delete a workspace and all of its projects and issues.

NameTypeDescription
workspaceId *string

Projects

list_projects

Scope: projects:read

List the projects in a workspace visible to the caller.

NameTypeDescription
workspaceId *string

create_project

Scope: projects:write

Create a new project in a workspace.

NameTypeDescription
workspaceId *string
name *string
descstring
prefixstringIssue key prefix, e.g. “ENG” for ENG-123. Derived from the name if omitted.
color *stringHex color, e.g. #6e63e6.
visibility"public" | "private"

update_project

Scope: projects:write

Update a project’s name, prefix, color, or visibility.

NameTypeDescription
projectId *string
namestring
descstring
prefixstring
colorstring
visibility"public" | "private"

delete_project

Scope: projects:write

Permanently delete a project and all of its issues.

NameTypeDescription
projectId *string

Issues and relations

list_issues

Scope: issues:read

List issues in a project, optionally filtered by status, assignee, a text search or a filter tree (filter). With viewId, the issues a saved view shows (needs views:read too); @me means you.

NameTypeDescription
projectIdstringRequired unless viewId is given.
viewIdstringA saved view’s id (list_views) — its filter, project and fixed conditions apply.
filteranyA filter tree, as views store it: { “op”: “and”|“or”, “rules”: [ { “field”: “priority”, “is”: “gte”, “value”: 3 }, { “op”: “or”, “rules”: […] } ] }. Values like “@me” resolve to you; values are ids, not names. Fields: status, statusCategory, priority, type, assignee, reporter, label, project, storyPoints, estimate, dueDate, created, updated, parent, text. Ignored with viewId.
statusstring
assigneestringUser id.
qstringCase-insensitive substring match against title and description.
cursorstringOpaque cursor from a previous call’s nextCursor.
limitinteger (1–100)Max rows to return (default 25, max 100).
fieldsstringComma-separated allowlist of fields to return, e.g. “id,title,status”.

create_issue

Scope: issues:write

Create a new issue in a project. The description can @mention a workspace member by handle, #link another issue by ref (PREFIX-123), //date a day (//2026-08-14 or //14.8.2026), and [label|https://…] a link — all resolve to real, clickable chips, and a mention notifies the person.

NameTypeDescription
projectId *string
title *string
descriptionstringMarkdown. @handle mentions a workspace member (notifies them); #PREFIX-123 links another issue; //2026-08-14 (or //14.8.2026) becomes a date chip; [label|https://...] (or bare [https://...]) becomes a link chip. All resolved server-side; unresolved ones are left as plain text.
statusstringA status id — see list_statuses.
priorityinteger (-9007199254740991–9007199254740991)A priority id — see list_priorities.
assigneestring | nullUser id.
labelsstring[]Label ids.
typestringAn issue type id — see list_issue_types.
parentIdstring | nullMakes the new issue a sub-issue of this one right away.
dueDatestring | nullISO 8601 date, e.g. “2026-09-20”.
storyPointsinteger (-9007199254740991–9007199254740991)Typically a Fibonacci value (1/2/3/5/8/13).
estimateHoursnumber | nullNormalized to hours, e.g. 2.5.
estimateUnit"hours" | "days" | "weeks" | "months" | "years"Which unit estimateHours was entered in. Defaults to hours.

get_issue

Scope: issues:read

Fetch a single issue by id or ref. Includes commentCount; when it is above 0 the response also carries a hint telling the agent to call list_comments before acting. Attachments come along under attachments, each with a url to view it.

NameTypeDescription
issueId *stringInternal id, or a ref like “ENG-123”.
fieldsstringComma-separated allowlist of fields to return, e.g. “id,title,status”.

update_issue

Scope: issues:write

Update an issue’s title, description, status, priority, assignee, labels, or type. The description supports the same @mention/#issue-link/date/link-chip syntax as create_issue.

NameTypeDescription
issueId *string
titlestring
descriptionstringMarkdown. @handle mentions a workspace member (notifies them); #PREFIX-123 links another issue; //2026-08-14 (or //14.8.2026) becomes a date chip; [label|https://...] (or bare [https://...]) becomes a link chip. All resolved server-side; unresolved ones are left as plain text.
statusstringA status id — see list_statuses.
priorityinteger (-9007199254740991–9007199254740991)A priority id — see list_priorities.
assigneestring | nullUser id.
labelsstring[]Label ids.
typestringAn issue type id — see list_issue_types.
parentIdstring | nullSets the issue’s parent (sub-issue of); null clears it.
dueDatestring | nullISO 8601 date, e.g. “2026-09-20”; null clears it.
storyPointsinteger (-9007199254740991–9007199254740991)Typically a Fibonacci value (1/2/3/5/8/13).
estimateHoursnumber | nullNormalized to hours, e.g. 2.5. null clears it.
estimateUnit"hours" | "days" | "weeks" | "months" | "years"Relabels estimateHours’s display unit. Defaults to hours when set alongside a new estimateHours.

add_issue_relation

Scope: issues:write

Link two issues with a typed edge: BLOCKS, RELATES_TO or DUPLICATES. Seen from issueId: for BLOCKS and DUPLICATES, issueId blocks / duplicates relatedId.

NameTypeDescription
issueId *string
relatedId *string
type *"BLOCKS" | "RELATES_TO" | "DUPLICATES"

remove_issue_relation

Scope: issues:write

Remove a relation by its own id (from an issue’s relations). Works from either issue it connects.

NameTypeDescription
relationId *string

Statuses, priorities and types

list_statuses

Scope: workspaces:read

A workspace’s statuses in board order, each with its category (backlog, unstarted, started, completed, canceled).

NameTypeDescription
workspaceId *string

list_priorities

Scope: workspaces:read

A workspace’s priorities in order. Use an id as priority in create_issue / update_issue.

NameTypeDescription
workspaceId *string

list_issue_types

Scope: workspaces:read

A workspace’s issue types in order. Use an id as type in create_issue / update_issue.

NameTypeDescription
workspaceId *string

Comments

list_comments

Scope: comments:read

List every comment on an issue, oldest first.

NameTypeDescription
issueId *string

create_comment

Scope: comments:write

Post a comment on an issue, optionally as a reply. Supports @mention/#issue-link/date/link-chip syntax — see create_issue.

NameTypeDescription
issueId *string
body *stringMarkdown. @handle mentions a workspace member (notifies them); #PREFIX-123 links another issue; //2026-08-14 (or //14.8.2026) becomes a date chip; [label|https://...] (or bare [https://...]) becomes a link chip. All resolved server-side; unresolved ones are left as plain text.
parentIdstringId of the comment being replied to.

update_comment

Scope: comments:write

Edit a comment’s body. @mention/#issue-link/date/link-chip syntax still resolves to chips, but (like editing in the app) doesn’t send a new mention notification.

NameTypeDescription
commentId *string
body *stringMarkdown. @handle mentions a workspace member (notifies them); #PREFIX-123 links another issue; //2026-08-14 (or //14.8.2026) becomes a date chip; [label|https://...] (or bare [https://...]) becomes a link chip. All resolved server-side; unresolved ones are left as plain text.

delete_comment

Scope: comments:write

Delete a comment (its replies cascade).

NameTypeDescription
commentId *string

Attachments

list_attachments

Scope: issues:read

List an issue’s attachments (files and links), each with a url to view it — for a file a signed link that works without a token until urlExpiresAt.

NameTypeDescription
issueId *stringInternal id, or a ref like “ENG-123”.

get_attachment

Scope: issues:read

Fetch one attachment with a fresh url. With includeContent the agent also gets the file itself: images (up to 5 MB) as an image, text files (up to 512 KB) as text.

NameTypeDescription
attachmentId *string
includeContentbooleanAlso return the file’s content (see above).

add_attachment

Scope: issues:write

Attach a link (url) or a file — inline as base64 (content, up to 10 MB) or uploaded beforehand (key).

NameTypeDescription
issueId *stringInternal id, or a ref like “ENG-123”.
urlstringAn http(s) link to attach.
contentstringThe file’s bytes, base64-encoded (or a data: URL).
keystringThe key from request_attachment_upload, after the PUT.
namestringFile name, e.g. screenshot.png — required for a file. For a link it defaults to the host.
mimeTypestringe.g. image/png. Guessed from the file name if omitted.

request_attachment_upload

Scope: issues:write

For a file up to 100 MB: an uploadUrl to PUT the bytes to, then add_attachment with the returned key.

NameTypeDescription
issueId *stringInternal id, or a ref like “ENG-123”.
fileName *string
contentTypestringGuessed from the file name if omitted.
contentLength *integer (0–9007199254740991)Size in bytes.

delete_attachment

Scope: issues:write

Remove an attachment; a file is deleted from storage too.

NameTypeDescription
attachmentId *string

Labels

list_labels

Scope: labels:read

List every label visible in a workspace — workspace-wide plus project-scoped ones the caller can see.

NameTypeDescription
workspaceId *string

create_label

Scope: labels:write

Create a label, either workspace-wide or scoped to a project.

NameTypeDescription
workspaceId *string
name *string
color *stringHex color, e.g. #6e63e6.
projectIdstringScope the label to this project; omit for workspace-wide.

update_label

Scope: labels:write

Update a label’s name or color.

NameTypeDescription
labelId *string
namestring
colorstring

delete_label

Scope: labels:write

Delete a label and unassign it from every issue that carries it.

NameTypeDescription
labelId *string

Members

list_workspace_members

Scope: members:read

List every member of a workspace, with id, name, email, and handle (for @mentions).

NameTypeDescription
workspaceId *string

list_project_members

Scope: members:read

List every member of a project, with id, name, email, and handle (for @mentions).

NameTypeDescription
projectId *string

Views

list_views

Scope: views:read

List the saved views you can see — a project’s (projectId) or a workspace’s cross-project views (workspaceId), built-in ones included.

NameTypeDescription
projectIdstring
workspaceIdstring

get_view

Scope: views:read

Fetch one view: filter tree, layout, grouping, sort. Use list_issues with viewId for its issues.

NameTypeDescription
viewId *string

create_view

Scope: views:write

Save a view in a project or as a cross-project view. Private unless visibility says otherwise.

NameTypeDescription
projectIdstring
workspaceIdstring
name *stringUp to 80 characters.
layout *"board" | "list" | "dashboard"
visibility"PRIVATE" | "PROJECT" | "WORKSPACE"PRIVATE (default) for you only; PROJECT in a project, WORKSPACE for a cross-project view — sharing needs the view.share permission.
filteranyA filter tree (see list_issues).
groupBystring | null
sortBystring
sortDir"asc" | "desc"
iconstring | null
colorstring | nullHex color, e.g. #3b7bd5.

update_view

Scope: views:write

Change a view — only what you pass. Same rights as in the app.

NameTypeDescription
viewId *string
namestringUp to 80 characters.
layout"board" | "list" | "dashboard"
visibility"PRIVATE" | "PROJECT" | "WORKSPACE"PRIVATE (default) for you only; PROJECT in a project, WORKSPACE for a cross-project view — sharing needs the view.share permission.
filteranyA filter tree (see list_issues).
groupBystring | null
sortBystring
sortDir"asc" | "desc"
iconstring | null
colorstring | nullHex color, e.g. #3b7bd5.

delete_view

Scope: views:write

Delete a view. Built-in views can’t be deleted.

NameTypeDescription
viewId *string