Chatvolt Mcp
About
A Model Context Protocol server that wraps the Chatvolt API, providing tools to manage agents, datastores, and CRM workflows.
Explore
- CRUD operations for Chatvolt agents
- Query agents with conversation context and filters
- Enable or disable agent integrations (WhatsApp, Telegram, Instagram, ZAPI)
- Manage CRM scenarios and their steps
- Manage datastores and datasources
- List and retrieve agents, scenarios, and datastores
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Chatvolt McpCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
You can install and run this server using npx:
npx chatvolt-mcp
To use with Roo, add the following to your .roo/mcp.json file:
{
"mcpServers": {
"chatvolt-mcp": {
"command": "npx",
"args": [
"chatvolt-mcp"
],
"env": {
"CHATVOLT_API_KEY": "{YOUR_TOKEN}"
},
"disabled": false,
"alwaysAllow": [
"get_agent"
]
}
}
}
add_follow_up_messages_tool
Adds a new Follow Up Messages tool to an existing agent.
addMarkAsResolvedTool
Adds a new Mark As Resolved tool to an existing agent.
addRequestHumanTool
Adds a new Request Human tool to an existing agent.
add_delayed_responses_tool
Adds a new Delayed Responses tool to an existing agent.
addDatastoreTool
Adds a new Datastore tool to an existing agent.
add_http_tool
Adds a new, fully configured HTTP tool to an existing Chatvolt agent. This tool streamlines the creation of complex HTTP integrations by allowing the definition of endpoints, methods, headers, and dynamic parameters. It fetches the agent's existing tool configuration, appends the new HTTP tool, and updates the agent in a single, atomic operation.
get_agent
Get a Chatvolt agent by its ID or handle Parameters: - `id` (string, required): Agent ID or its handle (unique identifier preceded by '@', e.g., '@my-agent')
create_agent
Create a new Chatvolt agent Parameters: - `name` (string, required): The name of the agent. - `description` (string, required): A description for the agent. - `modelName` (string, required): The model name for the agent (e.g., 'gpt_41'). (values: gpt_41_nano, gpt_41_mini, gpt_41, gpt_4o_mini, gpt_4o_mini_search...) - `systemPrompt` (string, required): The system prompt for the agent. - `temperature` (number): Model temperature (min 0.0, max 1.0). Controls randomness. Model default if not specified. - `tools` (array): Lista de ferramentas a serem associadas ao agente.
list_agents
List all Chatvolt agents
list_crm_scenarios
List CRM Scenarios Parameters: - `agentId` (string): Filter scenarios by a specific Agent ID.
create_crm_scenario
Create a new CRM Scenario Parameters: - `name` (string, required): The name for the new CRM scenario. - `description` (string): An optional description for the CRM scenario.
update_crm_scenario
Update a CRM Scenario Parameters: - `id` (string, required): The ID of the CRM scenario to update. - `name` (string, required): The new name for the CRM scenario. - `description` (string): An optional new description for the CRM scenario.
delete_crm_scenario
Delete a CRM Scenario Parameters: - `id` (string, required): The ID of the CRM scenario to delete.
list_crm_steps
List CRM Steps for a given scenario Parameters: - `scenarioId` (string, required): The ID of the CRM scenario to list steps for.
create_crm_step
Create a new CRM Step Parameters: - `scenarioId` (string, required): The ID of the CRM scenario to add the step to. - `name` (string, required): The name for the new CRM step. - `description` (string): An optional description for the CRM step. - `agentId` (string): Optional Agent ID to associate with this step. - `trigger` (string): A trigger condition or keyword for this step. Either this or 'prompt' is required. - `prompt` (string): The main prompt or instruction for this step. Either this or 'trigger' is required. - `initialMessage` (string): An initial message to be sent when this step is activated. - `autoNextStepId` (string): ID of the step to automatically transition to. - `autoNextTime` (integer): Time in seconds to wait before auto-transitioning. - `defaultStatus` (string): Default status for conversations at this step. (values: RESOLVED, UNRESOLVED, HUMAN_REQUESTED) - `defaultPriority` (string): Default priority for conversations at this step. (values: LOW, MEDIUM, HIGH) - `assigneeLogicType` (string): Logic for assigning conversations at this step. (values: none, clear, single_user, random_selected, fair_distribution_selected) - `selectedMembershipIdsForAssignee` (array): List of membership IDs for assignee logic. Required for single_user, random_selected, and fair_distribution_selected. - `isRequired` (boolean): Indicates if this step is mandatory.
update_crm_step
Update a CRM Step Parameters: - `id` (string, required): The ID of the CRM step to update. - `name` (string, required): The new name for the CRM step. - `description` (string): An optional new description for the CRM step. - `agentId` (string): Optional Agent ID to associate with this step. - `trigger` (string): A trigger condition or keyword for this step. Either this or 'prompt' is required. - `prompt` (string): The main prompt or instruction for this step. Either this or 'trigger' is required. - `initialMessage` (string): An initial message to be sent when this step is activated. - `autoNextStepId` (string): ID of the step to automatically transition to. - `autoNextTime` (integer): Time in seconds to wait before auto-transitioning. - `defaultStatus` (string): Default status for conversations at this step. (values: RESOLVED, UNRESOLVED, HUMAN_REQUESTED) - `defaultPriority` (string): Default priority for conversations at this step. (values: LOW, MEDIUM, HIGH) - `assigneeLogicType` (string): Logic for assigning conversations at this step. (values: none, clear, single_user, random_selected, fair_distribution_selected) - `selectedMembershipIdsForAssignee` (array): List of membership IDs for assignee logic. Required for single_user, random_selected, and fair_distribution_selected. - `isRequired` (boolean): Indicates if this step is mandatory.
delete_crm_step
Delete a CRM Step Parameters: - `id` (string, required): The ID of the CRM step to delete.
enable_disable_agent_integration
Enable or disable an agent integration Parameters: - `id` (string, required): ID of the agent to which the service provider belongs. - `type` (string, required): Type of the service provider for which the webhook status will be changed. (values: whatsapp, telegram, zapi, instagram) - `enabled` (boolean, required): Defines the new webhook status. true to enable, false to disable.
update_agent
Partially updates an existing agent based on the ID. Allows updating one or more fields of a specific agent. Only the fields provided in the request body will be updated. Parameters: - `id` (string, required): ID of the agent to be updated. - `name` (string): New name for the agent. - `description` (string): New description for the agent. - `modelName` (string): New LLM model to be used by the agent. Check the API for available model names. (values: gpt_41_nano, gpt_41_mini, gpt_41, gpt_4o_mini, gpt_4o_mini_search...) - `temperature` (number): New model temperature (min 0.0, max 1.0). - `systemPrompt` (string): New system prompt for the agent. - `visibility` (string): New visibility for the agent. (values: public, private) - `handle` (string): New unique identifier (slug) for the agent. - `interfaceConfig` (object): New chat interface settings for this agent. Replaces the existing object. - `configUrlExternal` (object): New external URL configurations. Replaces the existing object. - `configUrlInfosSystemExternal` (object): New external URL configurations of the system. Replaces the existing object.
delete_agent
Permanently deletes a specific agent by its ID. Parameters: - `id` (string, required): ID of the agent to be deleted.
agent_query
Processes a query (Ask something) through the specified agent. Parameters: - `id` (string, required): ID of the agent to be queried. - `query` (string, required): Text of the question or command to be sent to the agent. - `conversationId` (string): ID of the existing conversation. If not provided or invalid, a new conversation will be created. - `contactId` (string): ID of an existing contact in the system. If provided, associates the conversation with this contact. Alternative to the contact object. - `contact` (object): Contact details. Used to find an existing contact (by email, phoneNumber, or userId) or create a new one if not found. - `visitorId` (string): ID of the visitor/participant who is sending the query. If not provided, a new ID will be generated. - `temperature` (number): Model temperature (min 0.0, max 1.0). Controls the randomness of the response. - `modelName` (string): Allows overriding the LLM model configured in the agent for this specific query. Use valid model names. - `presencePenalty` (number): Presence penalty (between -2.0 and 2.0). Positive values encourage the model to talk about new topics. - `frequencyPenalty` (number): Frequency penalty (between -2.0 and 2.0). Positive values discourage the model from repeating textual lines. - `topP` (number): Nucleus sampling (alternative to temperature). Considers tokens with accumulated probability mass top_p. (Ex: 0.1 considers the top 10%). It is recommended to change topP or temperature, not both. - `filters` (object): - `systemPrompt` (string): Allows overriding the system prompt configured in the agent for this specific query. - `context` (object): Object to pass additional context data that can be used by tools or in the prompt. - `callbackURL` (string): Optional URL. If provided, the API will return 202 immediately and will deliver the response to the Agent via a POST request to this URL when it is ready.
list_datastores
List all Chatvolt datastores
get_datastore
Get a Chatvolt datastore by its ID Parameters: - `id` (string, required): ID of the datastore to be retrieved. - `search` (string): Term to search for datasources by name (case-insensitive). Optional. - `status` (string): Filtra datasources pelo status. Opcional. (values: unsynched, pending, running, synched, error...) - `type` (string): Filtra datasources pelo tipo. Opcional. (values: file, web_page, web_site, qa) - `offset` (integer): Número de páginas a pular para paginação das datasources. Opcional. - `limit` (integer): Número máximo de datasources a serem retornadas por página. Opcional. - `groupId` (string): Filtra datasources por um ID de grupo específico. Opcional.
create_datasource
Create a new Chatvolt datasource Parameters: - `datastoreId` (string, required): The ID of the datastore to add the datasource to. - `name` (string, required): The name for the datasource, used as the filename. - `text` (string, required): The text content for the datasource.
create_datastore
Create a new Chatvolt datastore Parameters: - `name` (string): Datastore name. If not provided, a fun name will be generated automatically. - `description` (string): Datastore description. - `type` (string, required): Datastore type (e.g., 'qdrant'). (values: qdrant) - `isPublic` (boolean): Defines whether the datastore is public (accessible without specific datastore authentication) or private. - `pluginName` (string): Short name for the OpenAI plugin associated with this datastore (optional, used if the datastore is exposed as a plugin). Maximum of 20 characters. - `pluginDescriptionForHumans` (string): Human-readable description for the OpenAI plugin (optional). Maximum of 90 characters.
getDocumentation
Retrieves the content of a specified documentation file. Parameters: - `docType` (string, required): The type of documentation to retrieve. (values: tools, models, prompts, chatvolt_http_tools, cal_com_http_tools)
- add_follow_up_messages_tool: Adds a new Follow Up Messages tool to an existing agent.
- addMarkAsResolvedTool: Adds a new Mark As Resolved tool to an existing agent.
- addRequestHumanTool: Adds a new Request Human tool to an existing agent.
- add_delayed_responses_tool: Adds a new Delayed Responses tool to an existing agent.
- addDatastoreTool: Adds a new Datastore tool to an existing agent.
- add_http_tool: Adds a new, fully configured HTTP tool to an existing Chatvolt agent.
This tool streamlines the creation of complex HTTP integrations by allowing the definition of endpoints, methods, headers, and dynamic parameters. It fetches the agent's existing tool configuration, appends the new HTTP tool, and updates the agent in a single, atomic operation.
- get_agent: Get a Chatvolt agent by its ID or handle
Parameters:
- id (string, required): Agent ID or its handle (unique identifier preceded by '@', e.g., '@my-agent')
- create_agent: Create a new Chatvolt agent
Parameters:
- name (string, required): The name of the agent.
- description (string, required): A description for the agent.
- modelName (string, required): The model name for the agent (e.g., 'gpt_41'). (values: gpt_41_nano, gpt_41_mini, gpt_41, gpt_4o_mini, gpt_4o_mini_search...)
- systemPrompt (string, required): The system prompt for the agent.
- temperature (number): Model temperature (min 0.0, max 1.0). Controls randomness. Model default if not specified.
- tools (array): Lista de ferramentas a serem associadas ao agente.
- list_agents: List all Chatvolt agents
- list_crm_scenarios: List CRM Scenarios
Parameters:
- agentId (string): Filter scenarios by a specific Agent ID.
- create_crm_scenario: Create a new CRM Scenario
Parameters:
- name (string, required): The name for the new CRM scenario.
- description (string): An optional description for the CRM scenario.
- update_crm_scenario: Update a CRM Scenario
Parameters:
- id (string, required): The ID of the CRM scenario to update.
- name (string, required): The new name for the CRM scenario.
- description (string): An optional new description for the CRM scenario.
- delete_crm_scenario: Delete a CRM Scenario
Parameters:
- id (string, required): The ID of the CRM scenario to delete.
- list_crm_steps: List CRM Steps for a given scenario
Parameters:
- scenarioId (string, required): The ID of the CRM scenario to list steps for.
- create_crm_step: Create a new CRM Step
Parameters:
- scenarioId (string, required): The ID of the CRM scenario to add the step to.
- name (string, required): The name for the new CRM step.
- description (string): An optional description for the CRM step.
- agentId (string): Optional Agent ID to associate with this step.
- trigger (string): A trigger condition or keyword for this step. Either this or 'prompt' is required.
- prompt (string): The main prompt or instruction for this step. Either this or 'trigger' is required.
- initialMessage (string): An initial message to be sent when this step is activated.
- autoNextStepId (string): ID of the step to automatically transition to.
- autoNextTime (integer): Time in seconds to wait before auto-transitioning.
- defaultStatus (string): Default status for conversations at this step. (values: RESOLVED, UNRESOLVED, HUMAN_REQUESTED)
- defaultPriority (string): Default priority for conversations at this step. (values: LOW, MEDIUM, HIGH)
- assigneeLogicType (string): Logic for assigning conversations at this step. (values: none, clear, single_user, random_selected, fair_distribution_selected)
- selectedMembershipIdsForAssignee (array): List of membership IDs for assignee logic. Required for single_user, random_selected, and fair_distribution_selected.
- isRequired (boolean): Indicates if this step is mandatory.
- update_crm_step: Update a CRM Step
Parameters:
- id (string, required): The ID of the CRM step to update.
- name (string, required): The new name for the CRM step.
- description (string): An optional new description for the CRM step.
- agentId (string): Optional Agent ID to associate with this step.
- trigger (string): A trigger condition or keyword for this step. Either this or 'prompt' is required.
- prompt (string): The main prompt or instruction for this step. Either this or 'trigger' is required.
- initialMessage (string): An initial message to be sent when this step is activated.
- autoNextStepId (string): ID of the step to automatically transition to.
- autoNextTime (integer): Time in seconds to wait before auto-transitioning.
- defaultStatus (string): Default status for conversations at this step. (values: RESOLVED, UNRESOLVED, HUMAN_REQUESTED)
- defaultPriority (string): Default priority for conversations at this step. (values: LOW, MEDIUM, HIGH)
- assigneeLogicType (string): Logic for assigning conversations at this step. (values: none, clear, single_user, random_selected, fair_distribution_selected)
- selectedMembershipIdsForAssignee (array): List of membership IDs for assignee logic. Required for single_user, random_selected, and fair_distribution_selected.
- isRequired (boolean): Indicates if this step is mandatory.
- delete_crm_step: Delete a CRM Step
Parameters:
- id (string, required): The ID of the CRM step to delete.
- enable_disable_agent_integration: Enable or disable an agent integration
Parameters:
- id (string, required): ID of the agent to which the service provider belongs.
- type (string, required): Type of the service provider for which the webhook status will be changed. (values: whatsapp, telegram, zapi, instagram)
- enabled (boolean, required): Defines the new webhook status. true to enable, false to disable.
- update_agent: Partially updates an existing agent based on the ID. Allows updating one or more fields of a specific agent. Only the fields provided in the request body will be updated.
Parameters:
- id (string, required): ID of the agent to be updated.
- name (string): New name for the agent.
- description (string): New description for the agent.
- modelName (string): New LLM model to be used by the agent. Check the API for available model names. (values: gpt_41_nano, gpt_41_mini, gpt_41, gpt_4o_mini, gpt_4o_mini_search...)
- temperature (number): New model temperature (min 0.0, max 1.0).
- systemPrompt (string): New system prompt for the agent.
- visibility (string): New visibility for the agent. (values: public, private)
- handle (string): New unique identifier (slug) for the agent.
- interfaceConfig (object): New chat interface settings for this agent. Replaces the existing object.
- configUrlExternal (object): New external URL configurations. Replaces the existing object.
- configUrlInfosSystemExternal (object): New external URL configurations of the system. Replaces the existing object.
- delete_agent: Permanently deletes a specific agent by its ID.
Parameters:
- id (string, required): ID of the agent to be deleted.
- agent_query: Processes a query (Ask something) through the specified agent.
Parameters:
- id (string, required): ID of the agent to be queried.
- query (string, required): Text of the question or command to be sent to the agent.
- conversationId (string): ID of the existing conversation. If not provided or invalid, a new conversation will be created.
- contactId (string): ID of an existing contact in the system. If provided, associates the conversation with this contact. Alternative to the contact object.
- contact (object): Contact details. Used to find an existing contact (by email, phoneNumber, or userId) or create a new one if not found.
- visitorId (string): ID of the visitor/participant who is sending the query. If not provided, a new ID will be generated.
- temperature (number): Model temperature (min 0.0, max 1.0). Controls the randomness of the response.
- modelName (string): Allows overriding the LLM model configured in the agent for this specific query. Use valid model names.
- presencePenalty (number): Presence penalty (between -2.0 and 2.0). Positive values encourage the model to talk about new topics.
- frequencyPenalty (number): Frequency penalty (between -2.0 and 2.0). Positive values discourage the model from repeating textual lines.
- topP (number): Nucleus sampling (alternative to temperature). Considers tokens with accumulated probability mass top_p. (Ex: 0.1 considers the top 10%). It is recommended to change topP or temperature, not both.
- filters (object):
- systemPrompt (string): Allows overriding the system prompt configured in the agent for this specific query.
- context (object): Object to pass additional context data that can be used by tools or in the prompt.
- callbackURL (string): Optional URL. If provided, the API will return 202 immediately and will deliver the response to the Agent via a POST request to this URL when it is ready.
- list_datastores: List all Chatvolt datastores
- get_datastore: Get a Chatvolt datastore by its ID
Parameters:
- id (string, required): ID of the datastore to be retrieved.
- search (string): Term to search for datasources by name (case-insensitive). Optional.
- status (string): Filtra datasources pelo status. Opcional. (values: unsynched, pending, running, synched, error...)
- type (string): Filtra datasources pelo tipo. Opcional. (values: file, web_page, web_site, qa)
- offset (integer): Número de páginas a pular para paginação das datasources. Opcional.
- limit (integer): Número máximo de datasources a serem retornadas por página. Opcional.
- groupId (string): Filtra datasources por um ID de grupo específico. Opcional.
- create_datasource: Create a new Chatvolt datasource
Parameters:
- datastoreId (string, required): The ID of the datastore to add the datasource to.
- name (string, required): The name for the datasource, used as the filename.
- text (string, required): The text content for the datasource.
- create_datastore: Create a new Chatvolt datastore
Parameters:
- name (string): Datastore name. If not provided, a fun name will be generated automatically.
- description (string): Datastore description.
- type (string, required): Datastore type (e.g., 'qdrant'). (values: qdrant)
- isPublic (boolean): Defines whether the datastore is public (accessible without specific datastore authentication) or private.
- pluginName (string): Short name for the OpenAI plugin associated with this datastore (optional, used if the datastore is exposed as a plugin). Maximum of 20 characters.
- pluginDescriptionForHumans (string): Human-readable description for the OpenAI plugin (optional). Maximum of 90 characters.
- getDocumentation: Retrieves the content of a specified documentation file.
Parameters:
- docType (string, required): The type of documentation to retrieve. (values: tools, models, prompts, chatvolt_http_tools, cal_com_http_tools)
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"chatvolt mcp": {
"chatvolt-mcp": {
"command": "npx",
"args": [
"chatvolt-mcp"
],
"env": {
"CHATVOLT_API_KEY": "YOUR KEY FROM chatvolt.ai"
},
"disabled": false,
"alwaysAllow": [
"get_agent"
]
}
}
}
}
McpServers
{
"chatvolt-mcp": {
"command": "npx",
"args": [
"chatvolt-mcp"
],
"env": {
"CHATVOLT_API_KEY": "YOUR KEY FROM chatvolt.ai"
},
"disabled": false,
"alwaysAllow": [
"get_agent"
]
}
}
A Model Context Protocol server that wraps the Chatvolt API, providing tools to manage agents, datastores, and CRM workflows.
This is a TypeScript-based MCP server that provides tools to interact with Chatvolt.
Installation
You can install and run this server using npx:
npx chatvolt-mcp
To use with Roo, add the following to your .roo/mcp.json file:
{
"mcpServers": {
"chatvolt-mcp": {
"command": "npx",
"args": [
"chatvolt-mcp"
],
"env": {
"CHATVOLT_API_KEY": "{YOUR_TOKEN}"
},
"disabled": false,
"alwaysAllow": [
"get_agent"
]
}
}
}
Tools
<details>
<summary><b>Agent Tools</b></summary>
- get_agent
- Title: Get Agent
- Description: Get a Chatvolt agent by its ID or handle
- Parameters:
- id (string): Agent ID or its handle (unique identifier preceded by '@', e.g., '@my-agent')
- Read-only: true
- create_agent
- Title: Create Agent
- Description: Create a new Chatvolt agent
- Parameters:
- name (string): The name of the agent.
- description (string, optional): A description for the agent.
- modelName (string): The model name for the agent (e.g., 'gpt-4').
- systemPrompt (string, optional): The system prompt for the agent.
- temperature (number, optional): Model temperature (min 0.0, max 1.0).
- tools (array, optional): List of tools to be associated with the agent.
- Read-only: false
- list_agents
- Title: List Agents
- Description: List all Chatvolt agents
- Parameters: None
- Read-only: true
- update_agent
- Title: Update Agent
- Description: Partially updates an existing agent based on the ID.
- Parameters:
- id (string): ID of the agent to be updated.
- name (string, optional): New name for the agent.
- description (string, optional): New description for the agent.
- modelName (string, optional): New LLM model to be used by the agent.
- temperature (number, optional): New model temperature (min 0.0, max 1.0).
- systemPrompt (string, optional): New system prompt for the agent.
- visibility (string, optional): New visibility for the agent ('public' or 'private').
- handle (string, optional): New unique identifier (slug) for the agent.
- interfaceConfig (object, optional): New chat interface settings for this agent.
- configUrlExternal (object, optional): New external URL configurations.
- configUrlInfosSystemExternal (object, optional): New external URL configurations of the system.
- tools (array, optional): List of tools for the agent.
- Read-only: false
- delete_agent
- Title: Delete Agent
- Description: Permanently deletes a specific agent by its ID.
- Parameters:
- id (string): ID of the agent to be deleted.
- Read-only: false
- agent_query
- Title: Query Agent
- Description: Processes a query (Ask something) through the specified agent.
- Parameters:
- id (string): ID of the agent to be queried.
- query (string): Text of the question or command to be sent to the agent.
- conversationId (string, optional): ID of the existing conversation.
- contactId (string, optional): ID of an existing contact in the system.
- contact (object, optional): Contact details.
- visitorId (string, optional): ID of the visitor/participant.
- temperature (number, optional): Model temperature.
- modelName (string, optional): Allows overriding the LLM model.
- presencePenalty (number, optional): Presence penalty.
- frequencyPenalty (number, optional): Frequency penalty.
- topP (number, optional): Nucleus sampling.
- filters (object, optional): Filters for the query.
- systemPrompt (string, optional): Allows overriding the system prompt.
- context (object, optional): Additional context data.
- callbackURL (string, optional): Callback URL.
- Read-only: true
- enable_disable_agent_integration
- Title: Enable/Disable Agent Integration
- Description: Enable or disable an agent integration.
- Parameters:
- id (string): ID of the agent.
- type (string): Type of the service provider ('whatsapp', 'telegram', 'zapi', 'instagram').
- enabled (boolean): New webhook status.
- Read-only: false
</details>
<details>
<summary><b>CRM Tools</b></summary>
- list_crm_scenarios
- Title: List CRM Scenarios
- Description: List CRM Scenarios
- Parameters:
- agentId (string, optional): Filter scenarios by a specific Agent ID.
- Read-only: true
- create_crm_scenario
- Title: Create CRM Scenario
- Description: Create a new CRM Scenario
- Parameters:
- name (string): The name for the new CRM scenario.
- description (string, optional): An optional description for the CRM scenario.
- Read-only: false
- update_crm_scenario
- Title: Update CRM Scenario
- Description: Update a CRM Scenario
- Parameters:
- id (string): The ID of the CRM scenario to update.
- name (string): The new name for the CRM scenario.
- description (string, optional): An optional new description for the CRM scenario.
- Read-only: false
- delete_crm_scenario
- Title: Delete CRM Scenario
- Description: Delete a CRM Scenario
- Parameters:
- id (string): The ID of the CRM scenario to delete.
- Read-only: false
- list_crm_steps
- Title: List CRM Steps
- Description: List CRM Steps for a given scenario
- Parameters:
- scenarioId (string): The ID of the CRM scenario to list steps for.
- Read-only: true
- create_crm_step
- Title: Create CRM Step
- Description: Create a new CRM Step
- Parameters:
- scenarioId (string): The ID of the CRM scenario to add the step to.
- name (string): The name for the new CRM step.
- description (string, optional): An optional description for the CRM step.
- agentId (string, optional): Optional Agent ID to associate with this step.
- trigger (string, optional): A trigger condition or keyword for this step.
- prompt (string, optional): The main prompt or instruction for this step.
- initialMessage (string, optional): An initial message to be sent when this step is activated.
- autoNextStepId (string, optional): ID of the step to automatically transition to.
- autoNextTime (integer, optional): Time in seconds to wait before auto-transitioning.
- defaultStatus (string, optional): Default status for conversations at this step.
- defaultPriority (string, optional): Default priority for conversations at this step.
- assigneeLogicType (string, optional): Logic for assigning conversations at this step.
- selectedMembershipIdsForAssignee (array, optional): List of membership IDs for assignee logic.
- isRequired (boolean, optional): Indicates if this step is mandatory.
- Read-only: false
- update_crm_step
- Title: Update CRM Step
- Description: Update a CRM Step
- Parameters:
- id (string): The ID of the CRM step to update.
- name (string): The new name for the CRM step.
- description (string, optional): An optional new description for the CRM step.
- agentId (string, optional): Optional Agent ID to associate with this step.
- trigger (string, optional): A trigger condition or keyword for this step.
- prompt (string, optional): The main prompt or instruction for this step.
- initialMessage (string, optional): An initial message to be sent when this step is activated.
- autoNextStepId (string, optional): ID of the step to automatically transition to.
- autoNextTime (integer, optional): Time in seconds to wait before auto-transitioning.
- defaultStatus (string, optional): Default status for conversations at this step.
- defaultPriority (string, optional): Default priority for conversations at this step.
- assigneeLogicType (string, optional): Logic for assigning conversations at this step.
- selectedMembershipIdsForAssignee (array, optional): List of membership IDs for assignee logic.
- isRequired (boolean, optional): Indicates if this step is mandatory.
- Read-only: false
- delete_crm_step
- Title: Delete CRM Step
- Description: Delete a CRM Step
- Parameters:
- id (string): The ID of the CRM step to delete.
- Read-only: false
</details>
<details>
<summary><b>Datastore Tools</b></summary>
- list_datastores
- Title: List Datastores
- Description: List all Chatvolt datastores
- Parameters: None
- Read-only: true
- get_datastore
- Title: Get Datastore
- Description: Get a Chatvolt datastore by its ID
- Parameters:
- id (string): ID of the datastore to be retrieved.
- search (string, optional): Term to search for datasources by name.
- status (string, optional): Filter datasources by status.
- type (string, optional): Filter datasources by type.
- offset (integer, optional): Number of pages to skip for pagination.
- limit (integer, optional): Maximum number of datasources to be returned per page.
- groupId (string, optional): Filter datasources by a specific group ID.
- Read-only: true
- create_datastore
- Title: Create Datastore
- Description: Create a new Chatvolt datastore
- Parameters:
- name (string, optional): Datastore name.
- description (string, optional): Datastore description.
- type (string): Datastore type (e.g., 'qdrant').
- isPublic (boolean, optional): Defines whether the datastore is public or private.
- pluginName (string, optional): Short name for the OpenAI plugin.
- pluginDescriptionForHumans (string, optional): Human-readable description for the OpenAI plugin.
- Read-only: false
- create_datasource
- Title: Create Datasource
- Description: Create a new Chatvolt datasource
- Parameters:
- datastoreId (string): The ID of the datastore to add the datasource to.
- name (string): The name for the datasource, used as the filename.
- text (string): The text content for the datasource.
- Read-only: false
</details>
Configuration
This server requires a Chatvolt API key to be set as an environment variable.
export CHATVOLT_API_KEY="your_api_key_here"
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



