MCP tool reference
Every tool and resource on Quackback's MCP server (40 tools, 6 resources): parameters, required scopes and examples for feedback, changelog, help center, conversations and tickets.
This reference lists every tool and resource on Quackback's MCP server: 40 tools and 6 resources. Tools perform actions (search, create, update, delete). Resources provide lookup data, such as board and status ids, that tools refer to. For setup and authentication, see MCP Server.
Each tool needs a scope (see Authentication and scopes). "Team" means the caller must be a teammate or a team API key, not a portal user.
Search and details
search
Search feedback posts, changelog entries or help center articles. Results are paginated with a cursor.
Parameter | Type | Description |
|---|---|---|
|
| What to search (default |
| string | Text search across titles and content |
| string | Posts only: filter by board |
| string | Articles only: filter by category |
| string | Posts: a status slug such as |
| string[] | Posts only: filter by tags |
| string | Posts only: filter by author, or |
|
| Default |
| boolean | Show deleted posts from the last 30 days (team) |
| ISO date | Posts created in this range |
| 1 to 100 | Default 20 |
| string | From a previous response |
Scope: read:feedback, or read:article when entity is articles.
search({ query: "dark mode", sort: "votes", limit: 10 })
search({ entity: "articles", query: "getting started", status: "published" })get_details
Get full details for any item by id. The type is detected from the id prefix (post_, changelog_, article_, kb_category_ and so on). Posts include comments, tags and the official response. Changelog entries include linked posts.
Scope: read:feedback, or read:article for help center ids.
get_details({ id: "post_01abc..." })Post tools
Tool | What it does | Key parameters | Scope |
|---|---|---|---|
| Submit feedback on a board |
|
|
| Update status, tags or owner (only fields you pass change) |
|
|
| Toggle your own vote |
|
|
| Add or remove a vote on behalf of a customer, with source attribution |
|
|
| Merge a duplicate into a canonical post (votes combine) |
|
|
| Undo a merge |
|
|
| Delete a post (restorable for 30 days) |
|
|
| Restore a deleted post |
|
|
| Activity log: status changes, merges, tags, owners, proxy votes (latest 200) |
|
|
Comment tools
Tool | What it does | Key parameters | Scope |
|---|---|---|---|
| Comment on a post, or reply to a comment |
|
|
| Edit a comment (authors edit their own; teammates any) |
|
|
| Permanently delete a comment and its replies |
|
|
| Add or remove an emoji reaction |
|
|
Changelog tools
Tool | What it does | Key parameters | Scope |
|---|---|---|---|
| Create an entry (draft by default) |
|
|
| Edit, publish, schedule or link posts |
|
|
| Delete an entry |
|
|
Suggestion tools
Tool | What it does | Key parameters | Scope |
|---|---|---|---|
| Accept a merge suggestion |
|
|
| Dismiss a merge suggestion |
|
|
| Return a dismissed suggestion to pending |
|
|
Help center tools
Available when the Help Center module is on.
Tool | What it does | Key parameters | Scope |
|---|---|---|---|
| Create an article as a draft |
|
|
| Update an article; only fields you pass change |
|
|
| Delete an article |
|
|
| Create, update or delete a category |
|
|
To publish an article, call update_article with publishedAt set to any ISO date and time (the article is published now). Set publishedAt to null to unpublish:
update_article({ articleId: "article_01abc...", publishedAt: "2026-01-01T00:00:00Z" })Category icons are Heroicons names such as "RocketLaunchIcon" or "BookOpenIcon". Emoji aren't supported. parentId: null makes a category top-level.
Conversation tools
Available when the support inbox is on. All need a team caller.
Tool | What it does | Key parameters | Scope |
|---|---|---|---|
| List conversations, newest activity first |
|
|
| Get a conversation and its recent messages |
|
|
| Send a reply the customer sees; assigns an unassigned conversation to the caller |
|
|
| Open, snooze or close a conversation |
|
|
| Suggest to the team (as an internal note) that a resolved conversation become a feedback post |
|
|
| Share a feedback post into the conversation as a card the customer can vote on |
|
|
Anonymous visitors' placeholder emails are never returned.
Ticket tools
All need a team caller. Reads use read:chat, writes use write:chat.
Tool | What it does | Key parameters |
|---|---|---|
| List tickets |
|
| Get a ticket and its thread |
|
| Open a ticket |
|
| Reply to the requester |
|
| Add an internal note |
|
| Link a customer ticket to a tracker ticket, so the tracker's stage changes apply to it |
|
| Remove a customer ticket from a tracker |
|
create_ticket({ type: "customer", title: "Refund not received", description: "Customer reports a missing refund." })File and widget tools
Tool | What it does | Key parameters | Scope |
|---|---|---|---|
| Upload a file to attach to a conversation reply, ticket reply or ticket note. Returns a |
|
|
| Check whether the widget is connected on your site: snippet seen, enabled, last seen, origin and SDK version. Never returns the signing secret. | none |
|
Resources
Read resources to look up ids before calling tools.
URI | Returns | Scope |
|---|---|---|
| All boards ( |
|
| All statuses ( |
|
| All tags ( |
|
| All roadmaps ( |
|
| Team members ( |
|
| Help center categories with article counts |
|
Tip: A typical flow: read
quackback://statusesto find the id of your "Planned" status, then calltriage_postwith thatstatusId.
Related articles
Was this helpful?
Your feedback shapes what we write next.
