Skip to content

Ask AI

Ask anything about Destesi — setup, products, APIs.

AI answers may be wrong — always verify against the docs.

Space MCP tools

Registered when the server starts with SPACE_API_URL set. 29 tools, listed with the description the server sends in tools/list.

Tool Description
space_add_channel_members Add people to a PRIVATE channel. A public channel has no membership — every workspace member can already see it — so this refuses one. Every id must be a current workspace member. Use space_list_members for the user ids.
space_attach_issue_image Pin an image that is ALREADY in this workspace’s Drive to a Space issue, so the issue shows what needs adjusting. Takes the Drive file id (see drive_list_files) — bytes cannot be uploaded through a tool call; a person does that in the Space web app, or dst space issue attach <file> from a terminal. An issue holds at most 50 images, and pinning the same file twice is refused rather than duplicated.
space_comment_issue Post a comment on a Space issue’s thread. It appears under the authenticated user’s own name and cannot be unsent.
space_create_channel Create a channel. A public channel is visible to the whole workspace; a private one only to the people listed in members (the caller is added automatically).
space_create_issue Open a new issue (ticket) in Destesi Space. Returns its key (ENG-12), id and url — link the user to that url verbatim; the path is the SINGULAR /issue/<id>, and /issues/<id> is a different route that 403s. Needs a team — call space_list_teams first when the workspace has more than one and the user did not say which.
space_create_label Create a label in a Destesi Space workspace. Colour is optional and defaults to grey.
space_create_team Create a team in a Destesi Space workspace. A team owns issues and supplies their key prefix — the ENG in ENG-12 — so a workspace with no team cannot hold an issue yet.
space_delete_issue Delete an issue and its whole thread. Only the issue’s creator or a workspace admin may (403 admin_required). There is no undo and no trash. To take an issue out of the way REVERSIBLY, set its status to cancelled with space_update_issue instead.
space_delete_message Delete one of the CALLER’S OWN messages. The text is removed for everyone; the row survives so replies parented on it and the thread’s ordering stay intact. It cannot be undone, and only the author may do it. Prefer space_edit_message when the message just needs correcting.
space_edit_message Rewrite one of YOUR OWN Space messages in place, keeping its position in the thread. Use it to correct a comment you just posted: posting again would leave the wrong one standing above it. The body REPLACES the old one — send the whole corrected message, not the change. Only the author may edit; anyone else’s message answers not-found.
space_get_issue Fetch one Space issue by its key (ENG-12) or id.
space_list_channels List the channels in a Destesi Space workspace. Each carries a thread_id that space_post_message accepts.
space_list_dms List the caller’s direct-message conversations in a Destesi Space workspace. Each carries a thread_id that space_post_message accepts.
space_list_issue_attachments List the images pinned to a Space issue. Each carries an id, a name and a ready-to-open url. Screenshots are how people say WHICH visual detail an issue is about, so read them before acting on one.
space_list_issues List issues in a Destesi Space workspace, newest first. All filters are optional and combine with AND. Each issue carries its key (ENG-12), title, status, priority, assignee and thread_id.
space_list_labels List the labels in a Destesi Space workspace. Returns each label’s id, name and colour.
space_list_members List the people in a Destesi Space workspace. Use it to turn a name into the user_id that assignee_user_id takes.
space_list_replies Read the replies hanging off ONE message. space_read_thread returns top-level messages with a reply_count; this is how to see what is inside one that reports replies.
space_list_teams List the teams in a Destesi Space workspace. Returns each team’s id, key (the ENG in ENG-12) and name — the key is what space_create_issue’s ‘team’ argument accepts.
space_list_unread What the caller has not read: one unread count per thread. This is the tool for “what did I miss?” — follow it with space_read_thread on the threads that have something.
space_mark_read Advance the caller’s read cursor on a thread so it stops showing as unread. Private to the caller — nobody is told they read it.
space_open_dm Open the direct-message conversation with one or more people and return its thread_id. Opening the same conversation twice lands in the same thread, so this is safe to call before every DM. The caller is always a participant; do not list them.
space_post_message Post a message into a Space thread — a channel, a DM or an issue thread — as the caller. It goes out under their own name to other people and CANNOT be unsent.
space_react Add or remove one of the caller’s emoji reactions on a message. Set remove to take a reaction back — it is wholly reversible, which is why it is not marked destructive.
space_read_thread Read the messages in a thread — a channel, a DM or an issue. Returns top-level messages newest-last, each with its id, author, seq and reply_count. Thread ids come from space_list_channels, space_list_dms, space_open_dm and space_get_issue.
space_remove_channel_member Remove someone from a PRIVATE channel. They lose access to it and to everything said in it. Anyone may remove themselves; removing someone else is for the channel’s creator or a workspace admin (403 admin_required). A public channel has no membership, and removing from one is refused rather than reported as done.
space_remove_issue_attachment Unpin one image from a Space issue. The Drive file itself is NOT deleted — it stays in the workspace’s Drive and can be pinned again with space_attach_issue_image.
space_update_channel Rename a channel, change its purpose, or archive it. Archiving is how a channel is retired — Space keeps history, so there is no delete. Omitted fields are left alone. Owners and admins only; an admin may also archive (only archive, by id) a private channel no current workspace member is in, without reading it.
space_update_issue Change a Space issue’s status, priority, title, description or assignee. Omitted fields are left alone; pass assignee_user_id as an empty string to unassign.