Skip to main content
Glama

Groove MCP by usefulapi

Server Details

Read Groove shared-inbox conversations, contacts, agents and tags; close, assign, snooze and tag.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
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

A3.9/5.0

Scored across 16 tools

Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count4/5

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.

Completeness2/5

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 tools
groove_assign_conversationAssign conversation
Destructive
Inspect

ASSIGNS a conversation to an agent and/or team. Pass agent_id, team_id, or both (at least one is required). Groove GraphQL: conversationAssign.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe conversation id (opaque GraphQL ID).
team_idNoTeam id to assign the conversation to.
agent_idNoAgent id to assign the conversation to.
groove_close_conversationClose conversation
Destructive
Inspect

CLOSES a conversation (marks it resolved) in the shared inbox. Groove GraphQL: conversationClose.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe conversation id (opaque GraphQL ID).
groove_get_contactGet contact
Read-only
Inspect

Get a single contact by id — name, email, role, type, and conversation count. Groove GraphQL: contact(contactId: ID!).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe Groove object id (opaque GraphQL ID, passed as a string).
groove_get_conversationGet conversation
Read-only
Inspect

Get a single conversation by id — subject, state, assignment, contact, channel, counts, and tags. Groove GraphQL: conversation(id: ID!).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe Groove object id (opaque GraphQL ID, passed as a string).
groove_list_agentsList agents
Read-only
Inspect

List agents (support staff / users) in the account, with role and state. Paginate with first/after. Groove GraphQL: agents.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoRelay pagination cursor — pass the previous page's `endCursor` to get the next page.
firstNoHow many records to return (Relay pagination `first`).
groove_list_channelsList channels
Read-only
Inspect

List channels (mailboxes / inboxes — email, chat, etc.) configured in the account. Paginate with first/after. Groove GraphQL: channels.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoRelay pagination cursor — pass the previous page's `endCursor` to get the next page.
firstNoHow many records to return (Relay pagination `first`).
groove_list_contactsList contacts
Read-only
Inspect

List customer contacts (people who wrote in). Optional keyword search over name/email; paginate with first/after. Groove GraphQL: contacts(keywords: String).

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoRelay pagination cursor — pass the previous page's `endCursor` to get the next page.
firstNoHow many records to return (Relay pagination `first`).
keywordsNoKeyword search across contacts (name/email).
groove_list_conversationsList conversations
Read-only
Inspect

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoRelay pagination cursor — pass the previous page's `endCursor` to get the next page.
firstNoHow many records to return (Relay pagination `first`).
stateNoFilter by conversation state.
starredNoIf set, filter to starred (true) or unstarred (false) conversations.
assignedNoIf set, filter to assigned (true) or unassigned (false) conversations.
keywordsNoFull-text keyword search across conversations.
tag_nameNoFilter to conversations carrying this tag name.
folder_idNoFilter to a single folder id.
channel_idNoFilter to a single channel (mailbox) id.
groove_list_foldersList folders
Read-only
Inspect

List folders (saved views / smart folders that group conversations), with conversation counts. Paginate with first/after. Groove GraphQL: folders.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoRelay pagination cursor — pass the previous page's `endCursor` to get the next page.
firstNoHow many records to return (Relay pagination `first`).
groove_list_tagsList tags
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoRelay pagination cursor — pass the previous page's `endCursor` to get the next page.
firstNoHow many records to return (Relay pagination `first`).
groove_list_teamsList teams
Read-only
Inspect

List teams (groups of agents that conversations can be assigned to). Paginate with first/after. Groove GraphQL: teams.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoRelay pagination cursor — pass the previous page's `endCursor` to get the next page.
firstNoHow many records to return (Relay pagination `first`).
groove_open_conversationOpen conversation
Destructive
Inspect

RE-OPENS a closed/snoozed conversation in the shared inbox. Groove GraphQL: conversationOpen.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe conversation id (opaque GraphQL ID).
groove_snooze_conversationSnooze conversation
Destructive
Inspect

SNOOZES a conversation until the given time (ISO8601) — it drops out of the inbox until then. Groove GraphQL: conversationSnooze.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe conversation id (opaque GraphQL ID).
untilYesWhen to un-snooze, as an ISO8601 timestamp (e.g. 2026-08-01T09:00:00Z).
groove_star_conversationStar conversation
Destructive
Inspect

STARS a conversation (flags it for attention) in the shared inbox. Groove GraphQL: conversationStar.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe conversation id (opaque GraphQL ID).
groove_tag_conversationTag conversation
Destructive
Inspect

ADDS tags (by tag id) to a conversation. Use groove_list_tags to find tag ids. Groove GraphQL: conversationTag.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe conversation id (opaque GraphQL ID).
tag_idsYesTag ids to add to the conversation.
groove_untag_conversationUntag conversation
Destructive
Inspect

REMOVES tags (by tag id) from a conversation. Use groove_list_tags to find tag ids. Groove GraphQL: conversationUntag.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe conversation id (opaque GraphQL ID).
tag_idsYesTag ids to remove from the conversation.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 16 tool updates
    • Changedgroove_assign_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_close_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_get_contact1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_get_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_list_agents1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_list_channels1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_list_contacts1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_list_conversations1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_list_folders1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_list_tags1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_list_teams1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_open_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_snooze_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_star_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_tag_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • Changedgroove_untag_conversation1 field changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. 16 tool updates
    • First observedgroove_assign_conversation
    • First observedgroove_close_conversation
    • First observedgroove_get_contact
    • First observedgroove_get_conversation
    • First observedgroove_list_agents
    • First observedgroove_list_channels
    • First observedgroove_list_contacts
    • First observedgroove_list_conversations
    • First observedgroove_list_folders
    • First observedgroove_list_tags
    • First observedgroove_list_teams
    • First observedgroove_open_conversation
    • First observedgroove_snooze_conversation
    • First observedgroove_star_conversation
    • First observedgroove_tag_conversation
    • First observedgroove_untag_conversation

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables management of customer support tickets, contacts, agents, and knowledge base articles through the Groove HQ GraphQL API.
    13 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables reading customer-support conversations, inboxes, and service performance from the Help Scout Inbox API.
    20 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables to search, view, and interact with Intercom contacts and conversations, including sending customer-visible replies and internal notes.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables 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
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.