@danainnovations/cortex-mcp 1.0.114 → 1.0.115

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/dist/cli.js CHANGED
@@ -898,13 +898,13 @@ function getWizardHtml() {
898
898
  </div>
899
899
  </div>
900
900
 
901
- <!-- Step 5: Manual Setup Walkthrough -->
901
+ <!-- Step 5: Connect Cortex to Claude -->
902
902
  <div id="step-manual-setup" class="step">
903
903
  <div class="card">
904
904
  <div id="manual-setup-content"></div>
905
905
  <div class="btn-row">
906
- <button class="btn btn-secondary" id="btn-manual-skip" onclick="skipManualSetup()">Skip for now</button>
907
- <button class="btn btn-primary" id="btn-manual-done" onclick="completeManualSetup()">I've done this</button>
906
+ <button class="btn btn-secondary" onclick="skipManualSetup()">I'll do this later</button>
907
+ <button class="btn btn-primary" onclick="completeManualSetup()">Continue</button>
908
908
  </div>
909
909
  </div>
910
910
  </div>
@@ -1376,53 +1376,7 @@ function getWizardHtml() {
1376
1376
  html += '</div>';
1377
1377
  }
1378
1378
 
1379
- // \u2500\u2500 Section 2: Manual setup with inline instructions \u2500\u2500
1380
- if (manualClients.length > 0) {
1381
- html += '<div class="client-section-divider">' +
1382
- '<div class="client-section-title">Connect manually</div>' +
1383
- '<div class="client-section-subtitle">These need one extra step in the app</div>' +
1384
- '</div>';
1385
-
1386
- manualClients.forEach(function(client) {
1387
- var icon = CLIENT_ICONS[client.type] || '';
1388
- if (client.type === 'claude-cowork') {
1389
- html += '<div class="manual-client-card" data-client="claude-cowork">' +
1390
- '<div class="manual-client-header">' +
1391
- (icon ? '<div class="client-icon">' + icon + '</div>' : '') +
1392
- '<span class="client-name">Claude CoWork</span>' +
1393
- '<span class="manual-client-badge">1 step</span>' +
1394
- '</div>' +
1395
- '<ol class="manual-client-steps">' +
1396
- '<li>Open <strong>Claude Desktop</strong> \\u2192 <strong>Settings</strong> \\u2192 <strong>Connectors</strong></li>' +
1397
- '<li>Find <strong>Cortex MCP Enterprise</strong> at the bottom</li>' +
1398
- '<li>Click <strong>Connect</strong> \\u2192 sign in via Okta when prompted</li>' +
1399
- '</ol>' +
1400
- '<div class="manual-url-box">' +
1401
- '<code>' + escapeHtml(mcpUrl) + '</code>' +
1402
- '<button class="copy-btn" onclick="copySnippet(this)">Copy</button>' +
1403
- '</div>' +
1404
- '</div>';
1405
- }
1406
- if (client.type === 'claude-ai') {
1407
- html += '<div class="manual-client-card" data-client="claude-ai">' +
1408
- '<div class="manual-client-header">' +
1409
- (icon ? '<div class="client-icon">' + icon + '</div>' : '') +
1410
- '<span class="client-name">Claude.ai & Mobile</span>' +
1411
- '<span class="manual-client-badge">1 step</span>' +
1412
- '</div>' +
1413
- '<ol class="manual-client-steps">' +
1414
- '<li>Open <a href="https://claude.ai/settings/integrations" target="_blank">claude.ai/settings/integrations</a></li>' +
1415
- '<li>Click <strong>Add custom integration</strong></li>' +
1416
- '<li>Paste the URL below and click <strong>Add</strong></li>' +
1417
- '</ol>' +
1418
- '<div class="manual-url-box">' +
1419
- '<code>' + escapeHtml(mcpUrl) + '</code>' +
1420
- '<button class="copy-btn" onclick="copySnippet(this)">Copy</button>' +
1421
- '</div>' +
1422
- '</div>';
1423
- }
1424
- });
1425
- }
1379
+ // Manual clients (CoWork, Claude.ai) moved to dedicated step 5
1426
1380
 
1427
1381
  // \u2500\u2500 Section 3: Additional clients (collapsed) \u2500\u2500
1428
1382
  if (additionalClients.length > 0) {
@@ -1451,22 +1405,15 @@ function getWizardHtml() {
1451
1405
  });
1452
1406
  });
1453
1407
 
1454
- // Include manual clients in selectedClients so they get configured too
1455
- manualClients.forEach(function(c) {
1456
- if (state.selectedClients.indexOf(c.type) === -1) {
1457
- state.selectedClients.push(c.type);
1458
- }
1459
- });
1460
-
1461
- // Sync selectedClients with all checked items
1462
- var checkedAuto = Array.from(el.querySelectorAll('.client-item.checked'))
1408
+ // Sync selectedClients with checked auto-configured items only
1409
+ // Manual clients (CoWork, Claude.ai) are handled in the dedicated step 5
1410
+ state.selectedClients = Array.from(el.querySelectorAll('.client-item.checked'))
1463
1411
  .map(function(i) { return i.dataset.client; });
1464
- state.selectedClients = checkedAuto.concat(manualClients.map(function(c) { return c.type; }));
1465
1412
  }
1466
1413
 
1467
1414
  async function configureClients() {
1468
1415
  if (state.selectedClients.length === 0) {
1469
- goToStep('connect');
1416
+ goToStep('manual-setup');
1470
1417
  return;
1471
1418
  }
1472
1419
 
@@ -1479,7 +1426,7 @@ function getWizardHtml() {
1479
1426
  var item = document.querySelector('[data-client="' + clientType + '"]');
1480
1427
  if (item) {
1481
1428
  var statusSpan = item.querySelector('.client-status');
1482
- statusSpan.innerHTML = '<span class="spinner"></span>';
1429
+ if (statusSpan) statusSpan.innerHTML = '<span class="spinner"></span>';
1483
1430
  }
1484
1431
  });
1485
1432
 
@@ -1501,13 +1448,12 @@ function getWizardHtml() {
1501
1448
  var item = document.querySelector('[data-client="' + r.client + '"]');
1502
1449
  if (item) {
1503
1450
  var statusSpan = item.querySelector('.client-status');
1504
- if (r.success) {
1505
- var isManual = manualClientTypes.indexOf(r.client) !== -1;
1506
- statusSpan.innerHTML = isManual
1507
- ? '<span style="color: #00A3E1;">Setup required \u2192</span>'
1508
- : '<span style="color: #4CAF50;">&#10003; Done</span>';
1509
- } else {
1510
- statusSpan.innerHTML = '<span style="color: #EF5350;">&#10007; Failed</span>';
1451
+ if (statusSpan) {
1452
+ if (r.success) {
1453
+ statusSpan.innerHTML = '<span style="color: #4CAF50;">&#10003; Done</span>';
1454
+ } else {
1455
+ statusSpan.innerHTML = '<span style="color: #EF5350;">&#10007; Failed</span>';
1456
+ }
1511
1457
  }
1512
1458
  }
1513
1459
  });
@@ -1537,11 +1483,7 @@ function getWizardHtml() {
1537
1483
  btn.textContent = 'Continue';
1538
1484
  btn.disabled = false;
1539
1485
  btn.onclick = function() {
1540
- if (state.manualQueue.length > 0) {
1541
- goToStep('manual-setup');
1542
- } else {
1543
- goToStep('connect');
1544
- }
1486
+ goToStep('manual-setup');
1545
1487
  };
1546
1488
  } catch (err) {
1547
1489
  btn.disabled = false;
@@ -1607,48 +1549,56 @@ function getWizardHtml() {
1607
1549
 
1608
1550
  function renderManualSetup() {
1609
1551
  var el = document.getElementById('manual-setup-content');
1610
- var total = state.manualQueue.length;
1611
- var idx = state.currentManualIndex;
1612
-
1613
- if (idx >= total) {
1614
- goToStep('connect');
1615
- return;
1616
- }
1617
-
1618
- var item = state.manualQueue[idx];
1619
- var clientType = item.client;
1620
- var clientName = MANUAL_CLIENT_NAMES[clientType] || clientType;
1621
- var icon = CLIENT_ICONS[clientType] || '';
1622
-
1623
- var progressHtml = total > 1
1624
- ? '<div style="font-size: 12px; text-transform: uppercase; letter-spacing: 0.1em; opacity: 0.5; margin-bottom: 8px;">Setup ' + (idx + 1) + ' of ' + total + '</div>'
1625
- : '';
1552
+ var mcpUrl = (state.serverUrl || 'https://cortex-bice.vercel.app') + '/mcp/cortex';
1553
+ var coworkIcon = CLIENT_ICONS['claude-cowork'] || '';
1554
+ var claudeAiIcon = CLIENT_ICONS['claude-ai'] || '';
1626
1555
 
1627
- el.innerHTML = progressHtml +
1628
- '<div style="display: flex; align-items: center; gap: 12px; margin-bottom: 24px;">' +
1629
- (icon ? '<div class="client-icon" style="width: 32px; height: 32px;">' + icon + '</div>' : '') +
1630
- '<h2 style="margin: 0;">Set up ' + escapeHtml(clientName) + '</h2>' +
1556
+ el.innerHTML =
1557
+ '<h2 style="margin-bottom:4px;">Connect Cortex to Claude</h2>' +
1558
+ '<p class="subtitle" style="margin-bottom:20px;">Complete these steps to use Cortex tools in Claude</p>' +
1559
+
1560
+ // \u2500\u2500 CoWork card (prominent) \u2500\u2500
1561
+ '<div style="border: 2px solid #00A3E1; border-radius: 14px; padding: 20px; margin-bottom: 16px; background: rgba(0,163,225,0.04);">' +
1562
+ '<div style="display:flex; align-items:center; gap:10px; margin-bottom:14px;">' +
1563
+ (coworkIcon ? '<div class="client-icon" style="width:28px;height:28px;">' + coworkIcon + '</div>' : '') +
1564
+ '<span style="font-size:16px; font-weight:600; color:#fff;">Claude CoWork</span>' +
1565
+ '<span style="font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:0.5px; color:#fff; background:#00A3E1; padding:3px 10px; border-radius:4px; margin-left:auto;">Required</span>' +
1566
+ '</div>' +
1567
+ '<p style="font-size:13px; color:#FFB74D; margin-bottom:12px; font-weight:500;">Enterprise accounts must complete this step to use Cortex in CoWork</p>' +
1568
+ '<ol class="manual-client-steps" style="font-size:14px; line-height:2;">' +
1569
+ '<li>Open <strong>Claude Desktop</strong> \\u2192 <strong>Settings</strong> \\u2192 <strong>Connectors</strong></li>' +
1570
+ '<li>Find <strong>Cortex MCP Enterprise</strong> at the bottom and click <strong>Connect</strong></li>' +
1571
+ '<li>Sign in with your company account, click <strong>Open Claude</strong>, then close the browser tab</li>' +
1572
+ '<li>Back in Connectors, click on <strong>Cortex</strong> \\u2192 set Tool permissions to <strong>Always allow</strong></li>' +
1573
+ '</ol>' +
1631
1574
  '</div>' +
1632
- '<p class="subtitle" style="margin-bottom: 24px;">Follow these steps to connect Cortex</p>' +
1633
- getManualSetupContent(clientType);
1575
+
1576
+ // \u2500\u2500 Claude.ai card (side) \u2500\u2500
1577
+ '<div class="manual-client-card">' +
1578
+ '<div class="manual-client-header">' +
1579
+ (claudeAiIcon ? '<div class="client-icon">' + claudeAiIcon + '</div>' : '') +
1580
+ '<span class="client-name">Claude.ai & Mobile</span>' +
1581
+ '<span class="manual-client-badge">Optional</span>' +
1582
+ '</div>' +
1583
+ '<p style="font-size:12px;color:#8f999f;margin-bottom:10px;">Works on claude.ai (web), Claude Desktop, and the Claude mobile app</p>' +
1584
+ '<ol class="manual-client-steps">' +
1585
+ '<li>Open <a href="https://claude.ai/settings/integrations" target="_blank">claude.ai/settings/integrations</a></li>' +
1586
+ '<li>Click <strong>Add custom integration</strong></li>' +
1587
+ '<li>Paste the URL below and click <strong>Add</strong></li>' +
1588
+ '</ol>' +
1589
+ '<div class="manual-url-box">' +
1590
+ '<code>' + escapeHtml(mcpUrl) + '</code>' +
1591
+ '<button class="copy-btn" onclick="copySnippet(this)">Copy</button>' +
1592
+ '</div>' +
1593
+ '</div>';
1634
1594
  }
1635
1595
 
1636
1596
  function completeManualSetup() {
1637
- state.currentManualIndex++;
1638
- if (state.currentManualIndex < state.manualQueue.length) {
1639
- renderManualSetup();
1640
- } else {
1641
- goToStep('connect');
1642
- }
1597
+ goToStep('connect');
1643
1598
  }
1644
1599
 
1645
1600
  function skipManualSetup() {
1646
- state.currentManualIndex++;
1647
- if (state.currentManualIndex < state.manualQueue.length) {
1648
- renderManualSetup();
1649
- } else {
1650
- goToStep('connect');
1651
- }
1601
+ goToStep('connect');
1652
1602
  }
1653
1603
 
1654
1604
  // \u2500\u2500 Step 6: Connect Accounts \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500