Groove MCP by usefulapi
Server Details
Read Groove shared-inbox conversations, contacts, agents and tags; close, assign, snooze and tag.
- Status
- Healthy
- Uptime
- 81.1% over 57 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 16 tools
Each tool has a unique verb and noun combination, leaving no ambiguity. For example, assign, close, open, snooze, star, tag, and untag are all distinct actions. List tools target different entities (agents, channels, contacts, conversations, folders, tags, teams), and get tools for contact and conversation are clearly separate.
All tools follow the consistent pattern `groove_verb_noun` in snake_case. List tools use plural nouns (e.g., list_agents), while single-entity tools use singular (e.g., get_conversation). No mixing of camelCase or other conventions.
With 16 tools, the count is slightly above the typical 3-15 range for well-scoped servers. However, each tool serves a distinct purpose, covering listing of multiple entity types and a variety of conversation actions. The count is reasonable for a comprehensive support tool suite.
The tool set covers listing, getting, and updating conversation state (assign, close, open, snooze, star, tag), but lacks essential tools for replying to conversations or adding internal notes. This is a significant gap for a support server, as agents cannot actually communicate with customers.
Available Tools
16 toolsgroove_assign_conversationAssign conversationDestructiveInspect
ASSIGNS a conversation to an agent and/or team. Pass agent_id, team_id, or both (at least one is required). Groove GraphQL: conversationAssign.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The conversation id (opaque GraphQL ID). | |
| team_id | No | Team id to assign the conversation to. | |
| agent_id | No | Agent id to assign the conversation to. |
groove_close_conversationClose conversationDestructiveInspect
CLOSES a conversation (marks it resolved) in the shared inbox. Groove GraphQL: conversationClose.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The conversation id (opaque GraphQL ID). |
groove_get_contactGet contactRead-onlyInspect
Get a single contact by id — name, email, role, type, and conversation count. Groove GraphQL: contact(contactId: ID!).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The Groove object id (opaque GraphQL ID, passed as a string). |
groove_get_conversationGet conversationRead-onlyInspect
Get a single conversation by id — subject, state, assignment, contact, channel, counts, and tags. Groove GraphQL: conversation(id: ID!).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The Groove object id (opaque GraphQL ID, passed as a string). |
groove_list_agentsList agentsRead-onlyInspect
List agents (support staff / users) in the account, with role and state. Paginate with first/after. Groove GraphQL: agents.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Relay pagination cursor — pass the previous page's `endCursor` to get the next page. | |
| first | No | How many records to return (Relay pagination `first`). |
groove_list_channelsList channelsRead-onlyInspect
List channels (mailboxes / inboxes — email, chat, etc.) configured in the account. Paginate with first/after. Groove GraphQL: channels.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Relay pagination cursor — pass the previous page's `endCursor` to get the next page. | |
| first | No | How many records to return (Relay pagination `first`). |
groove_list_contactsList contactsRead-onlyInspect
List customer contacts (people who wrote in). Optional keyword search over name/email; paginate with first/after. Groove GraphQL: contacts(keywords: String).
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Relay pagination cursor — pass the previous page's `endCursor` to get the next page. | |
| first | No | How many records to return (Relay pagination `first`). | |
| keywords | No | Keyword search across contacts (name/email). |
groove_list_conversationsList conversationsRead-onlyInspect
List support conversations (tickets) in the shared inbox, with rich filters. Filter by state, channel_id, folder_id, tag_name, assigned, starred, or keywords; paginate with first/after. Groove GraphQL: conversations(filter: ConversationFilter).
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Relay pagination cursor — pass the previous page's `endCursor` to get the next page. | |
| first | No | How many records to return (Relay pagination `first`). | |
| state | No | Filter by conversation state. | |
| starred | No | If set, filter to starred (true) or unstarred (false) conversations. | |
| assigned | No | If set, filter to assigned (true) or unassigned (false) conversations. | |
| keywords | No | Full-text keyword search across conversations. | |
| tag_name | No | Filter to conversations carrying this tag name. | |
| folder_id | No | Filter to a single folder id. | |
| channel_id | No | Filter to a single channel (mailbox) id. |
groove_list_foldersList foldersRead-onlyInspect
List folders (saved views / smart folders that group conversations), with conversation counts. Paginate with first/after. Groove GraphQL: folders.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Relay pagination cursor — pass the previous page's `endCursor` to get the next page. | |
| first | No | How many records to return (Relay pagination `first`). |
groove_list_tagsList tagsRead-onlyInspect
List tags defined in the account (id, name, color) — use tag ids with the tag/untag write tools. Paginate with first/after. Groove GraphQL: tags.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Relay pagination cursor — pass the previous page's `endCursor` to get the next page. | |
| first | No | How many records to return (Relay pagination `first`). |
groove_list_teamsList teamsRead-onlyInspect
List teams (groups of agents that conversations can be assigned to). Paginate with first/after. Groove GraphQL: teams.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | Relay pagination cursor — pass the previous page's `endCursor` to get the next page. | |
| first | No | How many records to return (Relay pagination `first`). |
groove_open_conversationOpen conversationDestructiveInspect
RE-OPENS a closed/snoozed conversation in the shared inbox. Groove GraphQL: conversationOpen.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The conversation id (opaque GraphQL ID). |
groove_snooze_conversationSnooze conversationDestructiveInspect
SNOOZES a conversation until the given time (ISO8601) — it drops out of the inbox until then. Groove GraphQL: conversationSnooze.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The conversation id (opaque GraphQL ID). | |
| until | Yes | When to un-snooze, as an ISO8601 timestamp (e.g. 2026-08-01T09:00:00Z). |
groove_star_conversationStar conversationDestructiveInspect
STARS a conversation (flags it for attention) in the shared inbox. Groove GraphQL: conversationStar.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The conversation id (opaque GraphQL ID). |
groove_tag_conversationTag conversationDestructiveInspect
ADDS tags (by tag id) to a conversation. Use groove_list_tags to find tag ids. Groove GraphQL: conversationTag.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The conversation id (opaque GraphQL ID). | |
| tag_ids | Yes | Tag ids to add to the conversation. |
groove_untag_conversationUntag conversationDestructiveInspect
REMOVES tags (by tag id) from a conversation. Use groove_list_tags to find tag ids. Groove GraphQL: conversationUntag.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The conversation id (opaque GraphQL ID). | |
| tag_ids | Yes | Tag ids to remove from the conversation. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
16 tool updates
- Changed
groove_assign_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_close_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_get_contact1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_get_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_list_agents1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_list_channels1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_list_contacts1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_list_conversations1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_list_folders1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_list_tags1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_list_teams1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_open_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_snooze_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_star_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_tag_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
groove_untag_conversation1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
16 tool updates
- First observed
groove_assign_conversation - First observed
groove_close_conversation - First observed
groove_get_contact - First observed
groove_get_conversation - First observed
groove_list_agents - First observed
groove_list_channels - First observed
groove_list_contacts - First observed
groove_list_conversations - First observed
groove_list_folders - First observed
groove_list_tags - First observed
groove_list_teams - First observed
groove_open_conversation - First observed
groove_snooze_conversation - First observed
groove_star_conversation - First observed
groove_tag_conversation - First observed
groove_untag_conversation
Related MCP Connectors
Read Helpwise conversations, contacts, tags and reports; note, tag, assign, close; send one email.
211Read tickets, contacts, companies, agents and groups; create, update and reply to tickets.
Manage Re:amaze conversations, messages, contacts and help articles.
Read SupportBee tickets, replies and reports; reply, comment, label, assign and archive tickets.
221
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables management of customer support tickets, contacts, agents, and knowledge base articles through the Groove HQ GraphQL API.13 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables reading customer-support conversations, inboxes, and service performance from the Help Scout Inbox API.20 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables to search, view, and interact with Intercom contacts and conversations, including sending customer-visible replies and internal notes.MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to read and write leads, contacts, companies, tasks, notes, pipelines, tags, custom fields, users, events, conversations, and catalogs in the conversation-first sales CRM through its official v4 API, including a raw API call tool for any endpoint.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.