clevertap-mcp
clevertap-mcp
Un servidor del Protocolo de Contexto de Modelo (MCP) para la API REST de CleverTap. Expone los perfiles de usuario, eventos, campañas e informes de CleverTap como herramientas que cualquier asistente de IA compatible con MCP (Claude, Cursor, etc.) puede invocar directamente.
Características
Multiproyecto — gestiona múltiples cuentas de CleverTap desde una única instancia de servidor
Configuración guiada — si no hay ningún proyecto configurado,
clevertap_configurete guía a través del procesoCobertura total de la API — eventos, perfiles, campañas e informes
Sondeo asíncrono — las operaciones de larga duración (recuentos de eventos/perfiles) se sondean automáticamente
Related MCP server: Mixpanel MCP Server
Herramientas
Meta
Herramienta | Descripción |
| Configuración guiada para añadir un proyecto o generar la configuración |
| Listar todos los proyectos configurados y sus regiones |
Eventos
Herramienta | Descripción |
| Subir uno o más eventos para un usuario |
| Consultar datos de eventos con filtros |
| Obtener la siguiente página de resultados de eventos mediante un cursor |
| Obtener el recuento total de un evento (con sondeo asíncrono) |
Perfiles
Herramienta | Descripción |
| Crear o actualizar perfiles de usuario |
| Buscar un usuario único por identidad, correo electrónico u objectId |
| Obtener perfiles de usuarios que realizaron un evento |
| Obtener la siguiente página de resultados de perfiles mediante un cursor |
| Eliminar un perfil de usuario |
| Registrar un token de push para un usuario |
| Contar perfiles que coinciden con un segmento |
| Separar perfiles fusionados |
| Suscribir/cancelar la suscripción de un usuario a canales |
| Eliminar un número de teléfono de un perfil |
Campañas
Herramienta | Descripción |
| Listar campañas dentro de un rango de fechas |
| Obtener estadísticas de entrega y participación de una campaña |
| Detener una campaña en ejecución |
| Crear y lanzar una campaña |
Informes
Herramienta | Descripción |
| Informe de entrega a nivel de mensaje |
| Recuentos de valores de propiedad principales para un evento |
| Tendencia diaria/semanal/mensual de un evento |
| Tendencia de usuarios activos diarios |
| Informe de tendencia de desinstalaciones |
| Recuentos de usuarios activos en tiempo real |
Genérico
Herramienta | Descripción |
| Realizar cualquier solicitud de API REST sin procesar |
| Sondear una solicitud asíncrona pendiente mediante |
Web / Navegador
Herramienta | Descripción |
| Abrir una ventana de Chromium y capturar la cookie de sesión del panel + token CSRF después del inicio de sesión manual (admite SSO y 2FA) |
| Comprobar si se ha capturado una sesión web para un proyecto y cuándo se obtuvo |
| Realizar una solicitud autenticada a cualquier endpoint del panel de CleverTap utilizando la sesión capturada |
| Listar campañas desde la API de la interfaz del panel: datos más completos que la API REST (estado, enviados, impresiones, clics, URL de edición) |
| Enviar una notificación push de prueba a un token de dispositivo específico. Acepta el token push de |
Requisito previo para las herramientas web: instalar el binario de Playwright Chromium una vez después de
npm install:npx playwright install chromium
Instalación
git clone https://github.com/your-org/clevertap-mcp.git
cd clevertap-mcp
npm install
npx playwright install chromium # required for web/browser tools
npm run buildConfiguración
El servidor lee las credenciales del proyecto desde la variable de entorno CLEVERTAP_PROJECTS: una matriz JSON de objetos de proyecto:
[
{
"name": "My App - Production",
"account_id": "XXX-XXX-XXXX",
"passcode": "YYY-YYY-YYYY",
"region": "us1"
},
{
"name": "My App - Staging",
"account_id": "AAA-AAA-AAAA",
"passcode": "BBB-BBB-BBBB",
"region": "us1"
}
]Regiones admitidas: in1, us1, eu1, sg1, aps3, mec1
Alternativa para un solo proyecto
También puedes usar variables de entorno individuales para un solo proyecto:
CLEVERTAP_ACCOUNT_ID=XXX-XXX-XXXX
CLEVERTAP_PASSCODE=YYY-YYY-YYYY
CLEVERTAP_REGION=us1Añadir a Claude Desktop
En tu claude_desktop_config.json (o ~/.claude.json):
{
"mcpServers": {
"clevertap": {
"command": "node",
"args": ["/absolute/path/to/clevertap-mcp/dist/index.js"],
"env": {
"CLEVERTAP_PROJECTS": "[{\"name\":\"My App\",\"account_id\":\"XXX-XXX-XXXX\",\"passcode\":\"YYY-YYY-YYYY\",\"region\":\"us1\"}]"
}
}
}
}Importante:
CLEVERTAP_PROJECTSdebe ser una cadena JSON serializada (no un objeto JSON nativo) dentro del bloqueenv.
Desarrollo
npm run build # compile TypeScript → dist/
npm run dev # watch mode
npm start # run compiled serverEstructura del proyecto
src/
index.ts # MCP server entry point, project config, tool registration
client.ts # CleverTap REST API HTTP client
tools/
events.ts # Event upload and query tools
profiles.ts # Profile management tools
campaigns.ts # Campaign tools
reports.ts # Analytics and report tools
generic.ts # Raw request / poll tools
web.ts # Browser session tools via Playwright (login, campaigns UI, test push)Licencia
MIT
Available Tools
1 toolclevertap_configureA
CleverTap MCP has no project configured yet. Call this tool with your CleverTap credentials and it will return the exact configuration snippet to paste into your MCP settings — then restart the server to activate all tools.
| Name | Required | Description | Default |
|---|---|---|---|
| account_id | Yes | CleverTap Account ID — found in the CleverTap dashboard under Settings → Accounts | |
| passcode | Yes | CleverTap Passcode — found in the CleverTap dashboard under Settings → Accounts | |
| region | No | Data residency region: in1 (India), us1 (US), eu1 (Europe), sg1 (Singapore), aps3 (Asia-Pacific), mec1 (Middle East) | in1 |
| project_name | No | Label for this project. Use any short name (e.g. "production", "staging"). Defaults to "default". | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly explains that this tool returns a configuration snippet rather than performing the configuration directly, which is valuable behavioral context. It also mentions the need to restart the server afterward. However, it doesn't disclose potential authentication requirements beyond credentials, rate limits, or error behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with two sentences that each serve a clear purpose: the first establishes the context and action, the second explains the outcome and next steps. There's zero wasted language, and it's front-loaded with the essential information about when and why to use the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a configuration tool with no annotations and no output schema, the description provides good context about the tool's purpose and usage flow. It explains what happens (returns configuration snippet) and what needs to happen next (restart server). However, it doesn't describe the format of the returned snippet or potential error conditions, leaving some gaps in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already documents all four parameters thoroughly. The description doesn't add any additional parameter semantics beyond what's in the schema descriptions. It mentions 'credentials' generally but doesn't elaborate on specific parameters. This meets the baseline expectation when schema coverage is complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action: 'Call this tool with your CleverTap credentials and it will return the exact configuration snippet to paste into your MCP settings.' It explicitly addresses the initial setup scenario ('no project configured yet') and distinguishes this as a one-time configuration tool. The verb 'configure' is specific and the resource is the CleverTap MCP project setup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool: 'CleverTap MCP has no project configured yet.' It also specifies the follow-up action required: 'then restart the server to activate all tools.' Since there are no sibling tools mentioned, the description appropriately focuses on the specific use case without needing to differentiate from alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
clevertap_configure
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools, as there are no other tools to compare it to. The tool's purpose is clearly defined as a configuration setup step.
Since there is only one tool, naming consistency is inherently perfect. The tool name 'clevertap_configure' follows a clear verb_noun pattern, and there are no other tools to create inconsistency.
A single tool is too few for a server intended to interact with CleverTap, as it suggests the server is not yet fully functional or lacks operational capabilities. This is a significant mismatch for the apparent scope of a CleverTap integration.
The tool set is severely incomplete for a CleverTap MCP server, as it only provides a configuration tool and no actual operational tools for interacting with CleverTap data or features. This leaves obvious gaps in the domain coverage.
Maintenance
Related MCP Connectors
MCP server for building and testing AI agents with multi-model experimentation and insights.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
- ZapierOAuthcom.zapier
Hosted MCP server connecting AI assistants to 9,000+ apps and 40,000+ actions via Zapier.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server that enables AI tools to interact with ActiveCampaign API, allowing contact management and tracking event analysis through natural language queries.51MIT
- AlicenseBqualityDmaintenanceAn MCP server that provides access to the Mixpanel REST API, enabling AI agents to query events, funnels, retention data, and user profiles. It allows users to perform complex analytics tasks and export raw event data through natural language prompts.165 npmMIT
- AlicenseNot gradedqualityBmaintenanceMCP server enabling AI assistants to interact with ClickUp workspaces, including task management, comments, time tracking, and document operations.12 npmMIT
- FlicenseNot gradedqualityCmaintenanceRead-only AI analytics assistant for CleverTap via MCP, enabling querying of events, profiles, campaigns, and realtime data without write endpoints.10 npm-