@velaro/mcp-server 0.6.83 → 0.6.84
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/server.js +69 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@velaro/mcp-server",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.84",
|
|
4
4
|
"description": "Velaro MCP server — connect Claude and other AI agents directly to your Velaro account: KB, workflows, bots, conversations, contacts, routing, and more.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
package/server.js
CHANGED
|
@@ -3592,6 +3592,51 @@ For multiSelect dynamic options: the variable named in dynamicOptionsVariable mu
|
|
|
3592
3592
|
required: [],
|
|
3593
3593
|
},
|
|
3594
3594
|
},
|
|
3595
|
+
{
|
|
3596
|
+
name: 'status_incident_list',
|
|
3597
|
+
description: 'Velaro staff only (SuperAdmin). Lists public status page incidents, including component overrides (IncidentType "Override").',
|
|
3598
|
+
inputSchema: { type: 'object', properties: { filter: { type: 'string', enum: ['active', 'resolved', 'all'], description: 'Default active.' } }, required: [] },
|
|
3599
|
+
},
|
|
3600
|
+
{
|
|
3601
|
+
name: 'status_incident_upsert',
|
|
3602
|
+
description: 'Velaro staff only (SuperAdmin). Creates a public status incident, or updates one when id is given (update replaces all fields, so pass every field to keep). AffectedServices is a comma-separated list of component names (Messaging, Voice & Calls, AI Assistant, Database, API, Integrations, Email Campaigns, Velaro Sign, Velaro Forms, Agent Console, Core API, Chat Engagement) plus optional uptime tokens: "counts-uptime" forces the incident to count against uptime, "no-uptime-impact" forces it not to. Default: only a core chat outage counts.',
|
|
3603
|
+
inputSchema: {
|
|
3604
|
+
type: 'object',
|
|
3605
|
+
properties: {
|
|
3606
|
+
id: { type: 'number', description: 'Existing incident id to update; omit to create.' },
|
|
3607
|
+
title: { type: 'string' }, description: { type: 'string' },
|
|
3608
|
+
status: { type: 'string', description: 'Investigating, Identified, Monitoring, Resolved' },
|
|
3609
|
+
incidentType: { type: 'string', description: 'Incident or Maintenance' },
|
|
3610
|
+
severity: { type: 'string', description: 'Minor or Major' },
|
|
3611
|
+
affectedServices: { type: 'string', description: 'CSV of component names plus optional counts-uptime / no-uptime-impact.' },
|
|
3612
|
+
affectedRegions: { type: 'string' },
|
|
3613
|
+
endTime: { type: 'string', description: 'ISO timestamp' },
|
|
3614
|
+
excludeFromUptime: { type: 'boolean' },
|
|
3615
|
+
isVisibleToCustomers: { type: 'boolean' },
|
|
3616
|
+
},
|
|
3617
|
+
required: [],
|
|
3618
|
+
},
|
|
3619
|
+
},
|
|
3620
|
+
{
|
|
3621
|
+
name: 'status_incident_delete',
|
|
3622
|
+
description: 'Velaro staff only (SuperAdmin). Deletes a status incident, or clears a component override created by status_override_set.',
|
|
3623
|
+
inputSchema: { type: 'object', properties: { id: { type: 'number' } }, required: ['id'] },
|
|
3624
|
+
},
|
|
3625
|
+
{
|
|
3626
|
+
name: 'status_override_set',
|
|
3627
|
+
description: 'Velaro staff only (SuperAdmin). Forces a public status page component to a status until expiresAt. Components: Messaging, Voice & Calls, AI Assistant, Database, API, Integrations, Email Campaigns, Velaro Sign, Velaro Forms, Agent Console, Core API, Chat Engagement. countsAgainstUptime: true adds the counts-uptime token, false adds no-uptime-impact, omit for default (only a core chat outage counts). Clear with status_incident_delete.',
|
|
3628
|
+
inputSchema: {
|
|
3629
|
+
type: 'object',
|
|
3630
|
+
properties: {
|
|
3631
|
+
component: { type: 'string' },
|
|
3632
|
+
status: { type: 'string', enum: ['operational', 'degraded', 'outage', 'maintenance'] },
|
|
3633
|
+
note: { type: 'string' },
|
|
3634
|
+
expiresAt: { type: 'string', description: 'ISO timestamp the override auto-clears.' },
|
|
3635
|
+
countsAgainstUptime: { type: 'boolean' },
|
|
3636
|
+
},
|
|
3637
|
+
required: ['component', 'status'],
|
|
3638
|
+
},
|
|
3639
|
+
},
|
|
3595
3640
|
{
|
|
3596
3641
|
name: 'signalr_diagnostics',
|
|
3597
3642
|
description: 'Check health, connection counts, hub stats, and recent errors for Velaro\'s Azure SignalR Service instances. Covers both the infra-prod instance (velaro-eastus-prd-signalr, Premium P1) and the legacy prod instance (velaro-prod-us). Use this to diagnose "hub down", connection storms, capacity issues, or capacity saturation alerts.',
|
|
@@ -8543,6 +8588,30 @@ async function handleTool(name, args) {
|
|
|
8543
8588
|
return JSON.stringify(data, null, 2);
|
|
8544
8589
|
}
|
|
8545
8590
|
|
|
8591
|
+
case 'status_incident_list': {
|
|
8592
|
+
const rows = await messagingRequest('GET', `/superadmin/status-incidents?filter=${encodeURIComponent(args.filter || 'active')}`);
|
|
8593
|
+
return JSON.stringify(rows, null, 2);
|
|
8594
|
+
}
|
|
8595
|
+
|
|
8596
|
+
case 'status_incident_upsert': {
|
|
8597
|
+
const body = {
|
|
8598
|
+
title: args.title, description: args.description, status: args.status, incidentType: args.incidentType, severity: args.severity,
|
|
8599
|
+
affectedServices: args.affectedServices, affectedRegions: args.affectedRegions, endTime: args.endTime,
|
|
8600
|
+
excludeFromUptime: args.excludeFromUptime ?? false, isVisibleToCustomers: args.isVisibleToCustomers ?? true,
|
|
8601
|
+
};
|
|
8602
|
+
if (args.id) return JSON.stringify(await messagingRequest('PUT', `/superadmin/status-incidents/${Number(args.id)}`, body), null, 2);
|
|
8603
|
+
if (!args.title) throw new Error('title is required when creating an incident.');
|
|
8604
|
+
return JSON.stringify(await messagingRequest('POST', '/superadmin/status-incidents', body), null, 2);
|
|
8605
|
+
}
|
|
8606
|
+
|
|
8607
|
+
case 'status_incident_delete':
|
|
8608
|
+
return JSON.stringify(await messagingRequest('DELETE', `/superadmin/status-incidents/${Number(args.id)}`), null, 2);
|
|
8609
|
+
|
|
8610
|
+
case 'status_override_set':
|
|
8611
|
+
return JSON.stringify(await messagingRequest('POST', '/superadmin/status-overrides', {
|
|
8612
|
+
component: args.component, status: args.status, note: args.note || '', expiresAt: args.expiresAt ?? null, countsAgainstUptime: args.countsAgainstUptime ?? null,
|
|
8613
|
+
}), null, 2);
|
|
8614
|
+
|
|
8546
8615
|
case 'signalr_diagnostics': {
|
|
8547
8616
|
// Parse a SignalR connection string into { endpoint, accessKey }
|
|
8548
8617
|
function parseSignalRConn(conn) {
|