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,nullto 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 fromget_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, plusvia_referencerows 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 (archivedboolean). 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 authorizeddownload_path. Supports anactive/trashview 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: nullfor the root).trash_document: move to trash or restore (trashedboolean). 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.
| Input | Description |
|---|---|
workspace_id | From list_workspaces |
Returns accessible inboxes, conversation labels, workflow statuses, and workspace members.
list_conversations
| Input | Description |
|---|---|
workspace_id | Required |
inbox_id | Limit to one inbox |
view | open, later, or done (default open) |
workflow_status_id | Filter by a specific status (overrides view) |
label_id, priority, placement | Additional filters (placement: inbox, archived, trash, sent) |
limit, cursor | Pagination — 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).
| Input | Description |
|---|---|
workspace_id | Required |
query | e.g. refund from:acme.com after:2026-06-01 |
offset, limit | Pagination |
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.
| Input | Description |
|---|---|
workspace_id | Required |
conversation_id | From list or search results |
list_contacts
Lists contact profiles — the people your conversations are with — most recent activity first.
| Input | Description |
|---|---|
workspace_id | Required |
search | Match against contact name or email |
limit, cursor | Pagination — 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).
| Input | Description |
|---|---|
workspace_id | Required |
contact_id | From 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.
| Input | Description |
|---|---|
workspace_id, conversation_id | Required |
body | Plain-text reply body |
reply_all | Include all conversation participants |
overwrite_existing | Required 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.
| Input | Description |
|---|---|
workspace_id, conversation_id | Required |
body | Plain-text reply body |
reply_all | Reply to all conversation participants |
discard_existing_draft | Required 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.
| Input | Description |
|---|---|
workspace_id, conversation_id | Required |
to | Recipient email addresses (1–10) |
cc | Optional (up to 10) |
note | Plain-text note placed above the forwarded message |
source_message_id | Message 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.
| Input | Description |
|---|---|
workspace_id | Required |
inbox_id | Inbox to send from (from get_workspace_context) |
to | Recipient email addresses (1–10) |
cc, bcc | Optional (up to 10 each) |
subject | Up to 300 characters |
body | Plain-text body |
Last updated on