Repliqo Docs

Tool reference

Every tool the Repliqo MCP server exposes, its inputs, and the scope it requires.

Tools operate on one workspace at a time. Agents typically start with list_workspaces, then get_workspace_context to learn the ids (inboxes, labels, workflow statuses, members) the other tools accept.

Task, project, and document tools use independent scope pairs (task:*, project:*, document:*). Task tools never mutate referenced Conversations.

Task read tools

Require task:read.

  • get_task_context: returns shared Workflow Statuses, Task Labels, and members.
  • list_tasks: paginates Tasks and supports text, inbox-reference, status, label, project ("none" matches unfiled), priority, due, completion, and archive filters.
  • search_tasks: searches Task titles and descriptions.
  • get_task: returns Task detail, comments, activity, followers, Conversation References, and attachment metadata.
  • get_task_attachment: fetches the current attachment contents. Images and audio use native MCP content blocks; text and other files use embedded resources.
  • list_tasks_for_conversation: the Tasks that reference a conversation (the conversation must be inside the connection's inbox grant).

Task write tools

Require task:write and an active workspace subscription or trial.

  • create_task: creates a Task with optional description, workflow metadata, due time, project, assignees, and accessible Conversation References.
  • update_task: updates versioned content and immediate-save metadata, assignees, Task Labels, and project filing (project_id, null to unfile).
  • comment_on_task: adds a plain-text Task comment.
  • follow_task: follows or sticky-unfollows a Task.
  • archive_task: archives a Task while preserving its history and files.
  • restore_task: restores an archived Task to the board.
  • add_task_reference: links a conversation from the connection's inbox grant to a Task.
  • remove_task_reference: removes a Conversation Reference (ids from get_task); the conversation itself is untouched.

MCP cannot upload or remove Task attachments in v1.

Project tools

Projects are shared containers that conversations and Tasks can be filed into. Reads require project:read; project mutations require project:write. Filing a conversation into a project is a conversation write and lives under inbox:write (set_conversation_project); filing a Task lives under task:write (update_task's project_id).

  • list_projects: all projects, optionally including archived ones.
  • get_project: one project with counts — total and completed Tasks, filed conversations.
  • list_project_conversations: the conversations filed into a project, newest first, plus via_reference rows pulled in through member Tasks' Conversation References. Conversations from inboxes outside the connection's grant appear as restricted stubs with no email metadata.
  • create_project / update_project: name (unique per workspace), color, description.
  • archive_project: archive or unarchive (archived boolean). Archived projects are closed for filing but keep their contents.

Document tools

Documents are uploaded files in the workspace's Documents area. Reads require document:read; mutations require document:write. Both accept a scope of workspace (shared) or personal (the connected user's private documents — invisible to everyone else).

  • list_documents: documents and folders with name, content type, size, folder, trash state, and an authorized download_path. Supports an active/trash view and name search. MCP cannot read file contents or upload files — uploads happen in the Repliqo app.
  • rename_document, move_document: rename, or move into a folder in the document's own scope (folder_id: null for the root).
  • trash_document: move to trash or restore (trashed boolean). Reversible — MCP can never permanently delete a document.
  • create_document_folder, rename_document_folder, delete_document_folder: folder management. Delete only works on empty folders.

Read tools

Require the inbox:read scope. All are read-only and safe to allow unattended.

list_workspaces

Lists the workspaces the connected user belongs to. No inputs. Returns workspace ids, slugs, names, and your role.

get_workspace_context

The ids and enum values everything else needs.

InputDescription
workspace_idFrom list_workspaces

Returns accessible inboxes, conversation labels, workflow statuses, and workspace members.

list_conversations

InputDescription
workspace_idRequired
inbox_idLimit to one inbox
viewopen, later, or done (default open)
workflow_status_idFilter by a specific status (overrides view)
label_id, priority, placementAdditional filters (placement: inbox, archived, trash, sent)
limit, cursorPagination — pass back next_cursor from the previous page

search_conversations

Full-text search across messages with Gmail-style operators: from:, to:, subject:, label:, inbox:, status:, is:unread, has:attachment, before:/after: (YYYY-MM-DD).

InputDescription
workspace_idRequired
querye.g. refund from:acme.com after:2026-06-01
offset, limitPagination

get_conversation

Reads a full thread: subject, status, labels, assignees, contacts, and messages as plain text. Long threads return the most recent 30 messages. Reading via MCP does not mark the conversation as read for your team.

InputDescription
workspace_idRequired
conversation_idFrom list or search results

list_contacts

Lists contact profiles — the people your conversations are with — most recent activity first.

InputDescription
workspace_idRequired
searchMatch against contact name or email
limit, cursorPagination — pass back next_cursor from the previous page

Returns each contact's id, email, display name, tags, conversation count, and last activity.

get_contact

One contact in depth: email, display name, tags, the shared team note, message stats (conversation and message counts, first/last seen), and recent conversations with that contact (history_limit, default 10).

InputDescription
workspace_idRequired
contact_idFrom list_contacts

search and fetch

Aliases of search and get in the result shape ChatGPT connectors and Deep Research require. Other agents can ignore them.

Write tools

Require the inbox:write scope and an active workspace subscription or trial. All triage writes are reversible; none of them send email — sending has its own scope.

update_conversation_status

Moves a conversation to a workflow status (workspace_id, conversation_id, workflow_status_id).

snooze_conversation

Snoozes until a future time — the conversation moves to the Later view and returns automatically (until: ISO datetime, or null to unsnooze).

assign_conversation

Replaces the assignees (assignee_user_ids: member user ids; empty list unassigns).

set_conversation_labels

Replaces the labels (label_ids; empty list clears).

set_conversation_project

Files the conversation into a project (project_id from list_projects), or unfiles it with null. Archived projects cannot be filed into.

archive_conversation

Archives the conversation. Reversible from the Archive view.

add_internal_comment

Adds a team-visible internal note (text, up to 10k characters). Never leaves Repliqo.

save_reply_draft

Writes a reply draft for a teammate to review and send.

InputDescription
workspace_id, conversation_idRequired
bodyPlain-text reply body
reply_allInclude all conversation participants
overwrite_existingRequired to replace a draft that already has content

Recipients and subject are derived from the conversation — an agent cannot address the draft to anyone else. If a teammate already has a draft with content on the conversation, the tool refuses unless overwrite_existing is passed.

Send tools

Require the inbox:send scope — a separate permission you approve on the consent screen — plus an active workspace subscription or trial. These tools send email immediately; there is no review step. Every result echoes exactly who was emailed, and sends are rate-limited per connection. All three accept an optional idempotency_key: retrying with the same key never sends a duplicate.

send_reply

Sends a reply on an existing conversation. Recipients are derived from the conversation (reply_all to include all participants) — this tool cannot email arbitrary addresses. The inbox signature and quoted thread are appended automatically.

InputDescription
workspace_id, conversation_idRequired
bodyPlain-text reply body
reply_allReply to all conversation participants
discard_existing_draftRequired to send when a teammate's reply draft with content exists (the draft is discarded)

send_forward

Forwards a conversation to explicit recipients. The forwarded message is quoted below your note.

InputDescription
workspace_id, conversation_idRequired
toRecipient email addresses (1–10)
ccOptional (up to 10)
notePlain-text note placed above the forwarded message
source_message_idMessage to forward; defaults to the latest email

send_email

Starts a brand-new conversation by sending an email from one of your inboxes. The from-address is the inbox's primary address.

InputDescription
workspace_idRequired
inbox_idInbox to send from (from get_workspace_context)
toRecipient email addresses (1–10)
cc, bccOptional (up to 10 each)
subjectUp to 300 characters
bodyPlain-text body

Last updated on

On this page