Respond.io MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | The port for HTTP mode (defaults to 3000). | |
| MCP_SERVER_MODE | No | The server mode, either stdio or http (defaults to stdio). | |
| RESPONDIO_API_KEY | Yes | Your Respond.io API key. | |
| RESPONDIO_BASE_URL | No | The base URL for the Respond.io API (defaults to https://api.respond.io/v2). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_contactA | Retrieve information about a specific contact by their ID, email, or phone number. |
| create_contactC | Create a new contact in the workspace. |
| update_contactC | Update an existing contact's information. |
| delete_contactB | Delete a contact from the workspace. |
| list_contactsC | List contacts with optional filters and search. |
| add_contact_tagsC | Add tags to a contact. |
| remove_contact_tagsB | Remove tags from a contact. |
| create_or_update_contactB | Create a contact if they do not exist, or update the existing contact. Uses the contact identifier to match. |
| merge_contactsB | Merge two contacts. The primary contact is kept; the secondary is merged into it. Optionally update fields on the primary. |
| list_contact_channelsB | List all messaging channels connected to a contact (e.g. WhatsApp, Facebook). |
| update_contact_lifecycleA | Update a contact's lifecycle stage, or remove the lifecycle (pass stage as null or empty to clear). |
| send_messageB | Send a message to a contact through a specific channel. |
| get_messageB | Retrieve a message by its ID. |
| list_messagesB | List messages for a contact with optional pagination. |
| assign_conversationC | Assign or unassign a conversation to a user. |
| update_conversation_statusB | Open or close a conversation. |
| create_commentB | Add a comment to a contact for internal reference. |
| list_usersB | Get a list of users in the workspace. |
| get_userA | Get a workspace user by their ID. |
| list_custom_fieldsB | Get a list of all custom fields in the workspace. |
| get_custom_fieldB | Get a custom field by its ID. |
| create_custom_fieldB | Create a new custom field. |
| list_channelsC | Get all messaging channels connected in the workspace. |
| list_closing_notesC | List closing note categories/options used when closing conversations. |
| list_templatesB | List WhatsApp (or channel) message templates for a channel. |
| create_tagA | Create a workspace tag (used to tag contacts or conversations). |
| update_tagB | Update an existing workspace tag. |
| delete_tagA | Delete a workspace tag by name. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 28 tools
Most tools have distinct purposes, but create_contact and create_or_update_contact overlap significantly, potentially causing misselection. Other tools are clearly separated.
All tool names follow a consistent verb_noun pattern in snake_case, making them predictable and easy to understand.
28 tools is on the higher end but covers a broad domain (contacts, messaging, tags, custom fields, etc.), justifying the count. Slightly heavy but not excessive.
Most core CRUD lifecycle operations are covered for contacts, tags, messages, and users. Minor gaps like missing delete for messages or conversations are acceptable given the scope.