
Chatvolt Mcp
@MiguelMartinezCV
About Chatvolt Mcp
A Model Context Protocol server that wraps the Chatvolt API, providing tools to manage agents, datastores, and CRM workflows.
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"chatvolt-mcp": {
"command": "npx",
"args": [
"chatvolt-mcp"
],
"env": {
"CHATVOLT_API_KEY": "YOUR KEY FROM chatvolt.ai"
},
"disabled": false,
"alwaysAllow": [
"get_agent"
]
}
}
}Tools
26Adds a new Follow Up Messages tool to an existing agent.
Adds a new Mark As Resolved tool to an existing agent.
Adds a new Request Human tool to an existing agent.
Adds a new Delayed Responses tool to an existing agent.
Adds a new Datastore tool to an existing agent.
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 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 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 all Chatvolt agents
List CRM Scenarios Parameters: - `agentId` (string): Filter scenarios by a specific Agent ID.
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 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 a CRM Scenario Parameters: - `id` (string, required): The ID of the CRM scenario to delete.
List CRM Steps for a given scenario Parameters: - `scenarioId` (string, required): The ID of the CRM scenario to list steps for.
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 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 a CRM Step Parameters: - `id` (string, required): The ID of the CRM step to delete.
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.
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.
Permanently deletes a specific agent by its ID. Parameters: - `id` (string, required): ID of the agent to be deleted.
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 all Chatvolt datastores
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 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 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.
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)
Overview
What is Chatvolt MCP?
A Model Context Protocol server that wraps the Chatvolt API, providing tools to manage agents, datastores, and CRM workflows. It is a TypeScript-based MCP server for integrating Chatvolt with MCP-compatible clients.
How to use Chatvolt MCP?
Install and run via npx chatvolt-mcp. Set the CHATVOLT_API_KEY environment variable with your Chatvolt API key. For use with Roo, add the server configuration to .roo/mcp.json as shown in the README.
Key features of Chatvolt MCP
- 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
Use cases of Chatvolt MCP
- Automate customer support by querying agents with conversation history
- Programmatically manage CRM workflows for contact interactions
- Maintain and update knowledge bases through datastore management
- Integrate Chatvolt’s agent capabilities with other MCP‑compatible assistants
FAQ from Chatvolt MCP
How do I install Chatvolt MCP?
Run npx chatvolt-mcp after setting the CHATVOLT_API_KEY environment variable with your API key.
What environment variables are required?
The only required environment variable is CHATVOLT_API_KEY, which must be set to a valid Chatvolt API token.
How can I debug the server?
Use the MCP Inspector by running npm run inspector from the project directory, which provides a browser URL for debugging.
What transport does the server use?
Frequently asked questions
How do I install Chatvolt MCP?
Run `npx chatvolt-mcp` after setting the `CHATVOLT_API_KEY` environment variable with your API key.
What environment variables are required?
The only required environment variable is `CHATVOLT_API_KEY`, which must be set to a valid Chatvolt API token.
How can I debug the server?
Use the MCP Inspector by running `npm run inspector` from the project directory, which provides a browser URL for debugging.
Basic information
More Other MCP servers
MCP Registry
modelcontextprotocolA community driven registry service for Model Context Protocol (MCP) servers.
Nginx UI
0xJackyYet another WebUI for Nginx

EverArt
modelcontextprotocolModel Context Protocol Servers
Inbox Zero AI
elie222The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.
FastMCP v2 🚀
jlowin🚀 The fast, Pythonic way to build MCP servers and clients.
Comments