@vybit/mcp-server 1.2.7 โ†’ 1.4.0

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/README.md CHANGED
@@ -26,8 +26,9 @@ This MCP server provides AI assistants with **full parity** with the Vybit Devel
26
26
  ## Prerequisites
27
27
 
28
28
  1. Sign up at [developer.vybit.net](https://developer.vybit.net)
29
- 2. Navigate to the Developer API section, click "</> DEV" then "API Configuration"
30
- 3. Copy your API key
29
+ 2. Get your credentials (either option):
30
+ - **API Key**: Navigate to the Developer API section, click "</> DEV" then "API Configuration"
31
+ - **OAuth2 Token**: Complete the OAuth2 flow to obtain an access token
31
32
 
32
33
  ## Installation
33
34
 
@@ -43,7 +44,7 @@ Install the package globally:
43
44
  npm install -g @vybit/mcp-server
44
45
  ```
45
46
 
46
- Add to your Claude Desktop configuration file:
47
+ Add to your Claude Desktop configuration file (use either `VYBIT_API_KEY` or `VYBIT_ACCESS_TOKEN`):
47
48
 
48
49
  **MacOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
49
50
  **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
@@ -66,7 +67,7 @@ Restart Claude Desktop to load the server.
66
67
 
67
68
  ### Claude Code
68
69
 
69
- Add to the current project:
70
+ Add to the current project (use either `VYBIT_API_KEY` or `VYBIT_ACCESS_TOKEN`):
70
71
 
71
72
  ```bash
72
73
  claude mcp add vybit -e VYBIT_API_KEY=your-api-key-here -- npx -y @vybit/mcp-server
@@ -96,7 +97,7 @@ You can also add manually to `.claude/mcp.json` in your project:
96
97
 
97
98
  ### Other MCP Clients (Cline, Zed, Continue.dev, etc.)
98
99
 
99
- Install globally with `npm install -g @vybit/mcp-server`, then configure your client to run `npx -y @vybit/mcp-server` with `VYBIT_API_KEY` set in the environment.
100
+ Install globally with `npm install -g @vybit/mcp-server`, then configure your client to run `npx -y @vybit/mcp-server` with either `VYBIT_API_KEY` or `VYBIT_ACCESS_TOKEN` set in the environment.
100
101
 
101
102
  ### Troubleshooting: nvm Users
102
103
 
@@ -126,7 +127,7 @@ Then use those paths in your config:
126
127
  }
127
128
  ```
128
129
 
129
- Node 18+ is required.
130
+ Node 18+ is required. Use either `VYBIT_API_KEY` or `VYBIT_ACCESS_TOKEN` in the `env` block.
130
131
 
131
132
  ## Usage
132
133
 
@@ -262,7 +263,8 @@ The MCP server exposes **29 tools** to AI assistants, providing full parity with
262
263
 
263
264
  ## Environment Variables
264
265
 
265
- - `VYBIT_API_KEY` (required) - Your Vybit Developer API key
266
+ - `VYBIT_API_KEY` - Your Vybit Developer API key (one of `VYBIT_API_KEY` or `VYBIT_ACCESS_TOKEN` is required)
267
+ - `VYBIT_ACCESS_TOKEN` - OAuth2 access token (alternative to API key)
266
268
  - `VYBIT_API_URL` (optional) - Custom API base URL (defaults to `https://api.vybit.net/v1`).
267
269
 
268
270
  ## Development
@@ -9,34 +9,60 @@
9
9
  */
10
10
  import { VybitAPIClient } from '@vybit/api-sdk';
11
11
  const API_KEY = process.env.VYBIT_API_KEY;
12
- const hasApiKey = !!API_KEY && API_KEY !== 'your-api-key-here';
13
- // Skip all integration tests if no API key
14
- const describeWithApiKey = hasApiKey ? describe : describe.skip;
15
- describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
12
+ const ACCESS_TOKEN = process.env.VYBIT_ACCESS_TOKEN;
13
+ const hasCredentials = (!!API_KEY && API_KEY !== 'your-api-key-here') || (!!ACCESS_TOKEN && ACCESS_TOKEN !== 'your-token-here');
14
+ // Skip all integration tests if no credentials
15
+ const describeWithCredentials = hasCredentials ? describe : describe.skip;
16
+ describeWithCredentials('MCP Server Integration Tests (Real API)', () => {
16
17
  let client;
17
18
  const createdResources = [];
18
19
  // Helper to add delay between API calls to avoid rate limiting
19
20
  const delay = (ms) => new Promise(resolve => setTimeout(resolve, ms));
20
21
  // Helper to generate unique test names to avoid duplicate_name errors
21
22
  const testName = (label) => `MCP Test - ${label} ${Date.now()}`;
22
- beforeAll(() => {
23
- if (!hasApiKey)
23
+ // Helper to generate a future cron expression (monthsAhead from now)
24
+ const futureCron = (monthsAhead, minute = 0, hour = 0) => {
25
+ const d = new Date();
26
+ d.setMonth(d.getMonth() + monthsAhead);
27
+ const day = Math.min(d.getDate(), 28);
28
+ return { cron: `${minute} ${hour} ${day} ${d.getMonth() + 1} *`, year: d.getFullYear() };
29
+ };
30
+ beforeAll(async () => {
31
+ if (!hasCredentials)
24
32
  return;
25
33
  const baseUrl = process.env.VYBIT_API_URL || 'https://api.vybit.net/v1';
34
+ const authType = API_KEY ? 'API Key' : 'Access Token';
26
35
  client = new VybitAPIClient({
27
- apiKey: API_KEY,
36
+ ...(API_KEY ? { apiKey: API_KEY } : { accessToken: ACCESS_TOKEN }),
28
37
  baseUrl: baseUrl
29
38
  });
30
- console.log('๐Ÿ”‘ Running integration tests with real API key');
39
+ console.log(`๐Ÿ”‘ Running integration tests with ${authType}`);
31
40
  console.log(`๐ŸŒ API URL: ${baseUrl}`);
32
41
  console.log('โฑ๏ธ Adding delays between requests to avoid rate limiting...');
33
- });
42
+ // Free up capacity by deleting old test vybits to avoid tier limits
43
+ console.log('๐Ÿงน Pre-cleaning old test vybits to free tier capacity...');
44
+ try {
45
+ const existing = await client.listVybits({ limit: 50 });
46
+ const testVybits = existing.filter((v) => v.name.startsWith('MCP Test -') || v.name.startsWith('API Test -'));
47
+ for (const v of testVybits) {
48
+ try {
49
+ await client.deleteVybit(v.key);
50
+ await delay(150);
51
+ }
52
+ catch { /* ignore */ }
53
+ }
54
+ if (testVybits.length > 0) {
55
+ console.log(` โœ… Deleted ${testVybits.length} old test vybits`);
56
+ }
57
+ }
58
+ catch { /* ignore */ }
59
+ }, 30000);
34
60
  beforeEach(async () => {
35
61
  // Add 200ms delay before each test to avoid rate limiting (10 req/sec = 100ms minimum)
36
62
  await delay(200);
37
63
  });
38
64
  afterAll(async () => {
39
- if (!hasApiKey || !client)
65
+ if (!hasCredentials || !client)
40
66
  return;
41
67
  // Cleanup any created resources
42
68
  console.log('๐Ÿงน Cleaning up test resources...');
@@ -81,7 +107,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
81
107
  describe('vybit_update with status field', () => {
82
108
  let testVybitKey;
83
109
  beforeAll(async () => {
84
- if (!hasApiKey)
110
+ if (!hasCredentials)
85
111
  return;
86
112
  const vybit = await client.createVybit({
87
113
  name: testName('Update Status'),
@@ -102,12 +128,13 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
102
128
  expect(result.status).toBe('on');
103
129
  });
104
130
  test('should update multiple fields including status', async () => {
131
+ const updatedName = testName('Updated');
105
132
  const result = await client.patchVybit(testVybitKey, {
106
- name: 'Updated Name',
133
+ name: updatedName,
107
134
  status: 'off',
108
135
  message: 'Updated message',
109
136
  });
110
- expect(result.name).toBe('Updated Name');
137
+ expect(result.name).toBe(updatedName);
111
138
  expect(result.status).toBe('off');
112
139
  expect(result.message).toBe('Updated message');
113
140
  });
@@ -180,7 +207,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
180
207
  describe('vybit_trigger', () => {
181
208
  let testVybit;
182
209
  beforeAll(async () => {
183
- if (!hasApiKey)
210
+ if (!hasCredentials)
184
211
  return;
185
212
  testVybit = await client.createVybit({
186
213
  name: testName('Trigger'),
@@ -252,7 +279,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
252
279
  let testSubscriptionKey;
253
280
  let createdFollowKey = null;
254
281
  beforeAll(async () => {
255
- if (!hasApiKey)
282
+ if (!hasCredentials)
256
283
  return;
257
284
  // Try to find a public vybit to subscribe to
258
285
  const publicVybits = await client.listPublicVybits({ limit: 1 });
@@ -261,7 +288,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
261
288
  }
262
289
  });
263
290
  afterAll(async () => {
264
- if (!hasApiKey || !client || !createdFollowKey)
291
+ if (!hasCredentials || !client || !createdFollowKey)
265
292
  return;
266
293
  try {
267
294
  await client.deleteVybitFollow(createdFollowKey);
@@ -318,7 +345,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
318
345
  describe('Notification logs', () => {
319
346
  let testVybitForLogs;
320
347
  beforeAll(async () => {
321
- if (!hasApiKey)
348
+ if (!hasCredentials)
322
349
  return;
323
350
  // Create a test vybit and trigger it to generate logs
324
351
  testVybitForLogs = await client.createVybit({
@@ -381,7 +408,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
381
408
  let testVybitForPeeps;
382
409
  let createdPeepKey = null;
383
410
  beforeAll(async () => {
384
- if (!hasApiKey)
411
+ if (!hasCredentials)
385
412
  return;
386
413
  testVybitForPeeps = await client.createVybit({
387
414
  name: testName('Peeps'),
@@ -390,7 +417,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
390
417
  createdResources.push(testVybitForPeeps.key);
391
418
  });
392
419
  afterAll(async () => {
393
- if (!hasApiKey || !client || !createdPeepKey)
420
+ if (!hasCredentials || !client || !createdPeepKey)
394
421
  return;
395
422
  try {
396
423
  await client.deletePeep(createdPeepKey);
@@ -443,7 +470,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
443
470
  let testVybitForReminders;
444
471
  let createdReminderId = null;
445
472
  beforeAll(async () => {
446
- if (!hasApiKey)
473
+ if (!hasCredentials)
447
474
  return;
448
475
  testVybitForReminders = await client.createVybit({
449
476
  name: testName('Reminders'),
@@ -452,19 +479,21 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
452
479
  createdResources.push(testVybitForReminders.key);
453
480
  });
454
481
  test('should create a reminder', async () => {
482
+ const fc = futureCron(6, 0, 9);
455
483
  const result = await client.createReminder(testVybitForReminders.key, {
456
- cron: '0 9 * * *',
484
+ cron: fc.cron,
457
485
  timeZone: 'America/Denver',
486
+ year: fc.year,
458
487
  message: 'Integration test reminder',
459
488
  });
460
489
  expect(result).toHaveProperty('result');
461
490
  expect(result.result).toBe(1);
462
491
  expect(result).toHaveProperty('reminder');
463
492
  expect(result.reminder).toHaveProperty('id');
464
- expect(result.reminder.cron).toBe('0 9 * * *');
493
+ expect(result.reminder.cron).toBe(fc.cron);
465
494
  expect(result.reminder.timeZone).toBe('America/Denver');
466
495
  createdReminderId = result.reminder.id;
467
- });
496
+ }, 15000);
468
497
  test('should list reminders', async () => {
469
498
  const result = await client.listReminders(testVybitForReminders.key);
470
499
  expect(result).toHaveProperty('result');
@@ -480,14 +509,15 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
480
509
  console.log('No reminder created, skipping test');
481
510
  return;
482
511
  }
512
+ const fc = futureCron(8, 30, 10);
483
513
  const result = await client.updateReminder(testVybitForReminders.key, createdReminderId, {
484
- cron: '30 10 * * *',
514
+ cron: fc.cron,
485
515
  message: 'Updated reminder message',
486
516
  });
487
517
  expect(result).toHaveProperty('result');
488
518
  expect(result.result).toBe(1);
489
- expect(result.reminder.cron).toBe('30 10 * * *');
490
- });
519
+ expect(result.reminder.cron).toBe(fc.cron);
520
+ }, 15000);
491
521
  test('should delete a reminder', async () => {
492
522
  if (!createdReminderId) {
493
523
  console.log('No reminder created, skipping test');
@@ -497,7 +527,7 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
497
527
  expect(result).toHaveProperty('result');
498
528
  expect(result.result).toBe(1);
499
529
  createdReminderId = null;
500
- });
530
+ }, 15000);
501
531
  });
502
532
  describe('error scenarios', () => {
503
533
  test('should handle 404 for non-existent vybit', async () => {
@@ -518,10 +548,11 @@ describeWithApiKey('MCP Server Integration Tests (Real API)', () => {
518
548
  });
519
549
  });
520
550
  // Show message when tests are skipped
521
- if (!hasApiKey) {
551
+ if (!hasCredentials) {
522
552
  describe('MCP Server Integration Tests', () => {
523
- test.skip('Integration tests skipped - set VYBIT_API_KEY to run', () => {
524
- console.log('๐Ÿ’ก Tip: Run with VYBIT_API_KEY=your-key npm test -w @vybit/mcp-server');
553
+ test.skip('Integration tests skipped - set VYBIT_API_KEY or VYBIT_ACCESS_TOKEN to run', () => {
554
+ console.log('๐Ÿ’ก Tip: Run with VYBIT_API_KEY=your-key npm test');
555
+ console.log(' Or: VYBIT_ACCESS_TOKEN=your-token npm test');
525
556
  });
526
557
  });
527
558
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-integration.test.js","sourceRoot":"","sources":["../../src/__tests__/mcp-integration.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-integration.test.js","sourceRoot":"","sources":["../../src/__tests__/mcp-integration.test.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,5 +5,13 @@
5
5
  * Model Context Protocol server for the Vybit Developer API.
6
6
  * Provides tools for managing vybits, sounds, and monitoring usage.
7
7
  */
8
- export {};
8
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
9
+ export declare function normalizeGeofence(geofence: any): any;
10
+ export declare function jsonResponse(result: any): {
11
+ content: {
12
+ type: "text";
13
+ text: string;
14
+ }[];
15
+ };
16
+ export declare const TOOLS: Tool[];
9
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG;AAIH,OAAO,EAGL,IAAI,EACL,MAAM,oCAAoC,CAAC;AAoG5C,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,GAAG,CAOpD;AAGD,wBAAgB,YAAY,CAAC,MAAM,EAAE,GAAG;;;;;EASvC;AAOD,eAAO,MAAM,KAAK,EAAE,IAAI,EAukBvB,CAAC"}
package/dist/index.js CHANGED
@@ -9,18 +9,21 @@ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
9
9
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
10
10
  import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
11
11
  import { VybitAPIClient } from '@vybit/api-sdk';
12
- // Get API key and optional base URL from environment
12
+ // Get credentials and optional base URL from environment
13
13
  const API_KEY = process.env.VYBIT_API_KEY;
14
+ const ACCESS_TOKEN = process.env.VYBIT_ACCESS_TOKEN;
14
15
  const API_URL = process.env.VYBIT_API_URL;
15
- if (!API_KEY) {
16
- console.error('Error: VYBIT_API_KEY environment variable is required');
17
- process.exit(1);
16
+ // Only initialize API client when credentials are available (not required for export-only usage)
17
+ let vybitClient = null;
18
+ if (API_KEY || ACCESS_TOKEN) {
19
+ vybitClient = new VybitAPIClient({
20
+ ...(API_KEY ? { apiKey: API_KEY } : { accessToken: ACCESS_TOKEN }),
21
+ ...(API_URL && { baseUrl: API_URL })
22
+ });
23
+ }
24
+ else {
25
+ console.warn('Warning: VYBIT_API_KEY or VYBIT_ACCESS_TOKEN not set. MCP server tools will not be available.');
18
26
  }
19
- // Initialize Vybit API client
20
- const vybitClient = new VybitAPIClient({
21
- apiKey: API_KEY,
22
- ...(API_URL && { baseUrl: API_URL })
23
- });
24
27
  // Shared schema fragments
25
28
  const PAGINATION_SCHEMA = {
26
29
  search: {
@@ -99,7 +102,7 @@ const GEOFENCE_SCHEMA = {
99
102
  },
100
103
  };
101
104
  // Apply defaults for geofence configuration
102
- function normalizeGeofence(geofence) {
105
+ export function normalizeGeofence(geofence) {
103
106
  if (geofence.radius !== undefined && !geofence.displayRadius) {
104
107
  geofence.displayRadius = String(geofence.radius);
105
108
  }
@@ -110,7 +113,7 @@ function normalizeGeofence(geofence) {
110
113
  return geofence;
111
114
  }
112
115
  // Wrap a result as an MCP JSON text response
113
- function jsonResponse(result) {
116
+ export function jsonResponse(result) {
114
117
  return {
115
118
  content: [
116
119
  {
@@ -124,7 +127,7 @@ function jsonResponse(result) {
124
127
  const READ_ONLY_ANNOTATIONS = { readOnlyHint: true };
125
128
  const MUTATING_ANNOTATIONS = { readOnlyHint: false, destructiveHint: true };
126
129
  // Define available tools
127
- const TOOLS = [
130
+ export const TOOLS = [
128
131
  {
129
132
  name: 'vybit_list',
130
133
  description: 'List vybits with optional search and pagination. Returns a list of vybits owned by the authenticated user.',
@@ -703,274 +706,279 @@ const TOOLS = [
703
706
  annotations: READ_ONLY_ANNOTATIONS,
704
707
  },
705
708
  ];
706
- // Vybit logo (64x64 PNG, base64-encoded)
707
- const VYBIT_ICON = 'data:image/png;base64,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';
708
- // Create MCP server
709
- const server = new Server({
710
- name: 'vybit-mcp-server',
711
- version: '1.2.5',
712
- icons: [
713
- {
714
- src: VYBIT_ICON,
715
- mimeType: 'image/png',
716
- sizes: ['64x64'],
717
- },
718
- ],
719
- websiteUrl: 'https://developer.vybit.net',
720
- }, {
721
- capabilities: {
722
- tools: {},
723
- },
724
- });
725
- // Handle list_tools request
726
- server.setRequestHandler(ListToolsRequestSchema, async () => {
727
- return {
728
- tools: TOOLS,
729
- };
730
- });
731
- // Handle call_tool request
732
- server.setRequestHandler(CallToolRequestSchema, async (request) => {
733
- const { name, arguments: args } = request.params;
734
- if (!args) {
709
+ // --- Stdio server (only runs when credentials are available) ---
710
+ // When this module is imported for exports only (TOOLS, normalizeGeofence, jsonResponse),
711
+ // the code below is skipped because vybitClient will be null.
712
+ if (vybitClient) {
713
+ // Vybit logo (64x64 PNG, base64-encoded)
714
+ const VYBIT_ICON = 'data:image/png;base64,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';
715
+ // Create MCP server
716
+ const server = new Server({
717
+ name: 'vybit-mcp-server',
718
+ version: '1.2.5',
719
+ icons: [
720
+ {
721
+ src: VYBIT_ICON,
722
+ mimeType: 'image/png',
723
+ sizes: ['64x64'],
724
+ },
725
+ ],
726
+ websiteUrl: 'https://developer.vybit.net',
727
+ }, {
728
+ capabilities: {
729
+ tools: {},
730
+ },
731
+ });
732
+ // Handle list_tools request
733
+ server.setRequestHandler(ListToolsRequestSchema, async () => {
735
734
  return {
736
- content: [
737
- {
738
- type: 'text',
739
- text: 'Error: Missing arguments',
740
- },
741
- ],
742
- isError: true,
735
+ tools: TOOLS,
743
736
  };
744
- }
745
- try {
746
- switch (name) {
747
- case 'vybit_list':
748
- return jsonResponse(await vybitClient.listVybits({
749
- search: args.search,
750
- limit: args.limit,
751
- offset: args.offset,
752
- }));
753
- case 'vybit_get':
754
- return jsonResponse(await vybitClient.getVybit(args.vybitId));
755
- case 'vybit_create': {
756
- const createData = {
757
- name: args.name,
758
- };
759
- if (args.description)
760
- createData.description = args.description;
761
- if (args.soundKey)
762
- createData.soundKey = args.soundKey;
763
- if (args.status)
764
- createData.status = args.status;
765
- if (args.triggerType)
766
- createData.triggerType = args.triggerType;
767
- if (args.access)
768
- createData.access = args.access;
769
- if (args.message !== undefined)
770
- createData.message = args.message;
771
- if (args.imageUrl)
772
- createData.imageUrl = args.imageUrl;
773
- if (args.linkUrl)
774
- createData.linkUrl = args.linkUrl;
775
- if (args.triggerSettings)
776
- createData.triggerSettings = args.triggerSettings;
777
- if (args.geofence)
778
- createData.geofence = normalizeGeofence(args.geofence);
779
- return jsonResponse(await vybitClient.createVybit(createData));
780
- }
781
- case 'vybit_update': {
782
- const updateData = {};
783
- if (args.name)
784
- updateData.name = args.name;
785
- if (args.description)
786
- updateData.description = args.description;
787
- if (args.soundKey)
788
- updateData.soundKey = args.soundKey;
789
- if (args.status)
790
- updateData.status = args.status;
791
- if (args.triggerType)
792
- updateData.triggerType = args.triggerType;
793
- if (args.access)
794
- updateData.access = args.access;
795
- if (args.message !== undefined)
796
- updateData.message = args.message;
797
- if (args.triggerSettings)
798
- updateData.triggerSettings = args.triggerSettings;
799
- if (args.geofence)
800
- updateData.geofence = normalizeGeofence(args.geofence);
801
- return jsonResponse(await vybitClient.patchVybit(args.vybitId, updateData));
802
- }
803
- case 'vybit_delete':
804
- await vybitClient.deleteVybit(args.vybitId);
805
- return jsonResponse({ success: true, message: 'Vybit deleted successfully' });
806
- case 'vybit_trigger': {
807
- const options = {};
808
- if (args.message)
809
- options.message = args.message;
810
- if (args.imageUrl)
811
- options.imageUrl = args.imageUrl;
812
- if (args.linkUrl)
813
- options.linkUrl = args.linkUrl;
814
- if (args.log)
815
- options.log = args.log;
816
- if (args.runOnce !== undefined)
817
- options.runOnce = args.runOnce;
818
- return jsonResponse(await vybitClient.triggerVybit(args.triggerKey, Object.keys(options).length > 0 ? options : undefined));
819
- }
820
- // Reminders
821
- case 'reminder_create': {
822
- const params = {
823
- cron: args.cron,
824
- };
825
- if (args.timeZone)
826
- params.timeZone = args.timeZone;
827
- if (args.year !== undefined)
828
- params.year = args.year;
829
- if (args.message !== undefined)
830
- params.message = args.message;
831
- if (args.imageUrl)
832
- params.imageUrl = args.imageUrl;
833
- if (args.linkUrl)
834
- params.linkUrl = args.linkUrl;
835
- if (args.log)
836
- params.log = args.log;
837
- return jsonResponse(await vybitClient.createReminder(args.vybitKey, params));
838
- }
839
- case 'reminder_list':
840
- return jsonResponse(await vybitClient.listReminders(args.vybitKey));
841
- case 'reminder_update': {
842
- const params = {};
843
- if (args.cron)
844
- params.cron = args.cron;
845
- if (args.timeZone)
846
- params.timeZone = args.timeZone;
847
- if (args.message !== undefined)
848
- params.message = args.message;
849
- if (args.imageUrl !== undefined)
850
- params.imageUrl = args.imageUrl;
851
- if (args.linkUrl !== undefined)
852
- params.linkUrl = args.linkUrl;
853
- if (args.log !== undefined)
854
- params.log = args.log;
855
- return jsonResponse(await vybitClient.updateReminder(args.vybitKey, args.reminderId, params));
856
- }
857
- case 'reminder_delete':
858
- await vybitClient.deleteReminder(args.vybitKey, args.reminderId);
859
- return jsonResponse({ success: true, message: 'Reminder deleted successfully' });
860
- case 'sounds_list':
861
- return jsonResponse(await vybitClient.searchSounds({
862
- search: args.search,
863
- limit: args.limit,
864
- offset: args.offset,
865
- }));
866
- case 'sound_get':
867
- return jsonResponse(await vybitClient.getSound(args.soundKey));
868
- case 'meter_get':
869
- return jsonResponse(await vybitClient.getMeter());
870
- // Public Vybit Discovery
871
- case 'vybits_browse_public':
872
- return jsonResponse(await vybitClient.listPublicVybits({
873
- search: args.search,
874
- limit: args.limit,
875
- offset: args.offset,
876
- }));
877
- case 'vybit_get_public':
878
- return jsonResponse(await vybitClient.getPublicVybit(args.subscriptionKey));
879
- // Subscription Management
880
- case 'subscription_create':
881
- return jsonResponse(await vybitClient.createVybitFollow(args.subscriptionKey));
882
- case 'subscriptions_list':
883
- return jsonResponse(await vybitClient.listVybitFollows({
884
- search: args.search,
885
- limit: args.limit,
886
- offset: args.offset,
887
- }));
888
- case 'subscription_get':
889
- return jsonResponse(await vybitClient.getVybitFollow(args.followingKey));
890
- case 'subscription_update': {
891
- const updateData = {};
892
- if (args.status)
893
- updateData.status = args.status;
894
- if (args.accessStatus)
895
- updateData.accessStatus = args.accessStatus;
896
- if (args.message !== undefined)
897
- updateData.message = args.message;
898
- if (args.imageUrl)
899
- updateData.imageUrl = args.imageUrl;
900
- if (args.linkUrl)
901
- updateData.linkUrl = args.linkUrl;
902
- return jsonResponse(await vybitClient.updateVybitFollow(args.followingKey, updateData));
737
+ });
738
+ // Handle call_tool request
739
+ server.setRequestHandler(CallToolRequestSchema, async (request) => {
740
+ const { name, arguments: args } = request.params;
741
+ if (!args) {
742
+ return {
743
+ content: [
744
+ {
745
+ type: 'text',
746
+ text: 'Error: Missing arguments',
747
+ },
748
+ ],
749
+ isError: true,
750
+ };
751
+ }
752
+ try {
753
+ switch (name) {
754
+ case 'vybit_list':
755
+ return jsonResponse(await vybitClient.listVybits({
756
+ search: args.search,
757
+ limit: args.limit,
758
+ offset: args.offset,
759
+ }));
760
+ case 'vybit_get':
761
+ return jsonResponse(await vybitClient.getVybit(args.vybitId));
762
+ case 'vybit_create': {
763
+ const createData = {
764
+ name: args.name,
765
+ };
766
+ if (args.description)
767
+ createData.description = args.description;
768
+ if (args.soundKey)
769
+ createData.soundKey = args.soundKey;
770
+ if (args.status)
771
+ createData.status = args.status;
772
+ if (args.triggerType)
773
+ createData.triggerType = args.triggerType;
774
+ if (args.access)
775
+ createData.access = args.access;
776
+ if (args.message !== undefined)
777
+ createData.message = args.message;
778
+ if (args.imageUrl)
779
+ createData.imageUrl = args.imageUrl;
780
+ if (args.linkUrl)
781
+ createData.linkUrl = args.linkUrl;
782
+ if (args.triggerSettings)
783
+ createData.triggerSettings = args.triggerSettings;
784
+ if (args.geofence)
785
+ createData.geofence = normalizeGeofence(args.geofence);
786
+ return jsonResponse(await vybitClient.createVybit(createData));
787
+ }
788
+ case 'vybit_update': {
789
+ const updateData = {};
790
+ if (args.name)
791
+ updateData.name = args.name;
792
+ if (args.description)
793
+ updateData.description = args.description;
794
+ if (args.soundKey)
795
+ updateData.soundKey = args.soundKey;
796
+ if (args.status)
797
+ updateData.status = args.status;
798
+ if (args.triggerType)
799
+ updateData.triggerType = args.triggerType;
800
+ if (args.access)
801
+ updateData.access = args.access;
802
+ if (args.message !== undefined)
803
+ updateData.message = args.message;
804
+ if (args.triggerSettings)
805
+ updateData.triggerSettings = args.triggerSettings;
806
+ if (args.geofence)
807
+ updateData.geofence = normalizeGeofence(args.geofence);
808
+ return jsonResponse(await vybitClient.patchVybit(args.vybitId, updateData));
809
+ }
810
+ case 'vybit_delete':
811
+ await vybitClient.deleteVybit(args.vybitId);
812
+ return jsonResponse({ success: true, message: 'Vybit deleted successfully' });
813
+ case 'vybit_trigger': {
814
+ const options = {};
815
+ if (args.message)
816
+ options.message = args.message;
817
+ if (args.imageUrl)
818
+ options.imageUrl = args.imageUrl;
819
+ if (args.linkUrl)
820
+ options.linkUrl = args.linkUrl;
821
+ if (args.log)
822
+ options.log = args.log;
823
+ if (args.runOnce !== undefined)
824
+ options.runOnce = args.runOnce;
825
+ return jsonResponse(await vybitClient.triggerVybit(args.triggerKey, Object.keys(options).length > 0 ? options : undefined));
826
+ }
827
+ // Reminders
828
+ case 'reminder_create': {
829
+ const params = {
830
+ cron: args.cron,
831
+ };
832
+ if (args.timeZone)
833
+ params.timeZone = args.timeZone;
834
+ if (args.year !== undefined)
835
+ params.year = args.year;
836
+ if (args.message !== undefined)
837
+ params.message = args.message;
838
+ if (args.imageUrl)
839
+ params.imageUrl = args.imageUrl;
840
+ if (args.linkUrl)
841
+ params.linkUrl = args.linkUrl;
842
+ if (args.log)
843
+ params.log = args.log;
844
+ return jsonResponse(await vybitClient.createReminder(args.vybitKey, params));
845
+ }
846
+ case 'reminder_list':
847
+ return jsonResponse(await vybitClient.listReminders(args.vybitKey));
848
+ case 'reminder_update': {
849
+ const params = {};
850
+ if (args.cron)
851
+ params.cron = args.cron;
852
+ if (args.timeZone)
853
+ params.timeZone = args.timeZone;
854
+ if (args.message !== undefined)
855
+ params.message = args.message;
856
+ if (args.imageUrl !== undefined)
857
+ params.imageUrl = args.imageUrl;
858
+ if (args.linkUrl !== undefined)
859
+ params.linkUrl = args.linkUrl;
860
+ if (args.log !== undefined)
861
+ params.log = args.log;
862
+ return jsonResponse(await vybitClient.updateReminder(args.vybitKey, args.reminderId, params));
863
+ }
864
+ case 'reminder_delete':
865
+ await vybitClient.deleteReminder(args.vybitKey, args.reminderId);
866
+ return jsonResponse({ success: true, message: 'Reminder deleted successfully' });
867
+ case 'sounds_list':
868
+ return jsonResponse(await vybitClient.searchSounds({
869
+ search: args.search,
870
+ limit: args.limit,
871
+ offset: args.offset,
872
+ }));
873
+ case 'sound_get':
874
+ return jsonResponse(await vybitClient.getSound(args.soundKey));
875
+ case 'meter_get':
876
+ return jsonResponse(await vybitClient.getMeter());
877
+ // Public Vybit Discovery
878
+ case 'vybits_browse_public':
879
+ return jsonResponse(await vybitClient.listPublicVybits({
880
+ search: args.search,
881
+ limit: args.limit,
882
+ offset: args.offset,
883
+ }));
884
+ case 'vybit_get_public':
885
+ return jsonResponse(await vybitClient.getPublicVybit(args.subscriptionKey));
886
+ // Subscription Management
887
+ case 'subscription_create':
888
+ return jsonResponse(await vybitClient.createVybitFollow(args.subscriptionKey));
889
+ case 'subscriptions_list':
890
+ return jsonResponse(await vybitClient.listVybitFollows({
891
+ search: args.search,
892
+ limit: args.limit,
893
+ offset: args.offset,
894
+ }));
895
+ case 'subscription_get':
896
+ return jsonResponse(await vybitClient.getVybitFollow(args.followingKey));
897
+ case 'subscription_update': {
898
+ const updateData = {};
899
+ if (args.status)
900
+ updateData.status = args.status;
901
+ if (args.accessStatus)
902
+ updateData.accessStatus = args.accessStatus;
903
+ if (args.message !== undefined)
904
+ updateData.message = args.message;
905
+ if (args.imageUrl)
906
+ updateData.imageUrl = args.imageUrl;
907
+ if (args.linkUrl)
908
+ updateData.linkUrl = args.linkUrl;
909
+ return jsonResponse(await vybitClient.updateVybitFollow(args.followingKey, updateData));
910
+ }
911
+ case 'subscription_delete':
912
+ await vybitClient.deleteVybitFollow(args.followingKey);
913
+ return jsonResponse({ success: true, message: 'Unsubscribed successfully' });
914
+ // Logs
915
+ case 'logs_list':
916
+ return jsonResponse(await vybitClient.listLogs({
917
+ search: args.search,
918
+ limit: args.limit,
919
+ offset: args.offset,
920
+ }));
921
+ case 'log_get':
922
+ return jsonResponse(await vybitClient.getLog(args.logKey));
923
+ case 'vybit_logs':
924
+ return jsonResponse(await vybitClient.listVybitLogs(args.vybitKey, {
925
+ search: args.search,
926
+ limit: args.limit,
927
+ offset: args.offset,
928
+ }));
929
+ case 'subscription_logs':
930
+ return jsonResponse(await vybitClient.listVybitFollowLogs(args.followingKey, {
931
+ search: args.search,
932
+ limit: args.limit,
933
+ offset: args.offset,
934
+ }));
935
+ // Peeps
936
+ case 'peeps_list':
937
+ return jsonResponse(await vybitClient.listPeeps({
938
+ search: args.search,
939
+ limit: args.limit,
940
+ offset: args.offset,
941
+ }));
942
+ case 'peep_get':
943
+ return jsonResponse(await vybitClient.getPeep(args.peepKey));
944
+ case 'peep_create':
945
+ return jsonResponse(await vybitClient.createPeep(args.vybitKey, args.email));
946
+ case 'peep_delete':
947
+ await vybitClient.deletePeep(args.peepKey);
948
+ return jsonResponse({ success: true, message: 'Peep removed successfully' });
949
+ case 'vybit_peeps_list':
950
+ return jsonResponse(await vybitClient.listVybitPeeps(args.vybitKey, {
951
+ search: args.search,
952
+ limit: args.limit,
953
+ offset: args.offset,
954
+ }));
955
+ default:
956
+ throw new Error(`Unknown tool: ${name}`);
903
957
  }
904
- case 'subscription_delete':
905
- await vybitClient.deleteVybitFollow(args.followingKey);
906
- return jsonResponse({ success: true, message: 'Unsubscribed successfully' });
907
- // Logs
908
- case 'logs_list':
909
- return jsonResponse(await vybitClient.listLogs({
910
- search: args.search,
911
- limit: args.limit,
912
- offset: args.offset,
913
- }));
914
- case 'log_get':
915
- return jsonResponse(await vybitClient.getLog(args.logKey));
916
- case 'vybit_logs':
917
- return jsonResponse(await vybitClient.listVybitLogs(args.vybitKey, {
918
- search: args.search,
919
- limit: args.limit,
920
- offset: args.offset,
921
- }));
922
- case 'subscription_logs':
923
- return jsonResponse(await vybitClient.listVybitFollowLogs(args.followingKey, {
924
- search: args.search,
925
- limit: args.limit,
926
- offset: args.offset,
927
- }));
928
- // Peeps
929
- case 'peeps_list':
930
- return jsonResponse(await vybitClient.listPeeps({
931
- search: args.search,
932
- limit: args.limit,
933
- offset: args.offset,
934
- }));
935
- case 'peep_get':
936
- return jsonResponse(await vybitClient.getPeep(args.peepKey));
937
- case 'peep_create':
938
- return jsonResponse(await vybitClient.createPeep(args.vybitKey, args.email));
939
- case 'peep_delete':
940
- await vybitClient.deletePeep(args.peepKey);
941
- return jsonResponse({ success: true, message: 'Peep removed successfully' });
942
- case 'vybit_peeps_list':
943
- return jsonResponse(await vybitClient.listVybitPeeps(args.vybitKey, {
944
- search: args.search,
945
- limit: args.limit,
946
- offset: args.offset,
947
- }));
948
- default:
949
- throw new Error(`Unknown tool: ${name}`);
950
958
  }
959
+ catch (error) {
960
+ const errorMessage = error.message || 'Unknown error';
961
+ const statusCode = error.statusCode ? ` (Status: ${error.statusCode})` : '';
962
+ return {
963
+ content: [
964
+ {
965
+ type: 'text',
966
+ text: `Error: ${errorMessage}${statusCode}`,
967
+ },
968
+ ],
969
+ isError: true,
970
+ };
971
+ }
972
+ });
973
+ // Start the server
974
+ async function main() {
975
+ const transport = new StdioServerTransport();
976
+ await server.connect(transport);
977
+ console.error('Vybit MCP server running on stdio');
951
978
  }
952
- catch (error) {
953
- const errorMessage = error.message || 'Unknown error';
954
- const statusCode = error.statusCode ? ` (Status: ${error.statusCode})` : '';
955
- return {
956
- content: [
957
- {
958
- type: 'text',
959
- text: `Error: ${errorMessage}${statusCode}`,
960
- },
961
- ],
962
- isError: true,
963
- };
964
- }
965
- });
966
- // Start the server
967
- async function main() {
968
- const transport = new StdioServerTransport();
969
- await server.connect(transport);
970
- console.error('Vybit MCP server running on stdio');
971
- }
972
- main().catch((error) => {
973
- console.error('Server error:', error);
974
- process.exit(1);
975
- });
979
+ main().catch((error) => {
980
+ console.error('Server error:', error);
981
+ process.exit(1);
982
+ });
983
+ } // end if (vybitClient)
976
984
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/manifest.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "manifest_version": "0.3",
3
3
  "name": "vybit-mcp-server",
4
4
  "display_name": "Vybit Notifications",
5
- "version": "1.2.4",
5
+ "version": "1.3.0",
6
6
  "description": "Send push notifications with personalized sounds via the Vybit platform",
7
7
  "long_description": "Integrates Claude with the Vybit notification platform. Create and manage notification endpoints (vybits), trigger push notifications with custom sounds, browse and subscribe to public vybits, manage access permissions, view notification logs, and monitor API usage.",
8
8
  "author": {
@@ -66,7 +66,11 @@
66
66
  { "name": "peep_get", "description": "Get peep details" },
67
67
  { "name": "peep_create", "description": "Invite someone to a private vybit by email" },
68
68
  { "name": "peep_delete", "description": "Revoke access from a peep" },
69
- { "name": "vybit_peeps_list", "description": "List peeps for a specific vybit" }
69
+ { "name": "vybit_peeps_list", "description": "List peeps for a specific vybit" },
70
+ { "name": "reminder_create", "description": "Create a scheduled reminder on a vybit" },
71
+ { "name": "reminder_list", "description": "List all reminders on a vybit" },
72
+ { "name": "reminder_update", "description": "Update an existing reminder" },
73
+ { "name": "reminder_delete", "description": "Delete a reminder" }
70
74
  ],
71
75
  "compatibility": {
72
76
  "platforms": ["darwin", "win32", "linux"],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vybit/mcp-server",
3
- "version": "1.2.7",
3
+ "version": "1.4.0",
4
4
  "description": "Model Context Protocol (MCP) server for Vybit Developer API",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -49,8 +49,8 @@
49
49
  "node": ">=18.0.0"
50
50
  },
51
51
  "dependencies": {
52
- "@modelcontextprotocol/sdk": "^1.0.4",
53
- "@vybit/api-sdk": "^1.1.0"
52
+ "@modelcontextprotocol/sdk": "^1.12.0",
53
+ "@vybit/api-sdk": "^1.2.0"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/node": "^20.0.0",